【问题标题】:Checking open ports using ss [closed]使用 ss 检查打开的端口 [关闭]
【发布时间】:2020-05-16 11:51:26
【问题描述】:

我需要检查 linux tcp :80tcp :443 在指定地址范围 192.168.1.(例如 100-105) 上的开放端口,并打印具有可用主机和端口的端口,我想我已经实现了它使用 nmap,它看起来像这样:

nmap -sT -p 80, 443 192.168.0.-255

但是,我需要使用内置工具,因此我决定使用 ss 命令来执行此操作。 到目前为止我写的看起来像这样:

for i in {0..255}
do
  echo '$i'
  ss -ant '( src 192.168.1.$i or dst 192.168.1.$i ) and ( ( dport = :80 or dport = :443 ) or ( sport = :443 or sport = :80 ) )'
done

但它不起作用,因为 $i 变量放在引号内。我不确定我是否做得对,但这是我迄今为止所做的。(我只是网络的初学者)

【问题讨论】:

  • 试试"双引号而不是'单引号?
  • 是的,成功了!但是我认为它现在只是提出了一个新问题,因为它没有找到任何东西,但使用 nmap 会产生结果

标签: linux bash networking tcp nmap


【解决方案1】:

我现在无法访问 linux shell,但请尝试使用双引号,如下所示:

#!/bin/bash

for i in {0..255}
do
  echo "$i"
  ss -ant "( src 192.168.1.$i or dst 192.168.1.$i ) and ( ( dport = :80 or dport = :443 ) or ( sport = :443 or sport = :80 ) )"
done

【讨论】:

  • 是的,它成功了,但它没有找到任何东西,可能需要更改命令,因为 nmap 产生了一些结果
  • @IvanKoblykif 答案解决了你的问题,你为什么不接受呢?
猜你喜欢
  • 2012-06-09
  • 2011-08-18
  • 2013-07-24
  • 1970-01-01
  • 2015-06-28
  • 2013-01-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多