Проверить все открытые порты на сервере с самого сервера можно программой netstat
. Возможно, придется её установить, по-умолчанию её нет в системе.
Проверка открытых портов:
netstat -tulpn | grep LISTEN
Если ошибка:
bash: netstat: команда не найдена
Установка в Debian/Ubuntu:
apt install net-tools
Живые примеры:
root@serv1:~# netstat -tulpn | grep LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 464/nginx: master p
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 433/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 866/exim4
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 464/nginx: master p
tcp 0 0 127.0.0.1:9313 0.0.0.0:* LISTEN 512/searchd
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 501/mysqld
tcp6 0 0 :::80 :::* LISTEN 464/nginx: master p
tcp6 0 0 :::22 :::* LISTEN 433/sshd
tcp6 0 0 ::1:25 :::* LISTEN 866/exim4
tcp6 0 0 :::443 :::* LISTEN 464/nginx: master p
tcp6 0 0 :::33060 :::* LISTEN 501/mysqld
root@serv2:~# netstat -tulpn | grep LISTEN
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 564/nginx: master p
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 510/mysqld
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 564/nginx: master p
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 475/sshd
tcp6 0 0 :::443 :::* LISTEN 564/nginx: master p
tcp6 0 0 :::33060 :::* LISTEN 510/mysqld
tcp6 0 0 :::80 :::* LISTEN 564/nginx: master p
tcp6 0 0 :::22 :::* LISTEN 475/sshd
Проверка соединения через определённый порт:
curl [IP_или_домен]:[порт]
curl mail.server.com:25
Программы curl
в системе по умолчанию тоже нет, установка:
apt install curl
Примеры ответов:
d1mon@myserv:~$ curl mail.server.com:25
curl: (7) Failed to connect to mail.server.com port 25: В соединении отказано
d1mon@myserv:~$ curl mail2.server.com:25
220 mail2.server.com ESMTP Sendmail 8.14.4/8.14.4; Mon, 22 Mar 2021 16:23:06 +0500
421 4.7.0 mail2.server.com Rejecting open proxy [185.***.**.86]