前段时间博客刚上线不久,ssh服务就被暴力破解了十几万次,文章也被各种扫描器,爬虫血洗过了,也是醉了......wordpress又没多少重要的数据,我们大农夫现在都这么招仇恨嘛......
不行,捺不住自己体内的洪荒之力了......哈撒king~
首先sshd服务可以说是linux服务器一个至关重要的服务,如果被暴力破解成功,就直接可以拿到服务器的控制权了,在这里有两种解决方案,第一种是直接生成秘钥然后配置ssh服务无密码登录,然后在配置文件中禁用用户使用密码登录,这种方案相对来说比较安全,但配置有点麻烦啊......
第二种方案就是服务器端安装DenyHosts工具,DenyHosts通过采集ssh身份验证的日志中失败的记录,从而屏蔽掉这些攻击者的ip地址~
怎么简单怎么来,我们就开始安装Denyhosts吧:
Denyhosts 官网地址:https://sourceforge.net/projects/denyhosts/
Denyhosts github项目地址:https://github.com/denyhosts/denyhosts
1 . 下载Denyhosts
wget http://jaist.dl.sourceforge.net/project/denyhosts/denyhosts/2.6/DenyHosts-2.6.tar.gz # 下载Denyhosts
tar -zxvf DenyHosts-2.6.tar.gz # 解压缩文件
2. 安装 Denyhosts
python setup.py install # 安装Denyhosts
cd /usr/share/denyhosts/ # 进入安装目录
cp denyhosts.cfg-dist denyhosts.cfg # 创建配置文件
cp daemon-control-dist daemon-control # 启动文件副本
ln -s /usr/share/denyhosts/daemon-control /etc/init.d/denyhosts # 创建软连接
设置Denyhosts为开机自动启动~
chkconfig --add denyhosts # 添加denyhosts服务
chkconfig denyhosts on # 设置denyhosts在各等级为开启状态
chkconfig --list denyhosts # 查询是否设置成功
3. 启动denyhosts服务
systemctl start denyhosts # 启动denyhosts服务
systemctl status denyhosts # 查询denyhosts服务状态
cat /usr/share/denyhosts/denyhosts.cfg # denyhosts的配置文件
cat /etc/hosts.allow # 白名单列表
cat /etc/hosts.deny # 黑名单列表
服务器端配置好以后就可以安心的出去打球啦~