现如今云服务器已经是大势所趋,国内比较著名的云服务器厂商有阿里、腾讯,国外有aws,尽管有的公司目前为止还是使用的物理机,但是无论你是使用的云服务器还是物理机,在运行服务时都必不可少的需要监听到指定的端口,而且已经有很多的服务需要监听的端口需要可以通过公网访问,如果想要保证服务正常必须确定端口可以正常访问,例如nginx服务呦,默认的80端口如果在安全组没有开通的话,是一定不能访问的呦。

  接下来,我们就来学习下都有那些命令可以用来确定服务器的端口是否已经成功开通吧。

一、nc命令

  nc命令也经常被用于代替nmap进行端口扫描,当然这只是nc命令功能的冰山一角。

(1)、使用nc命令检查指定服务器的指定端口是否被监听

选项:

-w:超时秒数设置等待连接的时间

-z:使用0输入/输出模式,只在扫描通讯端口时使用

-v:显示指令执行过程

以上测试结果为,已经被监听的80端口使用nc测试后返回succeeded,而未被监听的端口81返回failed

如果要扫描一个范围内的端口,语法如下:

(2)、测试指定端口是否可以正常通讯

  更多时候我们都不是为了测试一个端口是否已经被监听,这大多是黑客要做的事情,我们更多的关心的是一个端口是否正常通讯,例如我们公司使用的音视频服务,音视频服务只要包含两项服务,一项用于拨通音视频另一项用于打通端口隧道,让使用音视频服务的客户可以直接连接,采用这种方式的好处是用户之间可以更快的连接因为不必通过服务器进行转发,不会影响用户体验,这就要求我们在部署音视频服务之前先检查指定端口是否可用,用到的方法如下:

服务器端:

nc -l port

客户端:

nc ip port

  服务器端使用nc命令监听在1234端口上,客户端同样使用nc命令向服务器端发送数据,查看服务器端有没有正常接收到数据。

示例:

客户端

服务端

注释:公网ip不方便透露呦。这样我们就已经接收到了来自客户端的数据信息,那么如何监听在udp相应端口呢?下面就来介绍下哈

nc命令默认情况下是检测/监听tcp协议的,如果我们需要处理udp协议的话,请按照以下操作:

服务器端:

nc -u -l port

客户端:

nc -u ip port

示例:

客户端

服务端

选项

-l:类似于长连接,一直监听在指定port不会断开,可以发送数据信息

-u:指定使用udp协议,nc命令默认情况下是使用tcp协议的

加量环节:

能够实现此功能的其他命令介绍

  当然能够实现上述功能的不光只有nc命令了,我们也可以使用tcpdump命令,下面介绍下tcpdump抓包命令的冰山一角。

服务器端:

tcpdump port 1234

客户端:

nc -u ip port

示例:

客户端

服务端

不好意思呦,公司的公网ip也不方便透露呦,没错使用tcpdump抓包时会抓取到发送信息到服务器的公网ip地址呦,不过其实这个地址没有服务器的公网ip地址重要。

(3)、使用nc命令进行文件传输

  刚知道这个命令的时候我也吓一跳,没想到这个命令可以这么强大,真的是以后遇到文本文件剩的用scp命令了,接下来就来见识下吧。

客户端:

nc ip port > test.txt

服务端:

cat test.txt | nc ip port

注意哟,我们是要将本地文件上传至服务器呦。

我这里就在本地随便找几行数据了,上述所有操作都是先执行服务器端操作,然后执行客户端操作

服务器端

要先创建空文件,在执行客户端操作

这个命令有点妙,客户端执行完成后,服务端自动结束nc命令。快去看看服务器端的文件吧。

出现了,这就是我们想要的。而且有一个现象就是,执行此命令是当客户端断开或执行完成后,服务端也会立即退出,如果不需要退出的话,需要以下参数哦。

选项

-k:控制服务器端不会因为客户端的退出而退出

-n:指定使用ip地址

我好像也就掌握这么多袄,你们都学会了吗?

检测Linux服务器端口是否开通的更多相关文章

  1. Golang检测Linux服务器端口占用

    代码实现 func CheckPort(port int) error { checkStatement := fmt.Sprintf(`netstat -anp | grep -q %d ; ech ...

  2. linux telnet检测与某个端口是否开通

    转自:http://blog.51cto.com/meiling/1982402 一:telnet此法常被用来检测是个远端端口是否通畅. 测试域名: # telnet baidu.com 80 Try ...

  3. [Mongodb] 借mongodb被入侵勒索事件,谈下Linux服务器端口安全问题

    一.缘由: 最近几天Mongodb勒索事件甚嚣尘上:由于对外网开放访问并且没有开启授权机制被删库.远程拖库.勒索.接着又曝出Elasticsearch被勒索事件,缘由一样,Elasticsearch服 ...

  4. linux服务器端口netstat

    netstat命令各个参数说明如下: -t : 指明显示TCP端口 -u : 指明显示UDP端口 -l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的 ...

  5. 使用jconsole检测linux服务器

    在Jboss中运行run.sh的脚本下添加如下信息: #add by step #start JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxre ...

  6. Linux服务器端口access改为trunk all

    1.确认可用网卡及vlan id eth5可用 vlan25:10.118.25.0/24 2.编辑网卡配置文件 vim /etc/sysconfig/network-scripts/ifcfg-et ...

  7. linux服务器性能分析只需1分钟

    背景: 现在的互联网公司,大多数时候应用服务都是部署在linux服务器上,那么当你的服务运行过程中出现了一些响应慢,资源瓶颈等疑似性能问题时,给你60秒,如何快速完成初步检测? 肯定有人会说用工具,公 ...

  8. Linux服务器的弱口令检测及端口扫描

    一.弱口令检测--John the Ripper John the Ripper工具可以帮助我们扫描出系统中密码安全性较低的用户,并将扫描后的结果显示出来. 1.安装John the Ripper: ...

  9. linux 检测服务器端口工具

    #nmp# nmap 127.0.0.1 #netstat# netstat -anlp | grep 22 #telnet# 服务器端口即使处于监听状态,但是防火墙iptables屏蔽了该端口,是无 ...

随机推荐

  1. auto semicolon insertion 自动分号补齐的坑

    今天发现js自动分号补齐的坑,来看如下两段代码: function Hello(){ return { name: ’JavaScript’ }; } alert(Hello()); //输出unde ...

  2. IEdevelopToolbar ie浏览器的css代码调试工具

    使用IEdevelopToolbar的“选择元素”工具(ctrl+b),选取你要内容的地方下方的DIV,我们就可以找到几个关键字

  3. 4. Median of Two Sorted Arrays(Array; Divide-and-Conquer)

    There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of the two ...

  4. ArrayList LinkList比较

    1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构.      2.对于随机访问get和set,ArrayList优于LinkedList,因为ArrayLi ...

  5. CentOS下zabbix监控mysql5.6版本主从

    目录 CentOS下zabbix监控mysql5.6版本主从 1. Zabbix添加自定义监控流程 2. 具体步骤 1. 编写监控mysql主从脚本 2. mysql赋权 3. 查看脚本执行效果 4. ...

  6. JSP标准标签库JSTL

    1.什么是JSTL? JSP标准标签库(JSP Standard Tag Library) 2.JSTL标准标签库中的常用标签 JSTL是JSP页面的标签库,实质上是一段Java代码.我们常用的是它的 ...

  7. VC2008 类型重定义的问题

    Q: 比如"a.h"里定义了类a,类a所有函数的实现都放在"a.cpp"里.然后"b.h"和"c.h"都需要用到类a,所 ...

  8. laravel中的old()函数

    1.控制器 2.模板

  9. 解决 Ubuntu 下 sudo 命令执行速度慢的问题

    1.首先如果当用登录的用户名不在"/etc/sudoers"文件中,是不能执行sudo命令的.可以用root身份手动修该文件,把当前登录用户名加入该文件中. 2.用"ho ...

  10. Ubuntu 配置网卡信息

    关于图形界面的配置,我这里就不多介绍了,这个很简单.这里介绍的是如何通过修改配置文件来实现虚拟网卡. 首先介绍ubuntu(我这里使用的是ubuntu-16.04)下虚拟网卡的配置 1.先用ifcon ...