linux 测试端口是否开启

测试端口是否开启

前言:

        端口不是独立存在的,它必须依附于进程(抽象想想的话,其实端口默认是关闭的,只有当程序与之连接,它便开启),进程开启,相应的端口自然也就开启了,进程关闭,端口自然也就关闭了! 


查询篇:

netstat 

        -a        所有

        -n        以数字的形式显示地址

        -p        pid/程序名

        -t        TCP协议

        -u        UDP协议


# netstat -anptu 

# 查询系统所有开启的端口,包括TCP/UDP协议端口


当然系统中有一个文件专门用于存储系统程序的端口号 “ /etc/services




检测篇:


方法一


使用远程工具检测

1.远程连接工具:如 xshellputty等(远程连接用到的协议有:ssh,telnet)

 

ssh         主要是用于连接自己的主机(做实验时,为了观察方便,或者自己的主机是yun主机等)

telnet    则用来连接“需要测试准备的端口

 

2.使用nc命令  需要安装一个nc安装包


##使用nc命令主要是模拟一个程序端口


 直接使用yum安装

 

#yum -y install nc

 

准备连接


wKiom1aopOiQBjdmAAAz04TvtJc889.png


使用nc 添加需要检测端口

 

nc

    -l  指定要检测端口

    -u  使用UDP协议代替默认的TCP协议

   

 

# nc -l 800


wKiom1aopOmiys_8AABdLwA4Myg731.png




方法二


使用专业的网络扫描工具


nmap

      -sT    TCP        连接扫描

        -sU    udp         UDP扫描

        -sn    icmp        Ping扫描

        -PE    icmp输出(配合-sn 一起用,例: nmap -sn -PE 123.58.249.0/24)

      -P0                跳过ping检测

        -O                 指定扫描的主机,可以是本机(使用 "localhost"  代表本机)

        -n                 禁用反向解析

        -p                 指定端口号


使用实例:

nmap -n -sP 192.168.4.61


第一步:

        使用nc 模拟出一个端口被占用(开启端口)


wKiom1aq_UXSo0LtAAAoVB3J2Pw047.png


第二步:

        扫描该端口

红色框里是 " open "  状态表示 此端口开启, " closed " 则为关闭状态;


wKiom1aq_UbDKjC0AACYv4a--F8219.png








發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章