不使用任何外部程序,仅使用 bash 语言,是否可以在远程主机上执行端口扫描?
在浏览了 bash 的内置函数后,我会说:不。但也许有一些解决方法或其他可能的命令可以执行,而这些命令不在 bash 内置命令中。
您可以使用 Bash 的 TCP 连接支持来检查开放端口:
if 2>/dev/null >"/dev/tcp/${IP}/${PORT}"; then echo open; fi
Run Code Online (Sandbox Code Playgroud)
将检查是否可以打开到端口${PORT}上的连接${IP}。
测试本身是通过尝试重定向到/dev/tcp/${IP}/${PORT}; 当目标端口不可访问时,将标准错误重定向到/dev/null( 2>/dev/null) 会隐藏导致的错误消息。
这可用于循环扫描所有端口。
| 归档时间: |
|
| 查看次数: |
219 次 |
| 最近记录: |