python脚本简单检测ip合法性并添加到白名单文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python脚本简单检测ip合法性并添加到白名单文件相关的知识,希望对你有一定的参考价值。

一、功能说明

       有时候项目需要通过ip地址来判定是否允许访问,通常通过一个白名单地址文件来存放这些允许放行的ip,但每次打开文件编辑比较麻烦,容易出错,也不知道是否添加过,故用python写了一个自动添加白名单的脚本。


二、脚本内容

#!/usr/bin/env python
#coding:utf-8
#2017-06-09 ver:1.0
import sys
white_list="white_list.txt"
add_ip=sys.argv[1].strip()
checkIp=add_ip.split(‘.‘)
if len(checkIp)!= 4:
  print("ip[长度]不合法.程序退出!")
  sys.exit(5)
elif not checkIp[0].isdigit() or not  checkIp[1].isdigit() or not  checkIp[2].isdigit() or not  checkIp[3].isdigit():
  print("ip[不是数字]不合法.程序退出!")
  sys.exit(5)
elif int(checkIp[0]) >= 254 or int(checkIp[1]) > 255 or int(checkIp[2]) >255  or int(checkIp[3]) >255:
  print("ip[数字范围]不合法.程序退出!")
  sys.exit(5)

new_ip = str(add_ip + "\n")
f=open(white_list,‘r‘)
IPS=f.readlines()
if new_ip in IPS:
  print "The add ip %s is in white list." % new_ip.split()
else:
  fw=open(white_list,‘a+‘)
  fw.write(new_ip)
  print "The add ip %s add in white list OK~" % new_ip.split()
  fw.close()


三、执行结果

$ ./add_white.py 192.168.1.256
ip[数字范围]不合法.程序退出!
$ ./add_white.py 256.0.0..
ip[长度]不合法.程序退出!
$ ./add_white.py afdafda
ip[长度]不合法.程序退出!
$ ./add_white.py a.a.a.a
ip[不是数字]不合法.程序退出!
$ ./add_white.py 192.1.1
ip[长度]不合法.程序退出!
$ ./add_white.py 192.168.1.2
The add ip [‘192.168.1.2‘] add in white list OK~
]$ ./add_white.py 192.168.1.2
The add ip [‘192.168.1.2‘] is in white list.

写的比较简单,有不当之处欢迎指正交流~

本文出自 “學地止境” 博客,请务必保留此出处http://dyc2005.blog.51cto.com/270872/1943298

以上是关于python脚本简单检测ip合法性并添加到白名单文件的主要内容,如果未能解决你的问题,请参考以下文章

“阿里云”ECS服务器怎么设置IP白名单?

shell脚本检测IP地址

Linux防火墙iptables限制几个特定ip才能访问服务器?

mysql图形界面navicat的连接

解决Antimalware Service Executable占用CPU的问题

检查SMTP地址是否被检测网站列入黑名单