po awarii mojego dysku na serwerze przyszła pora na upgrade ubuntu serwer
siec wyglada tak:
Internet->
ppp0 [speedtouch 330(sterowany linnet32)]->
Ubuntu serwer konsola(Linux serwer 2.6.32-24-generic-pae Ubuntu 10.04.1 LTS) ->
AP i do niego podłączonych 5 klientów.
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT
iptables -A INPUT -s 0/0 -d 80.40.197.10 -p tcp --dport 22 -j ACCEPT
iptables -A FORWARD -s 0/0 -d 80.40.197.10 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -s 0/0 -d 80.40.197.10 -p udp --dport 22 -j ACCEPT
iptables -A FORWARD -s 0/0 -d 80.40.197.10 -p udp --dport 22 -j ACCEPT
iptables -A INPUT -s 0/0 -d 80.40.197.10 -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -s 0/0 -d 80.40.197.10 -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -s 0/0 -d 80.40.197.10 -p udp --dport 80 -j ACCEPT
iptables -A FORWARD -s 0/0 -d 80.40.197.10 -p udp --dport 80 -j ACCEPT
# Konrad -
iptables -t nat -A POSTROUTING -s 192.168.0.2 -j MASQUERADE
iptables -A FORWARD -m mac --mac-source 00:00:00:00:11:59 -j ACCEPT
# AcerLan -
iptables -t nat -A POSTROUTING -s 192.168.0.3 -j MASQUERADE
iptables -A FORWARD -m mac --mac-source 00:00:00:00:6c:77 -j ACCEPT
wygenerowany czymś takim
Kod: Zaznacz cały
#!/bin/bash
# zmienne do edycji
siec="192.168.0.0"
maska="255.255.255.0"
brodkast="192.168.1.255"
brama="192.168.0.1"
domena=""
przydzod="192.168.0.2"
przydzdo="192.168.0.254"
portblok="999"
# koniec strefy zmiennych
cp /root/firewall/ipf /etc/init.d/firewall
grep -E -v "^#|^$" porty.list | while read ipzewn port opisportu;
do
echo -e " \033[36m Otwieram port $port dla $ipzewn"
echo "" >> /etc/init.d/firewall
echo "iptables -A INPUT -s 0/0 -d $ipzewn -p tcp --dport $port -j ACCEPT" >> /etc/init.d/firewall
echo "iptables -A FORWARD -s 0/0 -d $ipzewn -p tcp --dport $port -j ACCEPT" >> /etc/init.d/firewall
echo "iptables -A INPUT -s 0/0 -d $ipzewn -p udp --dport $port -j ACCEPT" >> /etc/init.d/firewall
echo "iptables -A FORWARD -s 0/0 -d $ipzewn -p udp --dport $port -j ACCEPT" >> /etc/init.d/firewall
done
grep -E -v "^#|^$" users.list | while read mac ip host opis;
do
echo -e " \033[36m dodaje miska o ip $ip mac'u $mac"
echo "" >> /etc/init.d/firewall
echo "# $host - $opis" >> /etc/init.d/firewall
echo "iptables -t nat -A POSTROUTING -s $ip -j MASQUERADE " >> /etc/init.d/firewall
echo "iptables -A FORWARD -m mac --mac-source $mac -j ACCEPT " >> /etc/init.d/firewall
done
grep -E -v "^#|^$" shit.list | while read ip mac costam;
do
echo -e " \033[31m !! BLOKADA miska o ip $ip mac'u $mac !!"
echo "" >> /etc/init.d/firewall
echo "iptables -D FORWARD -m mac --mac-source $mac -j ACCEPT" >> /etc/init.d/firewall
echo "iptables -A FORWARD -m mac --mac-source $mac -p udp --dport 53 -j ACCEPT" >> /etc/init.d/firewall
echo "iptables -A FORWARD -m mac --mac-source $mac -p tcp --dport $portblok -s $ip -d $brama -j ACCEPT" >> /etc/init.d/firewall
echo "iptables -A PREROUTING -t nat -s $ip -p tcp --dport 1:52 -j DNAT --to $brama:$portblok" >> /etc/init.d/firewall
echo "iptables -A PREROUTING -t nat -s $ip -p tcp --dport 54:65535 -j DNAT --to $brama:$portblok" >> /etc/init.d/firewall
done
echo -e "\033[38m Zapisywanie ustawien..."
echo -e "\033[38m Zabieram sie za DHCP..."
# tera cza sie zabrac za dhcp :))))
echo "" > /etc/dhcp3/dhcpd.conf
echo "# dhcpd.conf " >> /etc/dhcp3/dhcpd.conf
echo "# " >> /etc/dhcp3/dhcpd.conf
echo "subnet $siec netmask $maska { " >> /etc/dhcp3/dhcpd.conf
echo "range $przydzod $przydzdo; " >> /etc/dhcp3/dhcpd.conf
echo "default-lease-time 600;" >> /etc/dhcp3/dhcpd.conf
echo "option domain-name \"$domena\"; " >> /etc/dhcp3/dhcpd.conf
echo "option domain-name-servers 194.204.152.34, 194.204.159.1;" >> /etc/dhcp3/dhcpd.conf
echo "option routers $brama;" >> /etc/dhcp3/dhcpd.conf
echo "option subnet-mask $maska;" >> /etc/dhcp3/dhcpd.conf
echo "option broadcast-address $brodkast;" >> /etc/dhcp3/dhcpd.conf
grep -E -v "^#|^$" users.list | while read mac ip host opis;
do
echo " " >> /etc/dhcp3/dhcpd.conf
echo " host $host { # $opis " >> /etc/dhcp3/dhcpd.conf
echo " hardware ethernet $mac; " >> /etc/dhcp3/dhcpd.conf
echo " fixed-address $ip; " >> /etc/dhcp3/dhcpd.conf
echo " }" >> /etc/dhcp3/dhcpd.conf
done
echo "" >> /etc/dhcp3/dhcpd.conf
echo "}" >> /etc/dhcp3/dhcpd.conf
echo -e "\033[38m Restart DHCPD..."
chmod +x /etc/init.d/firewall
/etc/init.d/dhcp3-server restart
/etc/init.d/firewall
echo -e "\033[0m "
plik porty
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT
zczytuje z takiego pliku users
# ::::::::::::::::::::::::::
# |IP router'a | Port |
# ::::::::::::::::::::::::::
80.40.197.10 22 ssh
80.40.197.10 80 www
plik shit# Configuration files firewall
# :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# | MAC | IP | Nazwisko | Adres |
# :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
00:00:00:01:11:00 192.168.0.2 Konrad
00:00:00:1b:6c:00 192.168.0.3 AcerLan
#192.168.0.2 00:1d:7d:00:00:00 Brak uregulowanych nalenosci
do tej pory używałem niceshapera ale nie bardzo chce działac na tej wersji ubu.
pewnie wyszły już inne rzeczy którymi mógłbym sterować transwerem konkretnych klientów w mojej sieci słucham podpowiedzi.
Co byście doinstalowali zamiast niceshapera??
ew. jak przerobić skrypt który posiadam aby dodawał do reguł iptables w pliku firewall: szybkość łącza z jaką ma się łączyć poszczególny klient przy założeniu pliku users w ten sposób
Kod: Zaznacz cały
# :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# | MAC | IP | Nazwisko | Predkość |
# :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
00:00:00:01:11:00 192.168.0.2 Konrad 512
00:00:00:1b:6c:00 192.168.0.3 AcerLan 256