Назад | Перейти на главную страницу

Как проверить, открыт ли порт для удаленной системы (ubuntu)

Можно ли проверить, открыты ли порты для удаленной системы на сервере ubuntu?

Я должен проверить, открыт ли порт (например, ssh) на моем компьютере для удаленного компьютера.

используйте старый добрый телнет:

[user@lappie ~]$ telnet host 22
Trying ip.adr.tld ...
Connected to host  (ip.addr.tld).
Escape character is '^]'.
SSH-2.0-OpenSSH_5.1p1 Debian-5

это удачная попытка. Неудачный должен выглядеть так;

[user@lappie ~]$ telnet host 23
Trying ip.adr.tld ...
telnet: connect to address ip.adr.tld: Connection refused
telnet: Unable to connect to remote host: Connection refused

или с помощью Nmap

[user@lappie ~]$ nmap host

Starting Nmap 5.21 ( http://nmap.org ) at 2010-10-07 11:25 CEST
Nmap scan report for host (ip.adr.tld)
Host is up (0.0052s latency).
rDNS record for ip.adr.tld : host.domain.tld
Not shown: 995 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
111/tcp  open  rpcbind
3000/tcp open  ppp
5666/tcp open  nrpe

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

Это просто:

nc -zw3 domain.tld 22 && echo "opened" || echo "closed"

-w3 это тайм-аут

Используйте NMAP. Пример:

nmap example.com

Вы можете использовать IP-адрес вместо доменного имени. Вот полная документация: http://nmap.org/book/man.html

Для сценария я использую что-то вроде следующего:

nmap example.com -p 22 -sV --version-all -oG - | grep -iq '22/open'

Возвращаемое значение сообщает вам, открыт ли порт!

Из этого StackOverflow ответ:

Похоже, вы ищете сканер портов, такой как nmap или netcat, оба из которых доступны для Windows, Linux и Mac OS X.

Например, проверьте наличие telnet на известном IP:

  nmap -A 192.168.0.5/32 -p 23

Например, поищите открытые порты с 20 по 30 на host.example.com:

  nc -z host.example.com 20-30

nmap example.com -p 22

Telnet будет работать только для служб TCP, поэтому, если вы пытаетесь узнать, работает ли ваш DHCP-сервер (UDP / 68) на удаленном компьютере, это не сработает. Точно так же по умолчанию Nmap сканирует только TCP-порты.

Для портов UDP используйте:

nmap -sU example.com -p 68

Я использовал следующую команду. Она дала то, что я хотел. nmap -A IPAddressOfRemoteSystem -p portNumber пример: nmap -A 192.168.1.87 -p 8080 (или) мы также можем проверить локальные порты

перед этим сначала проверьте, какие порты находятся в режиме открытия / прослушивания, используя следующую команду.

netstat -ntlp | grep LISTEN

после этого

nmap -A localhost -p portNumber

и закройте любой порт, например, если mysql работает на 3306, вы можете остановить его,

sudo service mysql stop

а потом,

nmap -A localhost -p 3306

Надеюсь, это будет полезно.