现如今云服务器已经是大势所趋,国内比较著名的云服务器厂商有阿里、腾讯,国外有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. HttpClient 4 和 HttpClient 3 超时

    HttpClient 4: 连接超时: httpclient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT,6000 ...

  2. oracle存储过程-获取错误信息

    dbms_output.put_line('code:' || sqlcode); dbms_output.put_line('errm:' || sqlerrm); dbms_output.put_ ...

  3. Linux跑火车,提升趣味性

     實現跑火車[可陶冶情操,愉悦心情]##下载yum源[root@localhost ~]# wget http://mirror.centos.org/centos/7/extras/x86_64/P ...

  4. php单点登陆简单实现 (iframe方式)

    有四个网站分别为: www.a.com www.b.com www.c.com www.sso.com 需求是如果我们在sso登陆后,其他网站也会显示登陆中,不需要重复登陆,退出时,其他网站也会失效. ...

  5. Spring框架整合WEB解决配置文件加载多次的问题

    1. 创建JavaWEB项目,引入Spring的开发包.编写具体的类和方法. * 环境搭建好后,启动服务器来测试项目,发送每访问一次都会加载一次配置文件,这样效率会非常非常慢!! 2. 解决上面的问题 ...

  6. wm_concat函数

    wm_concat函数   wm_concat函数 一般分类 — 作者 zzy020128 @ 12:21 首先让我们来看看这个神奇的函数wm_concat(列名),该函数可以把列值以",& ...

  7. Stripies

    /* Our chemical biologists have invented a new very useful form of life called stripies (in fact, th ...

  8. [SoapUI] 在执行某个TestSuite之前先执行login或者其他什么前置步骤

    打开TestSuite有一个地方可以设置Setup Script import com.eviware.soapui.model.support.PropertiesMap log.info &quo ...

  9. Spring Boot集成Quartz注入Spring管理的类

    摘要: 在Spring Boot中使用Quartz时,在JOB中一般需要引用Spring管理的Bean,通过定义Job Factory实现自动注入. Spring有自己的Schedule定时任务,在S ...

  10. 外网不能访问阿里云服务器的apache服务

    今天弄了下Ubuntu的服务器,配置了一个LAMP环境的服务器,配置有时间我再来说 但是配置了很长的时间,差不都怕是好几个小时 在配置apache的时候,出现了问题,好不容易把apache服务配置好 ...