Добавление своих правил iptables. Разрешить все одному адресу. Доступ при отрицательном балансе

Skip to end of metadata
Go to start of metadata

Как сделать доступ к внешнему произвольному адресу или подсети. Как дать доступ к платежным системам при отрицательном балансе.

Задача: дать доступ к адресу 222.222.222.222 любым в т.ч. неавторизованным пользователям и с отрицательным балансом.

C помощью удаленного помощника :

mount -o rw,remount /mnt/ro_disc
chattr -i -R /usr/local/ics/bin/ics_tune.sh
mcedit /usr/local/ics/bin/ics_tune.sh
В файл /usr/local/ics/bin/ics_tune.sh внести содержимое:

#!/bin/bash

if [ "$1" = "firewall.sh" ]; then
     iptables -I FORWARD 2 -d 222.222.222.222 -j ACCEPT
     iptables -I FORWARD 2 -s 222.222.222.222 -j ACCEPT
     iptables -t nat -I PREROUTING  -d 222.222.222.222 -j ACCEPT
     iptables -t nat -A POSTROUTING -d 222.222.222.222 -j MASQUERADE
fi



exit 0

Примечание: Добавлять можно также целую сеть, например 222.222.222.222/27

Как разрешить все для определенного ip

Задача: Разрешить все для ip 11.22.33.44

В файл /usr/local/ics/bin/ics_tune.sh внести содержимое:

#!/bin/bash

    if [ "$1" = 'firewall.sh' ]; then
        iptables -t mangle -I PREROUTING -s 11.22.33.44 -j ACCEPT
        iptables -t mangle -I PREROUTING -d 11.22.33.44 -j ACCEPT
        iptables -t mangle -I POSTROUTING -s 11.22.33.44 -j ACCEPT
        iptables -t mangle -I POSTROUTING -d 11.22.33.44 -j ACCEPT
        iptables -t nat -I PREROUTING -s 11.22.33.44 -j ACCEPT
        iptables -t nat -I PREROUTING -d 11.22.33.44 -j ACCEPT
        iptables -t nat -I POSTROUTING -s 11.22.33.44 -j ACCEPT
        iptables -t nat -I POSTROUTING -d 11.22.33.44 -j ACCEPT
        iptables -I FORWARD -s 11.22.33.44 -j ACCEPT
        iptables -I FORWARD -d 11.22.33.44 -j ACCEPT
    fi

exit 0


Примечание: для открытия доступа к сети можно использовать запись вида 11.22.33.44/26 где /26 - маска сети к которой даете доступ.

После этого в консоли нужно выполнить команду 

/usr/local/ics/bin/ics_tune.sh firewall.sh

Разрешить traceroute

В случае если при вводе команды traceroute вы получаете что то вроде

[root@server root]# traceroute 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 38 byte packets
traceroute: sendto: Operation not permitted
 1 traceroute: wrote 8.8.8.8 38 chars, ret=-1
 *traceroute: sendto: Operation not permitted
traceroute: wrote 8.8.8.8 38 chars, ret=-1
 *traceroute: sendto: Operation not permitted
traceroute: wrote 8.8.8.8 38 chars, ret=-1

Значит прохождение пакетов закрыто файерволом. Для разрешения добавьте правила

iptables -I OUTPUT -d 8.8.8.8 -j ACCEPT
iptables -I INPUT -s 8.8.8.8 -j ACCEPT

После проверки не забудьте удалить добавленные правила

iptables -D OUTPUT -d 8.8.8.8 -j ACCEPT
iptables -D INPUT -s 8.8.8.8 -j ACCEPT
Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.