用Shell写DEAMON后台来控制安全

矿山施工设备2020年06月19日

如何做一个后台DEAMON来控制安全访问?这就是贯穿这篇文章的中心概念。

我的控制访问比较特殊,考虑到远程登陆点并非固定,所以无法设定固定IP通过SSH登陆服务器。这样N多IP会通过黑客软件试图破解您的用户名和密码(基本都是穷举,不怕一万只怕万一,因此我写了这个后台脚本)。

安全:利用/etc/ny、/etc/low来做tcp wrapper控制访问,配合iptables作进一步过滤。

crontab最短执行周期是每隔1分钟执行一次,而以下这段代码的最短执行周期可以自定义(最短1秒)

脚本名:sshd_monitor

#!/bin/sh

while true

#使用while true来做循环,这样当脚本后台执行的时候总是会根据sleep时间的长短来执行任务

do

cat /var/log/secure* |awk '{if($6=="Invalid")print $10}' |sed 's/::ffff://g' |sort -n |uniq -c |awk '{if($1=5)print $2}' /root/lawless_ip

#在secure日志中,获取登陆失败大于5次的ip并输入到lawless_ip文件中

row=`cat /root/lawless_ip|wc -l`

#记录lawless_ip文件中的ip记录条数

a=0

for z in `seq 1 $row`

#从第一个ip开始写规则到lawless_ip_deny这个临时文件中,起结果会类似 ALL:123.123.123.123 ..........

do

a=$[$a+1]

row_ip=`cat /root/lawless_ip |sed -n -e ""$a"p"`

echo -e "ALL:$row_ip" /root/lawless_ip_deny

done

cat /root/lawless_ip_deny /etc/ny

#然后将lawless_ip_deny文件中的内容写入到ny。

rm /root/lawless_ip_deny

#删除该临时文件

sleep 10

#每隔10秒执行while操作

done

为防止自己登陆失败超过5次被禁止,需要在/etc/low中加入自己本机或许可某个IP总是能够登陆的匹配规则如: ALL:192.168这次的营销就会有戏了。邮件群发最大的好处是可以展示图片.10.12。记住,一般allow的优先级总比deny高。此外,在/etc/cal加句sh /dir/sshd_monitor ,保证每次启动服务器时都能后台运行该脚本你和我在夜深人静的时候。

以上方法只是抛砖引玉,这样的deamon可以写成监控ftp、http、进程等各种需求,相当实用。

产后可以做哪些瘦身运动
用醋治疗灰指甲的偏方
专家说
相关阅读
60岁的年龄,20岁的身材,这6位越老越帅气的男明星,太专一了

近几年,网络上涌现了一个名词——中所年有种男。 一般所指中所年男人长...

2023-10-18
称重传感器616-300KG 兹迪亚 tedea

我是【广州南创★现代科技】美国特里奥616-300KG于数激光关系企业的李工 美...

2023-10-03
“健康小屋”安家店面社区,岛城居民可以就近自助查体

名记者 台雪超 在面包店、活动中心新设“身心健康房子”,不便邻近地区随...

2023-10-01
蔚来与极地未来合作开发 COP15青年生物多样性科学探索

5同月22日,第22个亚太地区生命体多元性日在即,蔚来宣布与极地下一代就Cl...

2023-09-30
光明大力锻造一支能力格局与科学城建设相匹配的生态村干部队伍

缺少:圣者融媒 6年末11日,圣者区里2022年小区里领导班子常委后备英才征选...

2023-09-29
吉利成立深圳易易互联公司,经营范围含新能源开发设计

信息应用边角料获悉深圳易易点对点信息应用香港)有限一些公司日前成立,...

2023-09-27
友情链接