英文原文链接: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. Buildroot阅读笔记

    之前有写一篇文章:http://www.cnblogs.com/tfanalysis/p/3625430.html理清如何make menuconfig的问题,现在今天在无意间多注意了一下buildr ...

  2. 水晶报表在vs2010 WPF环境下的尝试

    原文:水晶报表在vs2010 WPF环境下的尝试 由于VS2010没有集成水晶报表组件,尝试前必须先安装 水晶报表 for VS2010,若机器未安装的可点击这里>>>下载安装 新建 ...

  3. 使用Windows2003创建DNS服务器 - 进阶者系列 - 学习者系列文章

    Windows 2003的DNS服务器的配置还是比较简单的.下面简要介绍下DNS服务器的配置. 1.    打开控制面板,选择 添加删除Windows组件,选择 网络服务 ,选择 详细信息,选择 域名 ...

  4. CQRS架构如何实现高性能

    CQRS架构如何实现高性能 CQRS架构简介 前不久,看到博客园一位园友写了一篇文章,其中的观点是,要想高性能,需要尽量:避开网络开销(IO),避开海量数据,避开资源争夺.对于这3点,我觉得很有道理. ...

  5. ubuntu下的词典的安装

    因为从事开发,安装一个词典是很有必要,文中介绍安装openyoudao和stardic两个软件的方法 一.openyoudao的安装 因为是由window转来学ubuntu的,所以总是想安装和wind ...

  6. Windows Azure

    Windows Azure初体验 目前在IT界,云这个概念的第一意思不再是词典里的解释了.不过它们还是有相同点的——也许确实会酝酿出一块大蛋糕,可也是飘在天上,众神分食之,与我等P民无关.所谓云,不过 ...

  7. php-fpm介绍及配置

    php-fpm是什么 全称是php fastcgi process manager即php fastcgi进程管理器,相比fastcgi静态的唤起cgi,fpm能根据访问的压力动态的唤起cgi进程和销 ...

  8. Asp.Net MVC5入门学习

    添加一个Controller(控制器) 因为我们用的是Asp.Net MVC,MVC最终还是一套框架,所以我们还是需要遵循它才能玩下去,或者说是更好的利用来便于我们的开发,要是对MVC概念还有点模糊的 ...

  9. Python Learing(二):Basic Image Processing 1

    <写在前面> Basic image processing 1: 0.(以简单的曲线图为例)对于生成的图自定义外观,使用子图,多个数据集,标题,标签,交互式标注,图例: 1.生成散点图,直 ...

  10. 够快网盘支持与iOS-ASIHTTPRequest框架学习

    够快网盘支持与iOS-ASIHTTPRequest框架学习 前段时间在公司的产品中支持了够快网盘,用于云盘存储. 在这个过程中,学习到了很多新的知识,也遇到了很多问题,在此记录一下. 首先就够快的AP ...