LINUX.ORG.RU

iptables по наследству

 , ,


0

1

Доброго вечера, собравшимся

который день ломаю голову «что пошло не так?», а заодно решил причесать, доставшееся по наследству хозяйство для простоты понимания , что и как. есть шлюз , когда то на центоси 6.4(сейчас на 6.9) и соответственно джентельменский набор squid(c 3.2 обновленный до 3.5 и пропущенный через него SSL) iptables dns, dhcp fail2ban и lightsquid c sqstat

после очередных обновлений, в логах сквида, стали появляться обратные записи вида

 
1512490861.000 1 192.168.0.220 TCP_MISS/200 76 CONNECT 89.109.251.21:123\udp - DIRECT/89.109.251.21 -
1512490861.000 1 89.109.251.21 TCP_MISS/200 76 CONNECT 192.168.0.220:123\udp - DIRECT/192.168.0.220 -
что в свою очередь «сводит с ума» парсеры аля lightsquid

попытки осознать, что и зачем прикручено к днс пока успеха не дали

в итоге решил (чтобы не сносить все и не заливать с нуля) начать с iptables, а там , если совсем тупик, то может и снести все

итак с вашего позволения начнем

cat /etc/sysconfig/iptables

# Generated by iptables-save v1.4.7 on Fri Dec  1 14:02:58 2017
*filter
:INPUT DROP [5:539]
:FORWARD ACCEPT [0:0]
:OUTPUT DROP [4:398]
:drop-lan - [0:0]
-A INPUT -m state --state INVALID -j DROP
-A INPUT -p tcp -m tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j REJECT --reject-with tcp-reset
-A INPUT -p tcp -m state --state NEW -j LOG --log-level 7
-A INPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
-A INPUT -p tcp -m limit --limit 3/min -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j LOG --log-tcp-options --log-ip-options
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth2 -j ACCEPT
-A INPUT -i eth3 -j ACCEPT
-A INPUT -i tun0 -j ACCEPT
-A INPUT -i eth1 -p icmp -m icmp --icmp-type 0 -j ACCEPT
-A INPUT -i eth1 -p icmp -m icmp --icmp-type 3 -j ACCEPT
-A INPUT -i eth1 -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -i eth1 -p icmp -m icmp --icmp-type 11 -j ACCEPT
-A INPUT -i eth0 -p icmp -m icmp --icmp-type 0 -j ACCEPT
-A INPUT -i eth0 -p icmp -m icmp --icmp-type 3 -j ACCEPT
-A INPUT -i eth0 -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -i eth0 -p icmp -m icmp --icmp-type 11 -j ACCEPT
-A INPUT -d xx.xx.xx.xx/32 -p tcp -m tcp --dport 2332 -j ACCEPT
-A INPUT -d xx.xx.xx.xx/32 -p udp -m udp --dport 1194 -j ACCEPT
-A INPUT -d xx.xx.xx.xx/32 -p tcp -m tcp --dport 1194 -j ACCEPT
-A INPUT -d xx.xx.xx.xx/32 -p tcp -m tcp --dport 8389 -j ACCEPT
-A INPUT -d xx.xx.xx.xx/32 -p tcp -m tcp --dport 8380 -j ACCEPT
-A INPUT -d xx.xx.xx.xx/32 -p tcp -m tcp --dport 8980 -j ACCEPT
-A INPUT -d xx.xx.xx.xx/32 -p tcp -m tcp --dport 8922 -j ACCEPT
-A INPUT -d xx.xx.xx.xx/32 -p tcp -m tcp --dport 5389 -j ACCEPT
-A INPUT -d xx.xx.xx.xx/32 -p tcp -m tcp --dport 6389 -j ACCEPT
-A INPUT -d xx.xx.xx.xx/32 -p tcp -m tcp --dport 7389 -j ACCEPT
-A INPUT -d yy.yy.yy.yy/32 -p tcp -m tcp --dport 5389 -j ACCEPT
-A INPUT -d yy.yy.yy.yy/32 -p tcp -m tcp --dport 6389 -j ACCEPT
-A INPUT -d yy.yy.yy.yy/32 -p tcp -m tcp --dport 7389 -j ACCEPT
-A INPUT -d yy.yy.yy.yy/32 -p tcp -m tcp --dport 2332 -j ACCEPT
-A INPUT -d yy.yy.yy.yy/32 -p udp -m udp --dport 1194 -j ACCEPT
-A INPUT -d yy.yy.yy.yy/32 -p tcp -m tcp --dport 1194 -j ACCEPT
-A INPUT -d yy.yy.yy.yy/32 -p tcp -m tcp --dport 8389 -j ACCEPT
-A INPUT -d yy.yy.yy.yy/32 -p tcp -m tcp --dport 8380 -j ACCEPT
-A INPUT -d yy.yy.yy.yy/32 -p tcp -m tcp --dport 8980 -j ACCEPT
-A INPUT -d yy.yy.yy.yy/32 -p tcp -m tcp --dport 8922 -j ACCEPT
-A INPUT -s 0.0.0.0/32 -d 255.255.255.255/32 -i eth0 -p udp -m udp --sport 68 --dport 67 -j ACCEPT
-A INPUT -s 0.0.0.0/32 -d 255.255.255.255/32 -i eth1 -p udp -m udp --sport 68 --dport 67 -j ACCEPT
-A INPUT -s 0.0.0.0/32 -d 192.168.0.1/32 -i eth0 -p udp -m udp --sport 68 --dport 67 -j ACCEPT
-A INPUT -s 0.0.0.0/32 -d 192.168.1.1/32 -i eth1 -p udp -m udp --sport 68 --dport 67 -j ACCEPT
-A INPUT -s 192.168.0.0/24 -d 192.168.0.1/32 -i eth0 -p udp -m udp --sport 68 --dport 67 -j ACCEPT
-A INPUT -s 192.168.1.0/24 -d 192.168.1.1/32 -i eth1 -p udp -m udp --sport 68 --dport 67 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --dport 1024:65535 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 1024:65535 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth1 -p udp -m udp --dport 1024:65535 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth1 -p tcp -m tcp --dport 1024:65535 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth2 -p tcp -m state --state NEW -m tcp --dport 10000 -j ACCEPT
-A INPUT -i eth2 -p tcp -m state --state NEW,ESTABLISHED -m tcp --dport 10050 -j ACCEPT
-A INPUT -i eth2 -p tcp -m state --state NEW,ESTABLISHED -m tcp --dport 10051 -j ACCEPT
-A INPUT -i eth2 -p udp -m state --state NEW -m udp --dport 161 -j ACCEPT
-A INPUT -i eth3 -p tcp -m state --state NEW,ESTABLISHED -m tcp --dport 10050 -j ACCEPT
-A INPUT -i eth3 -p tcp -m state --state NEW,ESTABLISHED -m tcp --dport 10051 -j ACCEPT
-A INPUT -i eth3 -p udp -m state --state NEW -m udp --dport 161 -j ACCEPT
-A FORWARD -p tcp -m limit --limit 3/min -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j LOG --log-tcp-options --log-ip-options
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth2 -o eth3 -j DROP
-A FORWARD -i eth3 -o eth2 -j DROP
-A FORWARD -i eth2 -j ACCEPT
-A FORWARD -i eth3 -j ACCEPT
-A FORWARD -i tun0 -j ACCEPT
-A FORWARD -d 192.168.0.5/32 -i eth0 -p tcp -m tcp --dport 5389 -j ACCEPT
-A FORWARD -d 192.168.0.5/32 -i eth1 -p tcp -m tcp --dport 5389 -j ACCEPT
-A FORWARD -d 192.168.0.46/32 -i eth0 -p tcp -m tcp --dport 6389 -j ACCEPT
-A FORWARD -d 192.168.0.46/32 -i eth1 -p tcp -m tcp --dport 6389 -j ACCEPT
-A FORWARD -d 192.168.0.119/32 -i eth0 -p tcp -m tcp --dport 7389 -j ACCEPT
-A FORWARD -d 192.168.0.119/32 -i eth1 -p tcp -m tcp --dport 7389 -j ACCEPT
-A FORWARD -d 192.168.0.140/32 -i eth0 -p tcp -m tcp --dport 8389 -j ACCEPT
-A FORWARD -d 192.168.0.140/32 -i eth1 -p tcp -m tcp --dport 8389 -j ACCEPT
-A FORWARD -d 192.168.0.140/32 -i eth0 -p tcp -m tcp --dport 8380 -j ACCEPT
-A FORWARD -d 192.168.0.140/32 -i eth1 -p tcp -m tcp --dport 8380 -j ACCEPT
-A FORWARD -d 192.168.0.205/32 -i eth0 -p tcp -m tcp --dport 8980 -j ACCEPT
-A FORWARD -d 192.168.0.205/32 -i eth1 -p tcp -m tcp --dport 8980 -j ACCEPT
-A FORWARD -d 192.168.0.205/32 -i eth0 -p tcp -m tcp --dport 8922 -j ACCEPT
-A FORWARD -d 192.168.0.205/32 -i eth1 -p tcp -m tcp --dport 8922 -j ACCEPT
-A FORWARD -d 192.168.0.8/32 -i eth1 -p tcp -m tcp --dport 5443 -j ACCEPT
-A FORWARD -d 192.168.0.8/32 -i eth0 -p tcp -m tcp --dport 5443 -j ACCEPT
-A OUTPUT -s 0.0.0.0/32 -d 255.255.255.255/32 -o eth0 -p udp -m udp --sport 68 --dport 67 -j ACCEPT
-A OUTPUT -s 0.0.0.0/32 -d 255.255.255.255/32 -o eth1 -p udp -m udp --sport 68 --dport 67 -j ACCEPT
-A OUTPUT -s 192.168.0.1/32 -d 255.255.255.255/32 -o eth0 -p udp -m udp --sport 67 --dport 68 -j ACCEPT
-A OUTPUT -s 192.168.1.1/32 -d 255.255.255.255/32 -o eth1 -p udp -m udp --sport 67 --dport 68 -j ACCEPT
-A OUTPUT -s 192.168.0.1/32 -d 192.168.0.0/24 -o eth0 -p udp -m udp --sport 67 --dport 68 -j ACCEPT
-A OUTPUT -s 192.168.1.1/32 -d 192.168.1.0/24 -o eth1 -p udp -m udp --sport 67 --dport 68 -j ACCEPT
-A OUTPUT -m state --state NEW,ESTABLISHED -j ACCEPT
-A drop-lan -j DROP
COMMIT
# Completed on Fri Dec  1 14:02:58 2017
# Generated by iptables-save v1.4.7 on Fri Dec  1 14:02:58 2017
*mangle
:PREROUTING ACCEPT [21882:23825521]
:INPUT ACCEPT [20197:22894211]
:FORWARD ACCEPT [1652:926544]
:OUTPUT ACCEPT [20337:23871186]
:POSTROUTING ACCEPT [21982:24797180]
COMMIT
# Completed on Fri Dec  1 14:02:58 2017
# Generated by iptables-save v1.4.7 on Fri Dec  1 14:02:58 2017
*nat
:PREROUTING ACCEPT [65:9501]
:POSTROUTING ACCEPT [1792:125209]
:OUTPUT ACCEPT [1840:128380]
-A PREROUTING -s 192.168.0.113/32 -p tcp -m tcp --dport 80 -j RETURN
-A PREROUTING -s 192.168.0.0/24 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
-A PREROUTING -s 192.168.1.0/24 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
-A PREROUTING -s 192.168.0.0/24 -p tcp -m tcp --dport 8080 -j REDIRECT --to-ports 3128
-A PREROUTING -s 192.168.1.0/24 -p tcp -m tcp --dport 8080 -j REDIRECT --to-ports 3128
-A PREROUTING -s 192.168.0.0/24 -p tcp -m tcp --dport 443 -j REDIRECT --to-ports 3129
-A PREROUTING -s 192.168.1.0/24 -p tcp -m tcp --dport 443 -j REDIRECT --to-ports 3129
-A PREROUTING -s 192.168.0.0/24 -p tcp -m tcp --dport 8443 -j REDIRECT --to-ports 3129
-A PREROUTING -s 192.168.1.0/24 -p tcp -m tcp --dport 8443 -j REDIRECT --to-ports 3129
-A PREROUTING -i eth1 -p tcp -m tcp --dport 8922 -j DNAT --to-destination 192.168.0.205:22
-A PREROUTING -i eth0 -p tcp -m tcp --dport 8922 -j DNAT --to-destination 192.168.0.205:22
-A PREROUTING -i eth1 -p tcp -m tcp --dport 8980 -j DNAT --to-destination 192.168.0.205:8080
-A PREROUTING -i eth0 -p tcp -m tcp --dport 8980 -j DNAT --to-destination 192.168.0.205:8080
-A PREROUTING -i eth1 -p tcp -m tcp --dport 8389 -j DNAT --to-destination 192.168.0.140:3389
-A PREROUTING -i eth0 -p tcp -m tcp --dport 8389 -j DNAT --to-destination 192.168.0.140:3389
-A PREROUTING -i eth1 -p tcp -m tcp --dport 8380 -j DNAT --to-destination 192.168.0.140:443
-A PREROUTING -i eth0 -p tcp -m tcp --dport 8380 -j DNAT --to-destination 192.168.0.140:443
-A PREROUTING -i eth1 -p tcp -m tcp --dport 5389 -j DNAT --to-destination 192.168.0.5:3389
-A PREROUTING -i eth0 -p tcp -m tcp --dport 5389 -j DNAT --to-destination 192.168.0.5:3389
-A PREROUTING -i eth1 -p tcp -m tcp --dport 6389 -j DNAT --to-destination 192.168.0.46:3389
-A PREROUTING -i eth0 -p tcp -m tcp --dport 6389 -j DNAT --to-destination 192.168.0.46:3389
-A PREROUTING -i eth1 -p tcp -m tcp --dport 7389 -j DNAT --to-destination 192.168.0.119:3389
-A PREROUTING -i eth0 -p tcp -m tcp --dport 7389 -j DNAT --to-destination 192.168.0.119:3389
-A PREROUTING -i eth0 -p tcp -m tcp --dport 5443 -j DNAT --to-destination 192.168.0.8:8443
-A PREROUTING -i eth1 -p tcp -m tcp --dport 5443 -j DNAT --to-destination 192.168.0.8:8443
-A POSTROUTING -o eth0 -j MASQUERADE
-A POSTROUTING -o eth1 -j MASQUERADE
COMMIT

что-то добавлял уже я(в основном пробросы на порты) но основная структура досталась по наследству и долго работала по принципу «работает - не трогай»

то что смутило при первом взгляде, отчего порты dhcp не «серые» eth2 и eth3, а «белые» eth0 и eth1 ?

и к слову перестали работать редиректы на 8980 и 8922 остальные работают

113й мой, не все с 443 пока хорошо, в итоге пустил в обход

два «белых» делятся скриптом , по принципу отзывчивости 8.8.8.8 те настроено некое НА, по рецептам в сети внутри две сетки плюс опенВПН все в приниципе работало и работает, но ..«есть нюанс» (с)

RavenouseAnimal ()

отчего порты dhcp не «серые» eth2 и eth3, а «белые» eth0 и eth1 ?

А интерфейсы eth0 и eth1 как сконфигурированы? Если статикой - тогда да, странно. Но если там dhcp-клиент, тогда разрешение пакетов для DHCP на этих интерфейсах - логичная мера :-)

Pinkbyte ★★★★★ ()
Ответ на: комментарий от Pinkbyte

в том то и дело конфиг описал выше eth0=ISP1 eth1=ISP2 eth2=Office eth3=CAD tu0=VPN все статики

остальной «стандартный» мусор все еще нужен, или как и manage уже «подразумевается» в новых редакциях

имеет ли смысл ковырять «наследие» или проще поставить всех перд фактом и запилить его с нуля?

вопрос что ставить просто 7 цент, фрю или чтото готовое , аля чекпоинт, pfsense и пр?

правда есть подозрения, что ручками оно надежнее все же

RavenouseAnimal ()
Ответ на: комментарий от RavenouseAnimal

вчера доковырял днс, отключил рекурсию..не помогло

acl mynet {
    192.168.0.0/24; # office network
    192.168.1.0/24; # cad network
    127.0.0.1; # localhost
    };
acl AD-Server {
    127.0.0.1;
    192.168.0.1;
    192.168.1.1;
    192.168.0.2;
    192.168.1.2;
    192.168.0.3;
    192.168.1.3;
    192.168.0.4;
    192.168.1.4;
    };
options {
        listen-on port 53 { 127.0.0.1; 192.168.0.1; 192.168.1.1; };
        directory "/var/named";
        dump-file "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query { mynet; };
        allow-transfer { none; };
        allow-recursion { mynet; };
//      recursion yes;
        version "unknown";

        forward first;
        forwarders {  nsisp1; nsisp2; ns3; 8.8.8.8; };
        empty-zones-enable yes;

        dnssec-validation auto;
        dnssec-lookaside auto;

        auth-nxdomain no;  # conform to RFC1035
        listen-on-v6 { none; };

        bindkeys-file "/etc/named.iscdlv.key";
        managed-keys-directory "/var/named/dynamic";
        };
logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };

        channel default {
                file "data/named.log" versions 10 size 20m;
                severity dynamic;
                print-time yes;
                print-category yes;
        };

        channel database {
                file "data/database.log" versions 10 size 20m;
                severity info;
                print-time yes;
                print-category yes;
        };

        channel security {
                file "data/security.log" versions 10 size 20m;
                severity info;
                print-time yes;
                print-category yes;
        };

        channel resolver {
                file "data/resolver.log" versions 10 size 20m;
                severity debug 6;
                print-time yes;
                print-category yes;
        };

        channel xfer-in {
                file "data/xfer-in.log" versions 10 size 20m;
                severity debug 6;
                print-time yes;
                print-category yes;
        };

        channel xfer-out {
                file "data/xfer-out.log" versions 10 size 20m;
                severity debug 6;
                print-time yes;
                print-category yes;
        };

        channel notify {
                file "data/notify.log" versions 10 size 20m;
                severity debug 6;
                print-time yes;
                print-category yes;
        };

        channel client {
                file "data/client.log" versions 10 size 20m;
                severity debug 6;
                print-time yes;
                print-category yes;
        };

        channel update {
                file "data/update.log" versions 10 size 20m;
                severity debug 6;
                print-time yes;
                print-category yes;
        };

        channel queries {
                file "data/queries.log" versions 10 size 20m;
                severity debug 6;
                print-time yes;
                print-category yes;
        };

        channel dispatch {
                file "data/dispatch.log" versions 10 size 20m;
                severity debug 6;
                print-time yes;
                print-category yes;
        };

        channel dnssec {
                file "data/dnssec.log" versions 10 size 20m;
                severity debug 6;
                print-time yes;
                print-category yes;
        };

        channel lame-servers {
                file "data/lame-servers.log" versions 10 size 20m;
                severity debug 6;
                print-time yes;
                print-category yes;
        };

        channel network {
                file "data/network.log" versions 10 size 20m;
                severity info;
                print-time yes;
                print-category yes;
        };

        category default        { null; };
        category general        { null; };
        category unmatched      { null; };
        category network        { network; };
        category config         { null; };
        category database       { database; };
        category security       { security; };
        category resolver       { resolver; };
        category xfer-in        { xfer-in; };
        category xfer-out       { xfer-out; };
        category notify         { notify; };
        category client         { client; };
        category update         { update; };
        category queries        { queries; };
        category dispatch       { dispatch; };
        category dnssec         { dnssec; };
        category lame-servers   { lame-servers; };
};
key "rndc-key" {
      algorithm hmac-md5;
      secret "9fUUckKmj7o8SHXst3qj7g==";
};
controls {
      inet 127.0.0.1 port 953
      allow { 127.0.0.1; }
      keys { "rndc-key"; };
};
zone "." IN {
    type hint;
    file "named.root";
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
// Active Directory - _msdcs
zone "_msdcs.myfirm.local" {
        type master;
        allow-update {AD-Server;};
        check-names ignore;
        file "dynamic/_msdcs.myfirm.local";
};
// Active Directory - _sites
zone "_sites.myfirm.local" {
        type master;
        allow-update {AD-Server;};
        check-names ignore;
        file "dynamic/_sites.myfirm.local";
};
// Active Directory - _tcp
zone "_tcp.myfirm.local" {
        type master;
        allow-update {AD-Server;};
        check-names ignore;
        file "dynamic/_tcp.myfirm.local";
};
// Active Directory - _udp
zone "_udp.myfirm.local" {
        type master;
        allow-update {AD-Server;};
        check-names ignore;
        file "dynamic/_udp.myfirm.local";
};
// Active Directory - DomainDnsZones
zone "DomainDnsZones.myfirm.local" {
        type master;
        allow-update {AD-Server;};
        check-names ignore;
        file "dynamic/DomainDnsZones.myfirm.local";
};
// Active Directory - ForestDnsZones
zone "ForestDnsZones.myfirm.local" {
        type master;
        allow-update {AD-Server;};
        check-names ignore;
        file "master/ForestDnsZones.myfirm.local";
};
zone "myfirm.local" {
        type master;
        allow-update {AD-Server;};
        file "dynamic/myfirm.local";
};
zone "0.168.192.in-addr.arpa" {
        type master;
        allow-update {AD-Server;};
        file "dynamic/0.168.192.in-addr.arpa";
};
zone "1.168.192.in-addr.arpa" {
        type master;
        allow-update {AD-Server;};
        file "dynamic/1.168.192.in-addr.arpa";
};
zone "127.in-addr.arpa" {
        type master;
        allow-update {AD-Server;};
        file "dynamic/127.in-addr.arpa";
};
zone "255.in-addr.arpa" {
        type master;
        allow-update {AD-Server;};
        file "dynamic/255.in-addr.arpa";
};

RavenouseAnimal ()
Ответ на: комментарий от anonymous

а подробнее можно ?;) наоборот вчера прикрутил каналы логирования, вдруг там что экзотическое увижу..

но нет, даже ошибка RCODE REFUSED с резолвами осталась, только теперь в lame-servers, как и предполагалось

вроде и не мешает, но как то не радует 0_о

RavenouseAnimal ()

Маскарадинг сразу на два интерфейса это какой-то кабздец, имхо. Замени на четко прописанный SNAT.

И укажи там для построутинга четко -s и -o. Без них писать это тоже капец, у тебя трафик может такие кульбиты выписывать.

Вообще во ВСЕХ правилах пропиши четко -i/-o и -s/-d. Это первое, что необходимо сделать для понимания того, как ходит трафик. И это устранит 99% всех возможный петель и непредсказуемых заворотов непойми откуда непойми куда. Это, кстати, есть во всех серьёзных рекомендациях.

anonymoos ★★★★ ()
Последнее исправление: anonymoos (всего исправлений: 3)
:FORWARD ACCEPT [1652:926544]
-A POSTROUTING -o eth0 -j MASQUERADE
-A POSTROUTING -o eth1 -j MASQUERADE


Вот эта прелесть разрешит роутить пакеты из ISP сети eth0 в ISP сеть eth1...

И заденай форвард кроме четко прописанного откуда куда (iptables -t filter -P FORWARD DROP)

anonymoos ★★★★ ()
Последнее исправление: anonymoos (всего исправлений: 3)
Ответ на: комментарий от RavenouseAnimal

Здравствуйте!

А теперь небольшой практический пример использования достаточно надежного во многих ситуациях linux-файрволла iptables:

/sbin/iptables -F /sbin/iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP /sbin/iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP /sbin/iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP /sbin/iptables -A INPUT -i lo -j ACCEPT /sbin/iptables -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT /sbin/iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT /sbin/iptables -P OUTPUT ACCEPT /sbin/iptables -P INPUT DROP

Как вы видите, в этом случае мы открываем на компьютере порты 21 22 80 443, то есть для работы с почтой и интернетом...

anonymous ()
Ответ на: комментарий от RavenouseAnimal

Здравствуйте!

А теперь небольшой практический пример использования достаточно надежного во многих ситуациях linux-файрволла iptables:

/sbin/iptables -F

/sbin/iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP

/sbin/iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP

/sbin/iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP

/sbin/iptables -A INPUT -i lo -j ACCEPT

/sbin/iptables -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT

/sbin/iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT

/sbin/iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT

/sbin/iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT

/sbin/iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

/sbin/iptables -P OUTPUT ACCEPT

/sbin/iptables -P INPUT DROP

Как вы видите, в этом случае мы открываем на компьютере порты 21 22 80 443, то есть для работы с почтой и интернетом...

anonymous ()
Ответ на: комментарий от anonymoos

спасибо за реакцию те я правилльно понимаю , что свои строки маскадаром, нужн вынести в отдельный :Форвард ? те получится так

-A PREROUTING -i eth0 -p tcp -m tcp --dport 5443 -j DNAT --to-destination 192.168.0.8:8443
-A PREROUTING -i eth1 -p tcp -m tcp --dport 5443 -j DNAT --to-destination 192.168.0.8:8443
:FORWARD ACCEPT [1652:926544]
-A POSTROUTING -o eth0 -j MASQUERADE
-A POSTROUTING -o eth1 -j MASQUERADE
COMMIT

по остальному , вроде как «общих» правил и нет, всюду «откуда-куда»..или упускаю чтото ?

RavenouseAnimal ()
Ответ на: комментарий от anonymoos

проблема (или может и нет) в том, что изначально хотелось использовать сразу оба провайдера, с проверкой раз в 5 минут на пинг 8.8.8.8, по результатам которого шлюз переключался на «живой» шлюз

в принципе идея , как я понял , сопряжена с большим гемороем, чем пользой, поэтому готов и пожертвовать этим, и остаться на одном шлюзе , с переключением на более живой

и к слову, может все таки с нуля все написать/поставить?

RavenouseAnimal ()
Ответ на: комментарий от RavenouseAnimal

Я просто не до конца понял в чем собтвенно проблема. Решил, что через сервер заворачиваются пакеты, которые не должны заворачиваться. Ежели дело только в непонятных логах сквида, то можно их просто каким-нибудь sed фильтровать (а может там даже в нём есть настройка что именно писать в лог, я уже точно не помню). Но если роутинг криво настроен, лучше конечно с ним разобраться.

На самом деле исходник правил файрфолла - вполне себе полноценный исходный код. И если он написан без отступов™ и комментариев™, то за такое надо бить скалкой по шее.

anonymoos ★★★★ ()
Последнее исправление: anonymoos (всего исправлений: 1)
Ответ на: комментарий от anonymoos

попробую еще раз описать «проблему»

сейчас воюю с ssl фильтрацией

и тут смущают «тупняки» при открытии «шифрованых» сайтов иногда они проходят, иногда возвращаются

в сквиде «пемы» копятся, но проблема решена лишь частично

отсюда и начались копания кеширующего днс, фаервола и тд

поскольку, как было озвучено в сабже , изначально это все досталось по наследству, отсюда и мысль убить все и начать с чистого листа

задача шлюза по двух первым интерфейсам со статическим «белым» адресом получать инет, и заворачивать через сквид туда третий и четвертый , условно «офисный» и «кадовский»

есть еще опенвпн и кучка форвардов на сайты и шеллы, для доступа извне

RavenouseAnimal ()