Уважаемые, тут возник вопрос, как правильно отключить Internet и оставить только внутреннюю сеть. Нужно для тестирования ситуации, когда приложение не имеет доступа к мировой сети.


Есть виртуалка с сетями:


10.0.0.0/24
10.0.2.0/24
192.168.37.0/24


С этих сетей нужно закрыть доступ в Internet.


Сразу вспомнился iptables и была выдана команда:


# Generated by iptables-save v1.4.21 on Sat Jun 27 17:21:29 2020
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:LOG_DROP - [0:0]
-A INPUT -s 10.0.0.0/24 -j ACCEPT
-A INPUT -s 10.0.2.0/24 -j ACCEPT
-A INPUT -s 192.168.37.0/24 -j ACCEPT
-A INPUT -j DROP
-A OUTPUT -d 10.0.0.0/24 -j ACCEPT
-A OUTPUT -d 10.0.2.0/24 -j ACCEPT
-A OUTPUT -d 192.168.37.0/24 -j ACCEPT
-A OUTPUT -j LOG --log-prefix "BLOCKED "
-A OUTPUT -j DROP
COMMIT


После чего сразу проверка:


[root@master ~]# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
ping: sendmsg: Operation not permitted
ping: sendmsg: Operation not permitted
ping: sendmsg: Operation not permitted


И вроде бы как работает (ни пинги не проходят ни сайты в браузере не открываются).


Но меня терзают смутные сомнения, потому что если у провайдера ведутся какие профилактические работы и Internet соединения нет, то никаких:


Operation not permitted


нет. Там другой ответ.


Возникает вопрос, правильно лия смоделировал ситуацию «нет Internet соединения» с помощью приведенных выше iptables rules?









 






URL записи