本文共 1488 字,大约阅读时间需要 4 分钟。
shell版本
#!/bin/bashfor i in cat /home/haoren/iplist20171214.txt
do
(sleep 1;)|telnet $i 80 2>&1 |grep "Connected to $ip$i">/dev/null 2>&1if [ $? == 0 ]
then echo "$i 开放了 80端口" else echo "$i 未开放 80 端口" fi
(sleep 1;)|telnet $i 8080 2>&1 |grep "Connected to $ip$i">/dev/null 2>&1
if [ $? == 0 ]
then echo "$i 开放了8080端口" else echo "$i 未开放8080 端口" fi
(sleep 1;)|telnet $i 443 2>&1 |grep "Connected to $ip$i">/dev/null 2>&1
if [ $? == 0 ]
then echo "$i 开放了443端口" else echo "$i 未开放443端口" fi
#nmap -sS $i -p 80 >>/root/saomiaojieguo-nmap.txt
#nmap -sS $i -p 8080 >>/root/saomiaojieguo-nmap.txt #nmap -sS $i -p 443 >>/root/saomiaojieguo-nmap.txtnc -zv $i 80 >>/root/saomiaojieguo-nc.txt
nc -zv $i 8080 >>/root/saomiaojieguo-nc.txt nc -zv $i 443 >>/root/saomiaojieguo-nc.txtdone
python 版本 #!/usr/bin/env python #--coding:utf-8--import os, sys, re,string
import time, tarfile,getopt import socketcommon_port = [80 ,8080,443]
def check_port(ip):
for port in common_port: s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.settimeout(1) try: result = s.connect_ex((ip, port)) except: s.close() return False if result == 0: print "IP:" + ip + ' Port:' + str(port) + '\n' s.close()filename='/home/haoren/iplist20171214.txt'
a_file = open(filename, 'r')for a_line in a_file.readlines():
print a_line.strip() ip = a_line.strip() check_port(ip)