среда, 20 февраля 2019 г.

test mcast

проверка мультикаста - если работет - норм, если нет - передернуть броидж, хз отвалилось причину пока не поймал поэтому баш =(


filalex@asd:~$ ./mctest.sh
ping up run wget

Вывод перенаправляется в «wget-log».
mctest NOrun script
filalex@asd:~$ cat ./mctest.sh
#!/bin/bash
rm wget-log

ping -c 1 -w 5 192.168.88.11 &>/dev/null
if [ $? -ne 0 ] ; then
logger mctest ping down
echo "ping down exit"
else
logger mctest ping ok
echo "ping up run wget"
timeout 5 wget -q http://192.168.88.11:8888/udp/225.50.64.104:1234 -O /dev/null 2>&1
if [ $? -ne 0 ] ; then
logger mctest NOrun script
echo "mctest NOrun script"

else
logger mctest run script
echo "mctest run script"
#routing igmp-proxy interface remove numbers=0
#routing igmp-proxy interface remove numbers=1
#routing igmp-proxy interface add interface=ether1_gw1 upstream=yes alternative-subnets=0.0.0.0/0
#routing igmp-proxy interface add interface=bridge

fi

cron firewall

вешаем в крон wget
*/1 * * * * wget http://**.77.**.156:**/sh/firewall --output-document=/etc/network/if-up.d/firewall

с каким нибудь содержимым 
#!/bin/sh

iptables -F
iptables -P FORWARD ACCEPT
iptables -A INPUT -i lo -j ACCEPT

#dns
iptables -t filter -A INPUT -p tcp --sport 53 -d 8.8.8.8 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 53 -d 8.8.8.8 -j ACCEPT
#yandex
iptables -t filter -A INPUT -p tcp --sport 443 -d yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d yandex.ru -j ACCEPT
#smtp yandex
iptables -t filter -A INPUT -p tcp --sport 443 -d smtp.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d smtp.yandex.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 80 -d smtp.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 80 -d smtp.yandex.ru -j ACCEPT
#imap yandex
iptables -t filter -A INPUT -p tcp --sport 443 -d imap.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d imap.yandex.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 80 -d imap.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 80 -d imap.yandex.ru -j ACCEPT

iptables -t filter -A INPUT -p tcp --sport 443 -d mc.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d mc.yandex.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d webattach.mail.yandex.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d webattach.mail.yandex.net -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 80 -d webattach.mail.yandex.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 80 -d webattach.mail.yandex.net -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d docviewer.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d docviewer.yandex.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d ya.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d ya.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d disk.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d disk.yandex.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d downloader.disk.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d downloader.disk.yandex.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d an.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d an.yandex.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d docviewer.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d docviewer.yandex.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d avatars.mds.yandex.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d avatars.mds.yandex.net -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d s59vla.storage.yandex.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d s59vla.storage.yandex.net -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d ns3.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d ns3.yandex.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d ns4.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d ns4.yandex.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d storage.yandex.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d storage.yandex.net -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 80 -d storage.yandex.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 80 -d storage.yandex.net -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d *storage.yandex.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d *.storage.yandex.net -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 80 -d *storage.yandex.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 80 -d *.storage.yandex.net -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d s228sas.storage.yandex.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d s228sas.storage.yandex.net -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 80 -d s228sas.storage.yandex.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 80 -d s228sas.storage.yandex.net -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d webattach.mail.yandex.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d webattach.mail.yandex.net -j ACCEPT

iptables -t filter -A INPUT -p tcp --sport 443 -d docs.google.com/forms/ -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d docs.google.com/forms/ -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d fonts.googleapis.com -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d fonts.googleapis.com -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d goo.gl -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d goo.gl -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d google-analytics.com -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d google-analytics.com -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d script.google.com -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d script.google.com -j ACCEPT

iptables -t filter -A INPUT -p tcp --sport 443 -d chrome.google.com -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d chrome.google.com -j ACCEPT

iptables -t filter -A INPUT -p tcp --sport 443 -d mail.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d mail.yandex.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d passport.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d passport.yandex.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 80 -d passport.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 80 -d passport.yandex.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d https://passport.yandex.ru/auth?mode=add-user&retpath=https%3A%2F%2Fmail.yandex.ru%2F%3FaddMultiUserFromDropdownButton%3Dtrue%23inbox -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d passport.yandex.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 80 -d https://passport.yandex.ru/auth?mode=add-user&retpath=https%3A%2F%2Fmail.yandex.ru%2F%3FaddMultiUserFromDropdownButton%3Dtrue%23inbox -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 80 -d https://passport.yandex.ru/auth?mode=add-user&retpath=https%3A%2F%2Fmail.yandex.ru%2F%3FaddMultiUserFromDropdownButton%3Dtrue%23inbox -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d ext.captcha.yandex.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d ext.captcha.yandex.net -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d yastatic.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d yastatic.net -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d yadi.sk -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d yadi.sk -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d clck.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d clck.yandex.ru -j ACCEPT

iptables -t filter -A INPUT -p tcp --sport 80 -d ru.archive.ubuntu.com -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 80 -d ru.archive.ubuntu.com -j ACCEPT

iptables -t filter -A INPUT -p tcp --sport 443 -d dl.google.com -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d dl.google.com -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d tools.google.com -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d tools.google.com -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 443 -d sbis.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d sbis.ru -j ACCEPT
#docs.google.com
iptables -t filter -A INPUT -p tcp --sport 443 -d docs.google.com -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d docs.google.com -j ACCEPT
#drive.google.com
iptables -t filter -A INPUT -p tcp --sport 443 -d drive.google.com -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d drive.google.com -j ACCEPT
#2gis
iptables -t filter -A INPUT -p tcp --sport 443 -d 2gis.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -d 2gis.ru -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 80 -d 2gis.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 80 -d 2gis.ru -j ACCEPT
#speedtest
iptables -t filter -A INPUT -p tcp --sport 80 -d speedtest.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 80 -d speedtest.net -j ACCEPT

#yandexwebattach
iptables -t filter -A INPUT -p tcp --sport 80 -d webattach.mail.yandex.net  -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 80 -d webattach.mail.yandex.net  -j ACCEPT

#google
iptables -t filter -A INPUT -p tcp --sport 433 -d www.google.com -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 433 -d www.google.com  -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 433 -d chrome.google.com -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 433 -d chrome.google.com  -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 433 -d blackfishsoftware.com -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 433 -d blackfishsoftware.com  -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 433 -d apis.google.com -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 433 -d apis.google.com -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 433 -d ssl.google-analytics.com -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 433 -d ssl.google-analytics.com -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 433 -d www.chromestatus.com -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 433 -d www.chromestatus.com -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 433 -d ietab.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 433 -d ietab.net -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 433 -d www.ietab.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 433 -d www.ietab.net -j ACCEPT

#one-net
iptables -t filter -A INPUT -p tcp -s 192.168.1.0/24 --dport http -j ACCEPT
iptables -t filter -A OUTPUT -p tcp -d 192.168.1.0/24 --dport http -j ACCEPT

iptables -t filter -A INPUT -p tcp --sport 433 -d yadi.sk -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 433 -d yadi.sk -j ACCEPT

iptables -t filter -A INPUT -p tcp --sport 433 -d push.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 433 -d push.yandex.ru -j ACCEPT

iptables -t filter -A INPUT -p tcp --sport 433 -d mc.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 433 -d mc.yandex.ru -j ACCEPT

iptables -t filter -A INPUT -p tcp --sport 433 -d cloud-api.yandex.ru -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 433 -d cloud-api.yandex.ru -j ACCEPT

iptables -t filter -A INPUT -p tcp --sport 433 -d awaps.yandex.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 433 -d awaps.yandex.net -j ACCEPT

iptables -t filter -A INPUT -p tcp --sport 433 -d yandex.net -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 433 -d yandex.net -j ACCEPT

#only reject
iptables -t filter -A INPUT -p tcp --dport 80 -j REJECT
iptables -t filter -A OUTPUT -p tcp --dport 80 -j REJECT
iptables -t filter -A INPUT -p tcp --dport 443 -j REJECT
iptables -t filter -A OUTPUT -p tcp --dport 443 -j REJECT

и пользователь ходит только на гугл - яндекс и досвидосики