Вот результат команды nmap на моем выделенном сервере с моего домашнего ПК с Linux:

Not shown: 980 closed ports
PORT      STATE    SERVICE
20/tcp    filtered ftp-data
21/tcp    filtered ftp
22/tcp    open     ssh
53/tcp    filtered domain
80/tcp    open     http
81/tcp    filtered hosts2-ns
110/tcp   filtered pop3
135/tcp   filtered msrpc
139/tcp   filtered netbios-ssn
143/tcp   filtered imap
443/tcp   open     https
445/tcp   filtered microsoft-ds
587/tcp   filtered submission
993/tcp   filtered imaps
995/tcp   filtered pop3s
3306/tcp  filtered mysql
8080/tcp  filtered http-proxy
8081/tcp  filtered blackice-icecap
8443/tcp  filtered https-alt
40193/tcp filtered unknown

Nmap done: 1 IP address (1 host up) scanned in 2.34 seconds

Прямо сейчас у меня есть следующие правила на этом выделенном сервере:

*filter
:INPUT ACCEPT [0:0] 
:FORWARD ACCEPT [0:0] 
:OUTPUT ACCEPT [0:0] 
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 
-A INPUT -p icmp -j ACCEPT 
-A INPUT -i lo -j ACCEPT 
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT 
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT 
-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT 
-A INPUT -j REJECT --reject-with icmp-host-prohibited 
-A FORWARD -j REJECT --reject-with icmp-host-prohibited 

На самом деле, я хочу закрыть все порты, кроме 22, 80 и 443. Но я не знаю, как закрыть все порты, отображаемые как "отфильтрованные" с помощью команды nmap (в списке результатов выше).

Если кто-то может помочь мне решить эту проблему,

заранее спасибо

2 ответа2

0

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

-j REJECT --reject-with tcp-reset

вместо

-A INPUT -j REJECT --reject-with icmp-host-prohibited 
-A FORWARD -j REJECT --reject-with icmp-host-prohibited 

Смотрите http://diaryproducts.net/about/operating_systems/unix/nmap_port_scanner_iptables_firewall

Тогда порт будет выглядеть так, как будто на нем не запущена служба, поскольку tcp-reset является ответом на неиспользуемый порт.

Но вы говорите, что у вас есть другой брандмауэр впереди, так что вопрос, как сказал Джои, это :-)

0

Замените свои правила:

-A INPUT -j REJECT --reject-with icmp-host-prohibited 
-A FORWARD -j REJECT --reject-with icmp-host-prohibited 

с

-A INPUT -j DROP
-A FORWARD -j DROP

REJECT в основном используется в локальной сети, и если ваш сервер ищет интернет, я могу предложить вместо этого использовать DROP.

Посмотрите здесь и другие примеры iptables, которые также могут помочь.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .