英文原文链接:https://www.cyberciti.biz/faq/unix-linux-check-if-port-is-in-use-command/

Question 1: 怎样在linux或者类Unix系统上确定端口(port)是否在使用中?

Question 2: 怎么在linux服务器上验证某个端口(port)正在监听中?

  确定那个端口正在监听服务器的网络接口是很重要的。你需要花费精力打开端口检查是否被入侵(intrusion)。除了端口入侵外,即使出于解决问题的目的,检查某个端口是否被你服务器上的另一个app使用可能也是必要的。例如你在统一太服务器上安装完Appache和Nginx后,知道Appache和Naginx是否正在使用TCP端口80/443是很有必有的。接下来的快速指南将通过分别用netstat、nmap和lsof指令去检查端口是否正在被使用,然后查某个Appp是否正在使用这个端口。

step1、打开终端

step2、运行任一指令
    sudo lsof -i -P -n | grep LISTEN
    sudo netstat -tulpn | grep LISTEN
    sudo nmap -sTU -O IP-address-Here

<1> lsof

[root@localhost ~]# lsof -i -P -n | grep LISTEN
sshd root 3u IPv4 0t0 TCP *: (LISTEN)
sshd root 4u IPv6 0t0 TCP *: (LISTEN)
dnsmasq nobody 7u IPv4 0t0 TCP 192.168.122.1: (LISTEN)
dnsmasq nobody 12u IPv6 0t0 TCP [fe80:::ff:fef2:4af0]: (LISTEN)
dnsmasq nobody 7u IPv4 0t0 TCP 192.168.123.1: (LISTEN)
cupsd root 10u IPv6 0t0 TCP [::]: (LISTEN)
cupsd root 11u IPv4 0t0 TCP 127.0.0.1: (LISTEN)
smbd root 31u IPv6 0t0 TCP *: (LISTEN)
smbd root 32u IPv6 0t0 TCP *: (LISTEN)
smbd root 33u IPv4 0t0 TCP *: (LISTEN)
smbd root 34u IPv4 0t0 TCP *: (LISTEN)

说明:

  • dnsmasq 应用程序名字.
  • 192.168.123.1  dnsmasq 监听端口绑定的IP地址
  • 53  监听的端口号
  • 718  dnsmasq进程号

<2> netstat

[root@localhost ~]# netstat -tulpn | grep LISTEN
tcp 0.0.0.0: 0.0.0.0:* LISTEN /smbd
tcp 0.0.0.0: 0.0.0.0:* LISTEN /smbd
tcp 192.168.123.1: 0.0.0.0:* LISTEN /dnsmasq
tcp 192.168.122.1: 0.0.0.0:* LISTEN /dnsmasq
tcp 0.0.0.0: 0.0.0.0:* LISTEN /sshd
tcp 127.0.0.1: 0.0.0.0:* LISTEN /cupsd
tcp6 ::: :::* LISTEN /smbd
tcp6 ::: :::* LISTEN /smbd
tcp6 fe80:::ff:fef2:: :::* LISTEN /dnsmasq
tcp6 ::: :::* LISTEN /sshd
tcp6 ::: :::* LISTEN /cupsd

<3> nmap 使用方法:

$ sudo nmap -sT -O localhost
$ sudo nmap -sU -O 192.168.2.13 ##[ list open UDP ports ]##
$ sudo nmap -sT -O 192.168.2.13 ##[ list open TCP ports ]##

[root@localhost ~]# nmap -sT -O localhost

Starting Nmap 6.47 ( http://nmap.org ) at 2017-01-12 13:21 CST
Nmap scan report for localhost (127.0.0.1)
Host is up (.000048s latency).
rDNS record for 127.0.0.1: localhost.localdomain
Not shown: closed ports
PORT STATE SERVICE
/tcp open ssh
/tcp open netbios-ssn
/tcp open microsoft-ds
/tcp open ipp
Device type: general purpose
Running: Linux .X
OS CPE: cpe:/o:linux:linux_kernel:
OS details: Linux 3.7 - 3.15
Network Distance: hops OS detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: IP address ( host up) scanned in 1.53 seconds

You can combine TCP/UDP scan in a single command:

同时也可在一条指令中添加TCP/UDP扫描
    $ sudo nmap -sTU -O 192.168.2.13

windows 用户建议:
     netstat -bano | more
    netstat -bano | grep LISTENING
    netstat -bano | findstr /R /C:"[LISTEING]"

怎样在linux或者Unix上检查端口是否在使用的更多相关文章

  1. Linux或UNIX系统配置检查

    1. Linux或UNIX系统配置检查 系统配置的扫描是基于被动式策略进行扫描,主要检测主机上是否存在配置错误或者不符合预定义的安全策略的配置,通常需要管理员权限才能执行的扫描. 在Linux或UNI ...

  2. Linux或Windows上实现端口映射

    通常服务器会有许多块网卡,因此也可能会连接到不同的网络,在隔离的网络中,某些服务可能会需要进行通信,此时服务器经过配置就可以承担起了转发数据包的功能. 一.Windows下实现端口映射 1. 查询端口 ...

  3. Linux 或 Windows 上实现端口映射

    点击上方"开源Linux",选择"设为星标" 回复"学习"获取独家整理的学习资料! 通常服务器会有许多块网卡,因此也可能会连接到不同的网络, ...

  4. Linux查询版本、查询端口

    lsb_release -a 查看当前Linux系统版本 netstat 检查端口 netstat 是一个命令行工具,可以提供有关网络连接的信息.要列出正在侦听的所有 TCP 或 UDP 端口,包括使 ...

  5. Linux和UNIX监控

    Linux和UNIX上的数据库监控工具包括监控CPU.内存.磁盘.网络.安全性和用户的监控工具.下面罗列了我们找到的有用工具及其简单描述. ps           显示系统上运行的进程列表 top ...

  6. 在 CentOS 7.3 上安装 nginx 服务为例,说明在 Linux 实例中如何检查 TCP 80 端口是否正常工作

    CentOS 7.3 这部分以在 CentOS 7.3 上安装 nginx 服务为例,说明在 Linux 实例中如何检查 TCP 80 端口是否正常工作. 登录 ECS 管理控制台,确认实例所在安全组 ...

  7. (转)推荐一个在Linux/Unix上架设ASP.NET的 WEB服务器--Jexus

    在Linux/Unix上架设ASP.NET WEB服务器,有两个可选方式,一种是Mono+XSP,一种是Mono+Jexus,其它的方式,比如 Apache+mod_mono.Nginx+FastCg ...

  8. Linux/UNIX 上安装 MySQL

    Linux/UNIX 上安装 MySQL Linux平台上推荐使用RPM包来安装Mysql,MySQL AB提供了以下RPM包的下载地址: MySQL - MySQL服务器.你需要该选项,除非你只想连 ...

  9. 对Linux(Unix)的基础知识归纳

    前言,不论是原生APP(Android&IOS),还是大型架构级基础环境(.NET&J2EE,或LAMP阵营等), 基本都不可避免的涉及到Linux(Unix),故还是觉得有必要把自己 ...

随机推荐

  1. 探秘IntelliJ IDEA 13测试版新功能——调试器显示本地变量

    IntelliJ IDEA在业界被公认为最好的Java开发平台之一,JetBrains公司将在12月正式发布IntelliJ IDEA 13版本. 现在,小编将和大家一起探秘密IntelliJ IDE ...

  2. 智能的API、云服务和SOA测试解决方案——Parasoft SOAtest

    依赖Parasoft测试解决方案的机构,不仅有小企业,政府机构,还有世界500强集团.Parasoft公司推出的Parasoft SOAtest,提供了API.云服务和SOA最全面的测试解决方案.此次 ...

  3. jQueryRotate 转盘抽奖代码实现

    代码如下: 例子兼容IE6,7,8 以及高版本浏览器,如有bug请回复! 1.html结构 <!doctype html> <html lang="en"> ...

  4. Python装饰器学习

    Python装饰器学习(九步入门)   这是在Python学习小组上介绍的内容,现学现卖.多练习是好的学习方式. 第一步:最简单的函数,准备附加额外功能 ? 1 2 3 4 5 6 7 8 # -*- ...

  5. 用RequireJS优化Wijmo Web页面

    用RequireJS优化Wijmo Web页面 上周Wijmo 2014 V2版本刚刚发布(下载地址),  有网友下载后发现仅仅使用了40个Widgets的一小部分,还需要加载全部的jquery.wi ...

  6. String的使用

    String的常用方法 方法 说明 Anchor() 创建html锚 Concat() 把字符串连接起来 indexOf() 查找字符出现的位置 lastIndexOf() 查找最后出现字符 char ...

  7. MVC之前的那点事儿系列进入CLR

    MVC之前的那点事儿系列(1):进入CLR MVC之前的那点事儿系列,是笔者在2012年初阅读MVC3源码的时候整理的,主要讲述的是从HTTP请求道进入MVCHandler之前的内容,包括了原创,翻译 ...

  8. valuechange(动态的监听input,textarea)

    valuechange(动态的监听input,textarea)之前值,之后值的变化 jQuery封装自定义事件--valuechange(动态的监听input,textarea)之前值,之后值的变化 ...

  9. Bootstrap 模态框(也可以说的弹出层)

    最近在尝试使用bootstrap的模态框 使用模态框主要要引入一下几个js和css: bootstrap.css jquery.1.9.1.js(这个可以灵活选择) bootstrap.js html ...

  10. C#外挂QQ

    C#外挂QQ找茬辅助源码,早期开发   这是一款几年前开发的工具,当年作为一民IT纯屌,为了当年自己心目中的一位女神熬夜开发完成.女神使用后找茬等级瞬间从眼明手快升级为三只眼...每次看到这个就会想起 ...