Podział łącza od podstaw pod Ubuntu Server Edition 8.10

Instalacja i konfiguracja oprogramowania sieciowego.
Mahlas
Piegowaty Guziec
Piegowaty Guziec
Posty: 4
Rejestracja: 29 lis 2008, 15:15
Płeć: Mężczyzna
Wersja Ubuntu: 8.10
Środowisko graficzne: GNOME

Podział łącza od podstaw pod Ubuntu Server Edition 8.10

Post autor: Mahlas »

Witam!

Na samym wstępie chciałbym zaznaczyć że przeczytałem kilkanaście postów po polsku i po angielsku i nadal mam problem ze skonfigurowaniem podziału internetu pod ubuntu server edition 8.10. Sprawa wygląda tak że mam 2 karty sieciowe. Pierwsza z nich eth0 zbiera internet od providera i tutaj nie mam problemu z ustawieniem dostępu do sieci. Eth0 ma ip 192.168.0.100, brama 192.168.0.1, dns 192.168.0.1. Chcę podzielić internet na inne komputery poprzez drugą kartę eth1 na serwerze dhcp. I nie wiem do końca jak mam ustawić to wszystko. Próbowałem na różne sposoby i nic. Serwer był podłączony do internetu ale nie dzielił neta dalej poprzez interfejs eth1. Prosił bym o szczegółowe wyjaśnienie i rozwiązanie tego problemu. Myślę że innym też się to przyda jak krok po kroku to zrobić pod ubuntu serwer edition 8.10. Liczę na zrozumienie i pomoc. Z góry dzięki.
j0cker
Sędziwy Jeż
Sędziwy Jeż
Posty: 38
Rejestracja: 30 cze 2008, 16:57
Płeć: Mężczyzna
Wersja Ubuntu: 7.10
Środowisko graficzne: GNOME

Odp: Podział łącza od podstaw pod Ubuntu Server Edition 8.10

Post autor: j0cker »

Temat rzeka trudno zeby ktos Ci powiedzial krok po kroku co masz zrobic tym bardziej ze jest troche materialow na ten temat proponuje zapoznac sie z lektura nawet po polsku:
"Kształtowanie Ruchu i Zaawansowany Routing" -> Dyscypliny kolejkowania dla Zarządzania Pasmem. Jezeli dobrze pamietam to jest tam nawet przykladowy skrypt dla algorytmow CBQ i HTB!
johnbbw
Piegowaty Guziec
Piegowaty Guziec
Posty: 2
Rejestracja: 05 lut 2009, 22:26
Płeć: Mężczyzna
Wersja Ubuntu: 8.10
Środowisko graficzne: GNOME

Odp: Podział łącza od podstaw pod Ubuntu Server Edition 8.10

Post autor: johnbbw »

Witam. Mam ten sam problem i nie wiem jak go rozwiązać. Zainstalowałem na ubuntu 8.10 wszystkie potrzebne pakiety wraz z lms-em i webminem. Gdy podłączam internet z routera do eth1, to w serwerze jest internet, jednak po podłączeniu dodatkowego komputera do eth2, okazuje się że nie ma w nim sieci. Eth1 mam ustawiony adres statyczny, bramkę taką jak ma router. Natomiast eth2 ustawiony ma również statyczny ip bez bramki. Eth0 system nie przydzielił żadnej z kart, nie wiem czemu. Gdy wysyłam pinga z dodatkowego komputera, podłączonego do eth2 to odpowiedzi są a kartę eth1 i eth2, jednak nie ma na router.
Jeśli ktoś by wiedział jak należy to skonfigurować bardzo proszę o odpowiedź.
Pozdrawiam.
Awatar użytkownika
uruk
Piegowaty Guziec
Piegowaty Guziec
Posty: 4
Rejestracja: 27 sie 2008, 18:00
Płeć: Mężczyzna
Wersja Ubuntu: 8.04
Środowisko graficzne: GNOME

Odp: Podział łącza od podstaw pod Ubuntu Server Edition 8.10

Post autor: uruk »

Też przez pewien okres walczyłem z tym problemem. Polecam dwa rozwiązania:
1) proste, z użyciem firewalla o nazwie firestarter
2) trudniejsze, związane z napisaniem własnego firewalla

Ad. 1.
By zainstalować firestartera wystarczy wejść w trybie administratorskim do: Aplikacje -> Dodaj, usuń; i wpisać w wyszukiwarce firestarter, a następnie go zainstalować. Następnie uruchamiamy firestartera z menu: System -> Administracja. Po uruchomieniu włącza się automatycznie wizard, który pomoże nam w konfiguracji. W jednej ze stron wizarda znajdziemy wpis związany z udostępnieniem połączenia, który musimy zaznaczyć. Po zatwierdzeniu zmian w wizardzie zostaje nam tylko otwarcie portów. Przechodzimy do ostatniej zakładki w firestarterze związanej z regułami dostępu do komputera. U góry mamy do wyboru: wejście (input) i wyjście (output), dla których możemy ustawić politykę, czy mają być otwarte (by zablokować port lub nr ip trzeba go dodać do tzw. blacklist), czy też zamknięte (by otworzyć port lub umożliwić dostęp do komputera z innego ip należy je wpisać). Dla rozwiązań domowych wystarczy ustawić łańcuch wejścia na zamknięty, a wyjścia na otwarty. Na samym dole w łańcuchu wejścia (input) znajdziemy część związaną z z udostępnianiem połączenia, w której musimy otworzyć następujące porty: 53, czasami 68, 80; oraz opcjonalnie: 21, 22. Po takim skonfigurowaniu powinien nam śmigać internet na innych komputerach. Jeśli coś jest niejasne w powyższym opisie polecam tematy na forum lepiej zgłębiające to zagadnienie.

Ad. 2.
Tą część polecam bardziej wtajemniczonym w ubuntu użytkownikom. O co chodzi. Sprawa jest prosta. Trzeba napisać skrypt firewalla, wrzucić go do /etc/init.d , dodać regułkę przekierowującą połączenie w /etc/rc.local i dowiązanie symboliczne w /etc/rc.0.d - rc.S.d. I w sumie tyle. ;-) Na tym forum istnieją już skrypty, z których, po dostosowaniu do własnych wymogów, można skorzystać. Ja dodam swój dla większej możliwości wyboru:

Kod: Zaznacz cały

#!/bin/sh

echo '::: Firewall wlaczony :::'

# Odpalenie przekazywania pakietow IP
echo "1" > /proc/sys/net/ipv4/ip_forward

# Czyszczenie tablic NAT-a i filtrowania
iptables -F -t nat
iptables -X -t nat
iptables -F -t filter
iptables -X -t filter
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route
echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirects
echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
echo 1 > /proc/sys/net/ipv4/conf/all/log_martians
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A FORWARD -s xxx.xxx.xxx.xxx/xxx.xxx.xxx.xxx -p icmp --icmp-type echo-request -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT

# FORWARD
iptables -A FORWARD -j ACCEPT -m state --state NEW,ESTABLISHED,RELATED
iptables -t filter -A FORWARD -p tcp -s xxx.xxx.xxx.xxx/xxx.xxx.xxx.xxx --dport 21 -j ACCEPT
iptables -t filter -A FORWARD -p tcp -s xxx.xxx.xxx.xxx/xxx.xxx.xxx.xxx --dport 80 -j ACCEPT
iptables -t filter -A FORWARD -p tcp -s xxx.xxx.xxx.xxx/xxx.xxx.xxx.xxx --dport 53 -j ACCEPT
iptables -t filter -A FORWARD -p udp -s xxx.xxx.xxx.xxx/xxx.xxx.xxx.xxx --dport 53 -j ACCEPT
iptables -t filter -A FORWARD -s xxx.xxx.xxx.xxx/xxx.xxx.xxx.xxx -p icmp --icmp-type echo-request -j ACCEPT
iptables -t nat -A POSTROUTING -o wlan0 -j SNAT --to-source=xxx.xxx.xxx.xxx

# INPUT
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A INPUT -p tcp --dport 113 -j REJECT --reject-with icmp-port-unreachable
iptables -A INPUT -p tcp --dport 1080 -j REJECT --reject-with icmp-port-unreachable
iptables -A INPUT -s 0/0 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -s 0/0 -p udp --dport 22 -j ACCEPT
iptables -A INPUT -s 0/0 -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -s xxx.xxx.xxx.xxx/xxx.xxx.xxx.xxx -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -s xxx.xxx.xxx.xxx/xxx.xxx.xxx.xxx -p udp --dport 53 -j ACCEPT

# OUTPUT
iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A OUTPUT -s 0/0 -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -s 0/0 -p udp --dport 80 -j ACCEPT
iptables -A OUTPUT -s 0/0 -p tcp --dport 53 -j ACCEPT
iptables -A OUTPUT -s 0/0 -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -s 0/0 -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -s 0/0 -p udp --dport 22 -j ACCEPT
Kod ten trzeba zapisać w pliku jakaś_nazwa.sh w /etc/init.d. Oczywiście po ówczesnym dostosowaniu. Następnie dodajemy wpis w /etc/rc.local :

Kod: Zaznacz cały

echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -o eth0 -j MASQUERADE
Następnie dodajemy dowiązanie symboliczne w /etc/rc.0.d - rc.S.d. Najszybciej można to zrobić w mc jeśli ktoś jednak woli to może to zrobić ręcznie.

Obydwie metody są sprawdzone, więc nie powinno być większych kłopotów.:-)
ODPOWIEDZ

Wróć do „Sieci, serwery, Internet”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 21 gości