Brama sieciowa
Z wiki linux-user
(Utworzył nową stronę „ Logujemy się do swojego systemu jako root i edytujemy plik ''/etc/sysctl.conf'' vi /etc/sysctl.conf Dodajemy następującą linie aby włączyć przekazywanie p...”) |
|||
Linia 1: | Linia 1: | ||
+ | [[Category:Serwer]] | ||
+ | == Brama sieciowa == | ||
+ | W tym krótkim howto postaram się przekazać w przystępny sposób jak ze swojego komputera z zainstalowanym systemem CentOS zrobić bramę dla swojej sieci lokalnej. | ||
+ | Po pierwsze musimy zaopatrzyć się w dwie karty sieciowe, bez tego nie da rady zrobić routera. Z jednej sieciówki będziemy korzystać jako z interfejsu WAN a z drugiej jako LAN. | ||
+ | == Włączamy przekazywania pakietów == | ||
− | Logujemy się do swojego systemu jako root i edytujemy plik ''/etc/sysctl.conf'' | + | Logujemy się do swojego systemu jako root i edytujemy plik ''/etc/sysctl.conf''. |
vi /etc/sysctl.conf | vi /etc/sysctl.conf | ||
Dodajemy następującą linie aby włączyć przekazywanie pakietów dla IPv4 | Dodajemy następującą linie aby włączyć przekazywanie pakietów dla IPv4 | ||
Linia 8: | Linia 13: | ||
Zapisujemy i wychodzimy, następnie restartujemy karty sieciowe | Zapisujemy i wychodzimy, następnie restartujemy karty sieciowe | ||
/etc/init.d/network restart | /etc/init.d/network restart | ||
− | |||
− | |||
− | |||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
== Udostępnianie połączenia internetowego == | == Udostępnianie połączenia internetowego == | ||
− | Aby udostępnić nasze łącze innym komputerom w sieci musimy odpowiednio skonfigurować zapore systemu iptables Skonfigurowanie udostępnienia połączenia poprzez np interfejs eth1 musimy: | + | Aby udostępnić nasze łącze innym komputerom w sieci musimy odpowiednio skonfigurować zapore systemu [[firewall|iptables]] Skonfigurowanie udostępnienia połączenia poprzez np interfejs eth1 musimy: |
− | # service iptables stop | + | # service iptables stop |
− | iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE | + | iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE |
− | service iptables save | + | service iptables save |
− | service iptables restart | + | service iptables restart |
+ | |||
+ | Aby wszystko działało musimy również odpowiednio skonfigurować połączenia sieciowe czyli pliki np ''/etc/sysconfig/network-scripts/ifcfg-eth0'' oraz ''ifcfg-eth1'', przykładowa konfiguracja: | ||
+ | # Realtek Semiconductor Co., Ltd. RTL-8138/8139C/8139C+ | ||
+ | DEVICE=eth1 | ||
+ | BOOTPROTO=none | ||
+ | BROADCAST=10.14.14.255 | ||
+ | HWADDR=4c:00:10:7b:6a:03 | ||
+ | IPADDR=10.17.17.110 | ||
+ | NETMASK=255.255.255.0 | ||
+ | NETWORK=10.17.17.0 | ||
+ | ONBOOT=yes | ||
+ | GATEWAY=10.17.17.1 | ||
+ | TYPE=Ethernet | ||
− | + | Jeden interfejs powinien być skonfigurowany pod odbieranie internetu od dostawcy (''WAN'') a drugi na dawanie połączenia dla naszej sieci lokalnej (''LAN''). | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | Na koniec jeszcze bardzo miły skrypcik udostępniony przez członków strony [http://www.cyberciti.biz www.cyberciti.biz] skrypcik do sherowania połączenia internetowego, należy go tylko dostosować do swoich potrzeb | |
+ | #!/bin/bash | ||
+ | # Created by nixCraft - www.cyberciti.biz | ||
+ | IPT="/sbin/iptables" | ||
+ | MOD="/sbin/modprobe" | ||
+ | # set wan interface such as eth1 or ppp0 | ||
+ | SHARE_IF="eth1" | ||
+ | # clean old fw | ||
+ | echo "Clearing old firewall rules..." | ||
+ | iptables -F | ||
+ | iptables -X | ||
+ | iptables -t nat -F | ||
+ | iptables -t nat -X | ||
+ | iptables -t mangle -F | ||
+ | iptables -t mangle -X | ||
+ | iptables -P INPUT ACCEPT | ||
+ | iptables -P OUTPUT ACCEPT | ||
+ | # Get some kernel modules | ||
+ | echo "Loading kernel modules..." | ||
+ | $MOD ip_tables | ||
+ | $MOD iptable_filter | ||
+ | $MOD iptable_nat | ||
+ | $MOD ip_conntrack | ||
+ | $MOD ipt_MASQUERADE | ||
+ | $MOD ip_nat_ftp | ||
+ | $MOD ip_nat_irc | ||
+ | $MOD ip_conntrack_ftp | ||
+ | $MOD ip_conntrack_irc | ||
+ | # Clean old rules if any, rhel specific but above will take care of everything | ||
+ | # service iptables stop | ||
+ | # unlimited traffic via loopback device | ||
+ | $IPT -A INPUT -i lo -j ACCEPT | ||
+ | $IPT -A OUTPUT -o lo -j ACCEPT | ||
+ | echo "Setting ${SHARE_IF} as router interface..." | ||
+ | $IPT --table nat --append POSTROUTING --out-interface ${SHARE_IF} -j MASQUERADE | ||
+ | # Start other custom rules | ||
+ | #$IPT | ||
+ | # End other custom rules | ||
+ | echo "*** Instructions on TCP/IP On The Windows / Mac / Linux Masqueraded Client ***" | ||
+ | echo "1. Login to your other LAN desktop computers" | ||
+ | echo "2. Open network configuration GUI tool such. Under Windows XP - Click Start, click Control Panel, click Network and Internet Connections, and then click Network Connections" | ||
+ | echo "3. Set DNS (NS1 and NS2) to 208.67.222.222 and 208.67.220.220" | ||
+ | echo "4. Select the 'Gateway' tab in the TCP/IP properties dialog." | ||
+ | echo "5. Enter $(ifconfig ${SHARE_IF} | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}') as the default gateway." | ||
− | + | <br /><google1 style="4"></google1> | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + |