
Ломаю голову над этим... Я использую Shields Up, будучи проксированным на сервер, который я только что настроил с помощью Rackspace. Вот моя конфигурация iptables:
*filter
# Allow all loopback (lo0) traffic and drop all traffic to 127/8 that doesn't use lo0
-A INPUT -i lo -j ACCEPT
-A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT
# Accept all established inbound connections
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Allow all outbound traffic - you can modify this to only allow certain traffic
-A OUTPUT -j ACCEPT
# Allow HTTP and HTTPS connections from anywhere (the normal ports for websites and SSL).
-A INPUT -p tcp --dport 80 -j ACCEPT
-A INPUT -p tcp --dport 443 -j ACCEPT
# Allow SSH connections
-A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT
# Allow ping
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
# Reject all other inbound - default deny unless explicitly allowed policy
-A INPUT -j REJECT
-A FORWARD -j REJECT
COMMIT
Я сохранил это в файле конфигурации и загрузил его с помощью iptables-restore. Вот как выглядит мое сканирование портов:
Что могло стать причиной такой картины закрытых портов?
EDIT: вывод iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere
REJECT all -- anywhere 127.0.0.0/8 reject-with icmp-port-unreachable
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT tcp -- anywhere anywhere tcp dpt:http
ACCEPT tcp -- anywhere anywhere tcp dpt:https
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
ACCEPT icmp -- anywhere anywhere icmp echo-request
REJECT all -- anywhere anywhere reject-with icmp-port-unreachable
Chain FORWARD (policy ACCEPT)
target prot opt source destination
REJECT all -- anywhere anywhere reject-with icmp-port-unreachable
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere
решение1
Что могло стать причиной такой картины закрытых портов?
Паршивый сканер. Вы добавляете
-A INPUT -j REJECT
правило, которое приведет к тому, что ваш хост ответит ICMP type 3 / code 3
сообщением (пункт назначения недоступен - порт недоступен) для всех, кроме ранее принятых портов 22, 80 и 443 (последний также не появляется в сканировании). Это никоим образом не должно приводить к появлению "скрытых" портов.
Гибсоннельзя доверятьи другие сделали аналогичные замечания о печально известном«Поднять щиты!» много лет назад:
GRC 'nanoprobes' старательно подключаются() к серверу и затем блуждают дальше. Однако тест порта сообщает мне, что мой порт HTTP закрыт. Странно. Очень странно. Просмотр журналов, которые я прослушиваю с этого соединения, показывает, что мой веб-сервер ответил — но тестовая программа все равно сообщает, что он закрыт. Я повторил упражнение с веб-серверами на базе Windows и Unix и получил общий процент попаданий менее тридцати процентов, другими словами, чаще всего тестовая программа не обнаруживала мой открытый веб-сервер.
Оказывается, некоторые вещи никогда не меняются.
В качестве альтернативы вернитесь к общедоступным инструментам с открытым исходным кодом.Nmapуниверсальный сканер, который вы получите практически с любым дистрибутивом на VPS-хосте за $5/месяц. Если вам нужно только случайное сканирование, вы можете использовать онлайн-сервисы nmap, такие какодин из Online Domain Tools.