linux下telnet批量验证某端口开放

本文介绍了如何在Linux环境下使用telnet命令批量验证多个IP地址的特定端口是否开放,包括获取IP库、编写验证脚本及执行过程。提供了一个参考链接,详细解释了操作步骤。

1、ip库

cat iplist.txt
10.1.1.1
10.1.1.2
10.1.1.3
10.1.1.4
10.1.1.5

2、相关脚本

cat telnet.sh 
#!/bin/bash
#--------------------------------------------------
#Author:jimmygong
#Email:jimmygong@taomee.com
#FileName:telnet.sh
#Function: 
#Version:1.0 
#Created:2015-06-25
#--------------------------------------------------
port=57000
function telnetport ()
{
    for i in $(cat iplist.txt)
    do
        echo $i
        echo -e "\n"|telnet $i $port|grep -i "connected"
    done
}
telnetport
exit 0

3、执行

bash telnet.sh > telnet.log 2>&1

参考链接 :

linux下telnet批量验证某端口开放 :

https://blog.51cto.com/u_7938217/1665501

### Linux Telnet 端口无法打开的解决方案 在 Linux 系统中,Telnet 端口无法打开的问题可能由多种原因引起,包括服务未启动、防火墙限制、SELinux 配置不当等。以下是针对该问题的详细分析与解决方法: #### 1. 检查目标服务是否运行 确保目标服务器上的服务已启动并监听在正确的端口上。可以使用以下命令检查服务状态: ```bash systemctl status <service_name> ``` 或者检查端口监听情况: ```bash netstat -tuln | grep <port_number> ``` 如果未发现监听端口,则需要确认服务是否正确安装和启动[^1]。 #### 2. 防火墙规则检查 防火墙可能是导致端口无法访问的主要原因。可以通过以下命令查询特定端口是否已开放: ```bash firewall-cmd --query-port=<port_number>/tcp ``` 如果返回 `no`,则需要添加相应的防火墙规则允许特定端口通信: ```bash firewall-cmd --permanent --add-port=<port_number>/tcp firewall-cmd --reload ``` 再次查询以确认端口开放[^2]。 #### 3. SELinux 配置 SELinux 的安全策略可能限制某些服务的网络访问权限。可以通过以下命令临时禁用 SELinux验证其影响: ```bash setenforce 0 ``` 如果连接恢复正常,说明 SELinux 是问题根源。可以通过修改 SELinux 策略来允许相关服务的网络访问[^3]。 #### 4. 网络连通性测试 在网络环境中,NAT 或路由器配置不当也可能导致端口不可达。确保目标服务器的 IP 地址和端口在客户端能够正确解析,并且没有被中间设备拦截或重定向。可以使用以下命令测试基础网络连通性: ```bash ping <server_ip> traceroute <server_ip> ``` #### 5. 安装并启用相关服务 对于某些系统,可能需要手动安装和启用 Telnet 或其他服务。例如,在 CentOS 系统中,可以安装 `telnet-server` 并启用服务: ```bash yum install telnet-server systemctl enable telnet.socket systemctl start telnet.socket ``` #### 6. 检查云服务提供商的安全组规则 如果服务器部署在云环境中(如阿里云),需要检查安全组规则是否允许外部访问目标端口。可以通过云控制台或 API 添加相应的入站规则[^3]。 --- ### 示例代码:批量检查端口监听状态 以下脚本可用于批量检查多个端口的监听状态: ```bash #!/bin/bash for port in {22..80}; do if netstat -tuln | grep ":$port" > /dev/null; then echo "Port $port is open." else echo "Port $port is closed." fi done ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值