码迷,mamicode.com
首页 > 其他好文 > 详细

记录下防御SSH爆破攻击的经验(CentOS7.3)

时间:2017-11-17 21:10:14      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:blog   管理员   local   inux   add-port   host   centos   建立   star   

一、安装denyhosts

1.安装denyhosts

1 yum install -y denyhosts

2.配置(yum安装时,大部分配置已写好,稍作改动即可)

1 DENY_THRESHOLD_INVALID = 5 #无效用户名限制登陆次数
2 DENY_THRESHOLD_VALID = 10 #有效用户名限制登陆次数
3 DENY_THRESHOLD_ROOT = 5 #root限制登陆次数
4 AGE_RESET_ROOT = 1d  #root用户登录失败计数归零的时间
5 ADMIN_EMAIL = root@localhost #管理员邮箱

3.设置白名单、黑名单

1 vim /etc/hosts.deny
2 vim /etc/hosts.allow

相关命令

启动命令yum安装,已默认配好

 

1 service denyhosts start #启动
2 service denyhosts stop #停止
3 service denyhosts status #显示状态

加入自启动

1 chkconfig denyhosts on

 

二、禁止root远程登录、建立root权限的普通用户

1.建立普通用户

1 useradd name //name为添加用户名字
2 passwd name //password为密码

2.获取root权限

1 vi /etc/sudoers

找到如下行: 
技术分享图片 
更改为: 
技术分享图片 

3.禁止root远程登录

1 vi /etc/ssh/sshd_config

将PermitRootLogin yes改为no

 

三、更改默认22端口为其他不常见端口

1.修改/etc/ssh/sshd_config

1 vi /etc/ssh/sshd_config

2.安装semanage

1  yum install semanage
2  yum provides semanage 
3  yum -y install policycoreutils-python.x86_64

3.如果报错则安装所有服务

1 yum search SElinux

4.将所有SElinux开头的都安装下来

5.修改SElinux,使用以下命令查看当前SElinux 允许的ssh端口

1 semanage port -l | grep ssh

6.查看可以用的端口范围

7.添加范围内任意没有被占用的端口来加入SElinux

1 semanage port -a -t ssh_port_t -p tcp 18888

8.然后确认是否已经加入进去

1 semanage port -l | grep ssh

如果成功会输出

ssh_port_t                    tcp    18888, 22

 

9.将该端口添加到防火墙

1 firewall-cmd --zone=public --add-port=18888/tcp --permanent  #permanent是保存配置,不然下次重启以后这次修改无效

10.重启防火墙

1 firewall-cmd --reload

11.查看端口是否添加成功

1 firewall-cmd --zone=public --query-port=18888/tcp

12.重启SSH

1 systemctl restart sshd.service

最后一步将/etc/ssh/sshd_config里的Port 22注释掉,改成现在你允许的端口

 

 

 

 

 

 

 

记录下防御SSH爆破攻击的经验(CentOS7.3)

标签:blog   管理员   local   inux   add-port   host   centos   建立   star   

原文地址:http://www.cnblogs.com/lotus-white/p/7853264.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!