Shell 스 크 립 트 는 서버 보안 상태 검사(사용자,로그 인 IP,방화벽 검사)를 실현 합 니 다.
1.올 바른 시스템 사용자 이름 을/root/liu 에 저장 해 야 합 니 다.shell/local_user.txt 파일 에서 비교 합 니 다!
2.로그 인 IP 에 대해 192.168.1 과 192.168.2 로 시작 하 는 IP 를 정상 IP 로 판단 합 니 다!
3.iptables 상 태 를 판단 합 니 다!
#!/usr/bin/python
#coding=utf-8
import sys,os,re,socket
host=str(socket.gethostname().strip())
fuhao=os.linesep
def user_panduan():
file01=file('/etc/passwd')
mmm=[]
for xx in file01:
mmm.append(re.split(':',xx)[0])
file01.close()
file02=file('/root/liu_shell/new_user.txt','w')
for yy in mmm:
file02.write('%s%s' %(yy,fuhao))
file02.close()
f_local=file('/root/liu_shell/local_user.txt')
f_new=file('/root/liu_shell/new_user.txt')
local_user=[]
new_user=[]
for line1 in f_local:
line1=line1.strip()
local_user.append(line1)
for line2 in f_new:
line2=line2.strip()
new_user.append(line2)
f_local.close()
f_new.close()
if local_user==new_user:
print 'host:%s user ok' %host
else:
cmd="echo 'host:%s user error' |mail -s user_error [email protected] " %host
os.system(cmd)
def ip_panduan():
os.system("last|awk '{print $3}'|grep -v [a-z]|grep -v ^$|sort |uniq >/root/liu_shell/local_ip.txt")
f_ip=file('/root/liu_shell/local_ip.txt')
local_ip=[]
for line in f_ip:
line=line.strip()
local_ip.append(line)
for aa in local_ip:
kk=re.match('192.168.1|192.168.2',aa)
if kk:
print 'host:%s ip ok' %host
else:
cmd="echo 'host:%s ip error' |mail -s ip_error [email protected] " %host
os.system(cmd)
def iptables_panduan():
iptables_status=int(os.popen("/sbin/iptables -nL|grep -v ^$|wc -l").readline().strip())
if iptables_status==6:
cmd="echo 'host:%s iptables not running!' |mail -s iptables [email protected] " %host
os.system(cmd)
else:
print 'host:%s iptable running ok' %host
user_panduan()
ip_panduan()
iptables_panduan()
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Shell alias 명령에 별칭을 설정하는 방법명령에 별명을 설정하면 명령의'작은 이름'으로 삼을 수 있지만, 이렇게 하는 것이 무슨 의미가 있습니까? 이때 별명이 작용할 수 있다.vim 명령의 별명을vi라고 정의하면 이후에 실행된vi 명령은 실제로vim 명령을...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.