请编写一个Python端口扫描工具。
时间: 2023-03-19 22:21:32 浏览: 119
当然可以,以下是一个简单的Python端口扫描工具示例:
```python
import socket
# 定义扫描的主机和端口范围
target_host = "localhost"
target_ports = range(1, 100)
# 创建socket对象
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 设置连接超时时间
client_socket.settimeout(0.1)
# 循环扫描目标主机的端口
for target_port in target_ports:
try:
# 尝试连接目标主机的当前端口
client_socket.connect((target_host, target_port))
print("端口 {} 开放".format(target_port))
except:
# 连接失败表示端口关闭或目标主机不可达
print("端口 {} 关闭".format(target_port))
# 关闭socket连接
client_socket.close()
```
这个工具会扫描 `localhost` 的 1 到 100 端口,并输出每个端口的开放或关闭状态。你可以根据需要修改 `target_host` 和 `target_ports` 变量来扫描其他主机或端口。请注意,端口扫描可能会触发安全警报,因此请确保你有合适的授权和权限来运行此工具。
阅读全文