windows、Linux 测试服务器、电脑的某些个端口是否打开

测试远程端口是否开放包括两种方法:

一、 命令行的形式

二、代码

一、命令行的形式

两个命令:telnet、nc(netcat)
两种网络层协议:TCP、UDP

windows有telnet,只是默认没启动

windows10 配置telnet: http://www.xitongcheng.com/jiaocheng/win10_article_37554.html
windows7/8 server2008 配置telnet: https://jingyan.baidu.com/article/ae97a646b22fb6bbfd461d19.html

windows安装nc: https://blog.csdn.net/qq_37585545/article/details/82250984
下载:https://eternallybored.org/misc/netcat/

下载后,将nc的路径添加到环境变量Path中

centos/redhat 配置 telnet: sudo yum install telnet
ubuntu 配置 telnet: sudo apt install telnet

通常的Linux发行版中都带有NetCat(简称nc)
NetCat 官方地址:http://netcat.sourceforge.net/
centos/redhat 配置 nc: sudo yum install nc
ubuntu 配置 nc: sudo apt install nc

telnet的用法:

telnet只能测试TCP
telnet SERVER_IP port
example:
telnet localhost 80

nc的用法:

nc测试TCP:
nc -z SERVER_IP port
example:
nc -z 192.192.193.211 22

nc测试UDP
nc -uz SERVER_IP port
example:
nc -uz 192.192.193.211 22

二、代码

python代码:

import socket

'''
这是多行注释,用三个单引号
该程序的功能是测试远程端口是否开放
python判断远程端口是否打开的方法
ssh默认端口  22
Windows远程登陆默认端口  3389
Oracle默认端口  1521
MySQL默认端口  3306
sqlserver默认端口  1433
'''

sk = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sk.settimeout(1)
try:
  sk.connect(('192.192.193.211',8080))
  print('Server port 8080 OK!')
except Exception:
  print('Server port 8080 not connect!')
sk.close()

猜你喜欢

转载自www.cnblogs.com/zhangchao0515/p/10917369.html