Недавно я установил две машины Ubuntu Server, и я хотел бы найти открытые порты в машине.
Когда я запускал nmap с моей машины (Ubuntu 11.10), я заметил, что оба сервера имеют
135/tcp filtered msrpc
4444/tcp filtered krb524
4662/tcp filtered edonkey
5000/tcp filtered upnp
5631/tcp filtered pcanywheredata
Я никогда не открывал эти порты. Я только установил LAMP и SAMBA. Почему эти порты открыты?
Полный список открытых портов:
22/tcp open ssh
25/tcp open smtp
53/tcp open domain
80/tcp open http
110/tcp open pop3
135/tcp filtered msrpc
139/tcp open netbios-ssn
143/tcp open imap
445/tcp open microsoft-ds
993/tcp open imaps
995/tcp open pop3s
4444/tcp filtered krb524
4662/tcp filtered edonkey
5000/tcp filtered upnp
5631/tcp filtered pcanywheredata
Вопрос в том, почему эти порты открыты: 135/tcp filtered msrpc, 4444/tcp filtered krb524, 4662/tcp filtered edonkey. 5000/tcp filtered upnp, 5631/tcp filtered pcanywheredata. Я никогда не открывал эти порты. Я только установил LAMP и SAMBA.
Является ли этот список безопасным?
Ваш вопрос довольно широк, а «безопасный» относительный.
Когда вы устанавливаете сервер и открываете порт, всегда будут потенциальные уязвимости.
Когда вы устанавливаете сервер (ssh, samba) и запускаете сервер ( они запускаются по умолчанию при загрузке), вы открываете порт.
С каждым сервером (ssh, samba, http) есть изменения конфигурации, которые вы можете сделать для повышения безопасности.
для ssh это может включать в себя использование ключей (и отключение паролей), tcpwrapper, брандмауэра и т. д.
При использовании брандмауэра существуют 3 широкие стратегии
1) Разрешить все и черный список плохо действующий IP. Примером этого может быть http. В gerneral вы запускаете http как общедоступный сервер, разрешаете всем IP и черным спискам тех, кто рассылает спам вашему серверу.
2) Отклоните все и разрешите белый список. Примером этого может быть ssh.
3) Предел. Когда вы ограничиваете скорость соединения или # pings / second.
Надеемся, что вы начнете, вы можете увидеть
https://help.ubuntu.com/11.10 /serverguide/C/index.html
https://help.ubuntu.com/11.10/serverguide/C/index.html
Или спросить конкретный вопрос о конкретном сервере.
«отфильтрованный» необязательно приравнивается к открытому порту на целевом хосте.
На самом деле это вообще ничего не значит.
Если, например, там является межсетевым экраном между вами, где бы вы ни работали nmap и целью, и что брандмауэр активно фильтрует порт 5000, тогда 5000 будет отображаться как «отфильтрованный» в вашем списке, если целевой хост никогда не видит трафик на этот порт - поэтому независимо от того, открыт или нет порт на цели, становится совершенно неуместным.
Для окончательного списка открытых портов на сервере попробуйте:
sudo netstat -lnp --tcp --udp
-l : only show listening ports
-n : don't bother looking up DNS hostnames
-p : show which processes have the port open
--tcp : show tcp ports
--udp : show udp ports
Вы можете опустить [ f3] и --udp, но тогда вы получите довольно много нерелевантной информации о локальном каталоге файловой системы, которая недоступна по сети.
sudo требуется для правильной работы -p, или будет просто печатать - для любого процесса, не принадлежащего вашему пользователю.
Эта команда вам поможет.
$ netstat -a -n | egrep 'Proto|LISTEN'
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN
tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
Эта ссылка «открыть порты и команды служб прослушивания» поможет вам.