......ssh服务、sudo
1、编写脚本/root/bin/checkip.sh,每5分钟检查一次,如果发现通过ssh登录失败 次数超过10次,自动将此远程IP放入Tcp Wrapper的黑名单中予以禁止防问
方法一:与前一篇文章的第一题相似
# 筛选出ssh登陆失败的ip名单
lastb | awk '/ssh:notty/{ip[$3]++}END{for(i in ip)print i,ip[i]}' >> /data/sshfailedip.txt
# 编写脚本
vim /root/bin/checkip.sh
while read ip times;do
if [ $times -gt 10 ];then
echo sshd: $ip >> /etc/hosts.deny
echo $ip in Blacklist >> /data/blacklist.txt
fi
done < sshfailedip.txt
# 授予执行权限
chmod +x /root/bin/checkip.sh
# 创建计划任务
crontab -e
*/5 * * * * /root/bin/checkip.sh
方法二:利用awk中的system(“cmd”)函数调用命令
lastb | awk '/ssh:notty/{ip[$3]++}END{for(i in ip){if(ip[i]>10){system("echo sshd: "i">> /etc/hosts.deny")}}}'
2、配置magedu用户的sudo权限,允许magedu用户拥有root权限
visudo # 使用该方法会进行语法检查
## Next comes the main part: which users can run what software on
## which machines (the sudoers file can be shared between multiple
## systems).
## Syntax:
##
## user MACHINE=COMMANDS
##
## The COMMANDS section may have other options added to it.
##
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
magedu ALL=(root) ALL # 在此行添加,(root)可不添加
本文介绍了一种自动化的安全策略,通过每5分钟检查SSH登录失败次数,一旦超过10次,将远程IP加入黑名单以防止进一步访问。同时,详细讲解了如何配置magedu用户sudo权限,使其具备root权限。
4065

被折叠的 条评论
为什么被折叠?



