Shell脚本实现检查服务器安全状态(用户、登录IP、防火墙检查)


说明:大家平时对Linux服务器安全主要是对系统用户的检查,登陆服务器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 331095659@qq.com " %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 331095659@qq.com " %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 331095659@qq.com " %host

        os.system(cmd)

    else:

        print 'host:%s iptable running ok' %host

user_panduan()

ip_panduan()

iptables_panduan()

一个强大的网络分析shell脚本分享(实时流量、连接统计)
介绍一个强大的分析网络的shell脚本,此脚本是从EZHTTP拆分出来的,觉得有必要单独介绍下。脚本运行效果截图:此脚本包含的功能有:1、实时监控任

实现释放CentOS系统内存的Shell脚本分享
这几天发现CentOS系统内存一直涨,即使把apache和mysql关闭了,内存也不释放,可以使用以下脚本来释放内存:脚本内容:#!/bin/bash#cache释放:#Tofreepagecache

Shell脚本实现检测某ip网络畅通情况(含短信报警功能)
花了1天的时间写了一个检测某ip是否网络畅通的脚本,只检测网络是否畅通的功能很容易实现,但加了一些限制功能却不好实现。#!/bin/bash##################