上周帮一个刚搭完网站的小兄弟排查访问问题,折腾半天发现是端口没开对,他还不知道怎么测端口通不通,折腾了快一下午。其实端口开放测试说难不难,但很多新手刚接触服务器的时候,经常会卡在这里,要么测错方法,要么不知道结果怎么看,白白浪费时间。今天就跟大家唠唠我这些年攒的实用操作小技巧,都是踩过坑踩出来的经验,拿走不谢。

端口开放测试常用的本地工具
最基础也最常用的肯定是系统自带的telnet命令了,Windows和Linux都自带,不用额外装工具,打开命令行直接输 `telnet 你的IP 端口号`,回车之后如果窗口没报错直接黑屏或者跳转到对应服务界面,那就是通了,如果提示连接失败或者超时,那就是没开放。哦对了,Win10以上默认是关了telnet功能的,要去程序和功能里手动开启,别到时候输命令提示不存在,还以为是端口错了,白忙活半天。
除了telnet,还有nmap这个扫描工具,功能比telnet强大很多,不仅能测单个端口,还能扫一段端口范围,直接看出你的服务器哪些端口开放了哪些关闭。不过这里必须提醒一句,新手用的时候别乱扫别人的服务器啊,那是违规违法的,只能扫自己的服务器,这个红线一定不能碰。
怎么用在线工具快速测试
有时候你不在自己电脑旁边,或者不想装乱七八糟的工具,那找个靠谱的在线端口开放测试工具就行,输入你的IP和要测的端口,点一下测试,几秒钟就出结果,非常方便。
不过这里要提一句,在线工具的结果只能当参考,不能全信。因为有些云服务商本身会封陌生在线工具的IP,所以结果显示不通的时候别直接下结论,多换一两个工具试试,或者回头用本地命令再测一遍,才敢确定是不是真的没开放。我之前就碰到过,三个在线工具两个说不通一个说通,最后用本地telnet测才确认是通的,白瞎了我半小时。
测试前要先确认这些基础信息
很多人测出来不对,第一反应就是服务商出问题了,其实百分之八十的情况是自己基础信息没搞对。首先得确认你测的是公网IP还是内网IP,别拿内网IP去测公网访问,那肯定不通啊,这个搞错了测一万次也不对。
然后再去服务器后台看看防火墙规则,有没有放行你要测的端口,不管是系统自带的防火墙还是服务商后台的安全组,都得检查一遍,漏加规则是新手最容易犯的错,我刚入行的时候就因为漏加安全组规则,折腾了整整一个晚上才找到问题。还有就是端口号对不对,别把80写成8080,这种低级错误我年轻时候也犯过,说出来都是泪。
常见测试结果该怎么解读
测试完出了结果,怎么判断问题出在哪呢?我给大家整理几个常见的情况,对应着找就行。如果显示连接超时,大概率是防火墙或者安全组没放行,或者端口根本没被对应的服务监听。如果提示连接被拒绝,那一般是IP地址是对的,但端口没开放,或者对应服务没启动,去检查一下服务状态就行。
还有一种大家常碰到的情况,就是能ping通IP但端口不通,那几乎肯定是防火墙的问题了,顺着这个方向查就行,不用瞎折腾别的地方。哦对了,如果你用的是内网穿透,那还要检查穿透规则对不对,别本地端口和穿透端口对应错了,那测出来肯定不对。
测试时别忽略这些安全问题
刚才我也提了一句,别乱扫别人的服务器端口,那是违规的,哪怕你只是好奇也不行,只测自己的就好。还有就是测试的时候,如果为了测试临时开放了某个端口,测试完记得关掉,别一直开着,尤其是一些常用的高危端口,比如3389、22这些,不用的时候最好关掉,或者限制特定IP才能访问,不然很容易被爬虫扫到,招来不必要的攻击。
另外就是不要随便用不知名的小网站做在线测试,有些工具会记录你输入的IP和端口信息,搞不好就拿去卖了,给你招来一堆垃圾扫描,尽量用知名平台的工具,会稳妥很多。
其实讲来讲去,端口开放测试就是个入门级的基础操作,没什么特别难的地方,就是新手容易踩一些常识性的坑,只要把步骤理清楚,顺着一个个排查,很快就能找到问题。希望这些小技巧能帮到刚入门的朋友,少踩点我当年踩过的坑,省点时间多做点正事。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!