Tcp wrapper应用与普通用户的提权设置

1、编写一个脚本,实现每5分钟检查一次,如果发现通过ssh登录失败次数超过10次,自动将此远程IP放入Tcp Wrapper的黑名单中予以禁止防问。

代码:

[root@wjl ~]# vim /scripts/test/loginck.sh
#!/bin/bash
#
ip_list()
{
    #取出所有通过ssh远程登录系统的IP
	cat /var/log/secure | grep "Failed password" | grep -o "\([[:digit:]]\+\.\)\{3\}[[:digit:]]\+"   
}

for login_ip in $(ip_list | sort -u);    #sort -u 将列表中的重复IP去除,相当于uniq命令
do
	if [ $(ip_list | sort -nr | uniq -c | grep $login_ip | awk '{print $1}') -gt 10 ];
	then
		echo "sshd:$login_ip" >> /etc/hosts.deny
		echo "Warning:$login_ip is illegal ip,remote connection is denied"
	else
		echo "$login_ip: legal ip!"
		continue
	fi
done 

制定计划任务:(每5分钟检查一次)

[root@wjl ~]# crontab -e
*/5 * * * * /bin/bash /scripts/test/loginck.sh

执行脚本结果:

[root@wjl ~]# bash /scripts/test/loginck.sh
192.168.10.1: legal ip
Warning:192.168.10.20 is illegal ip,remote connection is denied

[root@wjl ~]# cat /var/log/secure | grep "Failed password" | grep -o "\([[:digit:]]\+\.\)\{3\}[[:digit:]]\+" | sort -nr | uniq -c
3	192.168.10.1
12 	192.168.10.20	#此ip登录次数为12次

 注:(1)sort -u    #取出重复的行,相当于uniq命令

        (2)/etc/hosts.deny 文件中记录了本机上支持libwrap库且基于tcp协议的部分禁止被访问的服务。(Tcp Wrapper服务程序所依赖的拒绝服务的配置文件)

        (3)大多数情况下/var/log/secure 文件中记录了登录系统的远程IP的所有行为,无论密码输入正确还是失败均会被记录在此文件中。若文件过大,则说明有人通过暴力破解的方式登录该系统。

2、配置magedu用户的sudo权限,允许magedu用户拥有root权限

      visudo是编辑/etc/sudoers文件的命令行工具,其具有如下特性:

     (1)锁定文件,避免多人同时编辑sudoers文件;

     (2)检查文件中语法的完整性;

     (3)检查解析错误,避免错误输入。

[root@wjl ~]# visudo    #用于直接编辑/etc/sudoers文件的命令
...
98 root ALL=(ALL) ALL

#大概在99行的位置添加如下内容
99 magedu ALL=(ALL) ALL
...

格式:用户 主机=(用户身份) 命令

          用户:要设定权限的用户

          主机:指定用户在哪台主机上被设定了权限(指定主机时可以是主机名或主机IP)

          用户身份:指定用户在哪个主机上要以谁的身份去运行命令

          命令:设定用户可以执行的命令

权限设置验证:

[root@wjl ~]# su - magedu 
[magede@wjl ~]# sudo cat /etc/shadows    #普通用户要运行root用户权限时,需要加sudo才能运行
...
postfix:!!:18230::::::
sshd:!!:18230::::::
tcpdump:!!:18230::::::
magedu:!!:18504:0:99999:7:::

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值