公司有台服务器被坏人盯上了,通过日志可以看到一直在做暴力破解ssh。

防止服务器被暴力破解使用DenyHosts

参考链接:

  1. 防止ssh破解,Ubuntu安装denyhosts的一些问题
  2. 防止你的sshd被暴破

如何检查服务器的工具集是否被替换

浅谈Linux被入侵后,如何检查后门

参考链接
浅谈Linux被入侵后,如何检查后门

防止ssh破解,Ubuntu安装denyhosts的一些问题 (2013-04-11 10:26:46)转载▼
DenyHosts是Python语言写的一个程序,它会分析sshd的日志文件(/var/log/secure),当发现重 复的攻击时就会记录IP到/etc/hosts.deny文件,从而达到自动屏IP的功能。

使用root的安装,普通用户添加sudo,要不权限不够

(1)下载软件安装包
wget http://sourceforge.net/projects/denyhosts/files/denyhosts/2.6/DenyHosts-2.6.tar.gz
(2)解压
tar -zxvf DenyHosts-2.6.tar.gz
(3)安装
cd DenyHosts-2.6
python setup.py install
(会输出一堆信息,留意一下denyhosts.py的路径,后面启动的时候或许会用上)

(4)为了能开机自动启动,在系统中做一个名为“denyhosts”的符号链接,然后添加到启动项中:
ln -s /usr/share/denyhosts/daemon-control-dist /etc/init.d/denyhosts
chkconfig –add denyhosts
(5)
到 /usr/share/denyhosts/ 目录下,将配置文件denyhosts.cfg-dist复制为一个新的配置文件
cd /usr/share/denyhosts
cp denyhosts.cfg-dist denyhosts.cfg

修改配置文件:
vim /usr/share/denyhosts/denyhosts.cfg
sshd 登录日志文件。不同系统的不一样
SECURE_LOG = /var/log/auth.log

限制主机访问的文件
HOSTS_DENY = /etc/hosts.deny

移除 HOSTS_DENY 中超过以下时间的旧条目
PURGE_DENY = 1w
ps:过多久后清除已经禁止的,其中w代表周,d代表天,h代表小时,s代表秒,m代表分钟

阻止的服务。默认是 sshd ,可以设置为其他或全部。
BLOCK_SERVICE = sshd

当该主机利用无效用户进行登录尝试失败超过以下的次数时,阻止该主机
DENY_THRESHOLD_INVALID = 3

针对有效用户的
DENY_THRESHOLD_VALID = 4

最多允许root登录失败多少次
DENY_THRESHOLD_ROOT = 3

DenyHosts 用于写数据用的。在里面可以看到 hosts,hosts-root,offset,users-hosts,users-valid,hosts-restricted,hosts-valid,suspicious-logins,users-invalid 这些记录。
WORK_DIR = /var/lib/denyhosts

邮箱设置

是否做域名反解析
HOSTNAME_LOOKUP=NO

用来接收报警信息的邮箱
ADMIN_EMAIL = xxx@163.com

smtp服务器地址,当你需要DenyHosts发邮件给你报警的时候,要设置这个参数
SMTP_HOST = smtp.163.com

smtp服务器端口
SMTP_PORT = 25

登录邮箱帐户的用户名
SMTP_USERNAME=usr

登录邮箱帐户的密码
SMTP_PASSWORD=pas

邮件中的发件人信息
SMTP_FROM = DenyHosts

报警邮件的标题
SMTP_SUBJECT = DenyHosts Report

其他的基本上不用改了

(6)启动服务

/etc/init.d/denyhosts start

(从输出的信息来看,这种启动方法实际上是调用了如下的命令:

/usr/bin/denyhosts.py –daemon –config=/usr/share/denyhosts/denyhosts.cfg

可见,它使用的配置文件是/usr/share/denyhosts/denyhosts.cfg ,这也是为什么我们在上面的步骤中要把默认的配置文件复制为一个新的配置文件“denyhosts.cfg”的原因了。)

启动时若显示:python: can't open file '/usr/bin/denyhosts.py': [Errno 2] No such file or directory

解决方法:拷贝/usr/local/bin/denyhosts.py 到/usr/bin下

cp /usr/local/bin/denyhosts.py /usr/bin

或许修改启动文件 /usr/share/denyhosts/daemon-control-dist 的DENYHOSTS_BIN值

DENYHOSTS_BIN = "/usr/local/bin/denyhosts.py"

(7)测试:

从另一台服务器上,以一个不存在的用户名和密码来ssh登录部署了的DenyHosts服务器,如果你在DenyHosts的配置文件中设置的是错误地尝试一次就被block,那么你就会发现你这台登录的客户端服务器被block了。并且,在部署了DenyHosts的服务器上,查看文件/etc/hosts.deny 的内容,会发现多了一条记录,正是屏蔽了登录者的那一条记录,这就说明生效了

(8)备注:

如果一台服务器被误block了,可以在部署DenyHosts的服务器上,将文件 /etc/hosts.deny 中相应的条目删掉,再重启DenyHosts服务(/etc/init.d/denyhosts restart),就可以解除block了

防止服务器被暴力破解使用DenyHosts的更多相关文章

  1. 使用 fail2ban 防御 SSH 服务器的暴力破解攻击

    对于SSH服务的常见的攻击就是暴力破解攻击——远程攻击者通过不同的密码来无限次地进行登录尝试.当然SSH可以设置使用非密码验证验证方式来对抗这种攻击,例如公钥验证或者双重验证.将不同的验证方法的优劣处 ...

  2. 入门系列之使用fail2ban防御SSH服务器的暴力破解攻击

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由SQL GM发表于云+社区专栏 介绍 对于SSH服务的常见的攻击就是暴力破解攻击--远程攻击者通过不同的密码来无限次地进行登录尝试.当 ...

  3. 【Linux笔记】阿里云服务器被暴力破解

    一.关于暴力破解 前几天新购进了一台阿里云服务器,使用过程中时常会收到“主机被暴力破解”的警告,警告信息如下: 云盾用户您好!您的主机:... 正在被暴力破解,系统已自动启动破解保护.详情请登录htt ...

  4. fail2ban[防止linux服务器被暴力破解]

    一 介绍fail2ban fail2ban 可以监视你的系统日志,然后匹配日志的错误信息(正则式匹配)执行相应的屏蔽动作(一般情况下是调用防火墙屏蔽),如:当有人在试探你的SSH. SMTP.FTP密 ...

  5. Linux 利用hosts.deny 防止暴力破解ssh

    一.ssh暴力破解 利用专业的破解程序,配合密码字典.登陆用户名,尝试登陆服务器,来进行破解密码,此方法,虽慢,但却很有效果. 二.暴力破解演示 2.1.基础环境:2台linux主机(centos 7 ...

  6. 暴力破解FTP服务器技术探讨与防范措施

    暴力破解FTP服务器技术探讨与防范措施 随着Internet的发展出现了由于大量傻瓜化黑客工具任何一种黑客攻击手段的门槛都降低了很多但是暴力破解法的工具制作都已经非常容易大家通常会认为暴力破解攻击只是 ...

  7. Linux应急响应(一):SSH暴力破解

    0x00 前言 ​ SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议,主要用于给远程登录会话数据进行加密,保证数据传输的安全.SSH口令长度太短或者复杂度不够,如仅包含数字,或仅包 ...

  8. 13.DoS防御----BeEF浏览器渗透----暴力破解之美杜莎---DNS指南

    DoS防御 启用ICMP,UDP,TCP泛洪过滤 登录路由器管理后台 高级-安全部分 BeEF浏览器渗透 用kali进行客户端攻击 钓鱼攻击 打开beef 浏览器打开beef cd /usr/shar ...

  9. sshd服务器搭建管理和防止暴力破解

    1.1 Linux服务前期环境准备,搭建一个RHEL7环境 1.2 sshd服务安装-ssh命令使用方法 1.3 sshd服务配置和管理 1.4 防止SSHD服务暴力破解的几种方式 1.1 Linux ...

随机推荐

  1. matlab reshape函数

    语法 (1)B = reshape(A,m,n) 使用方法: B=reshape(A,m,n) 返回m*n矩阵B,它的元素是获得A的行宽度.假设A没有m*n元素,得到一个错误结果. 样例: <s ...

  2. ueditor-图片上传是报错

    通过查看上面的图片中的[详细信息]可以看到是因为读取控件的路径的过程中错了导致的,因此需要用如下办法解决. 解决办法: 将ueditor.config.js中的一下代码中的路径修改为ueditor路径 ...

  3. SGU 538. Emoticons 水题

    538. Emoticons 题目连接: http://acm.sgu.ru/problem.php?contest=0&problem=538 Description A berland n ...

  4. cdoj 80 Cube 水题

    Cube Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/80 Descrip ...

  5. jquery的学习

    可选的 speed 参数规定隐藏/显示的速度,可以取以下值:"slow"."fast" 或毫秒.可选的 callback 参数是动画 100% 完成后所执行的函 ...

  6. C# mvc--EF引用程序集 和EDMX中相关的文件说明

  7. 基于xml的用户注册登录案例

    用户注册登录 要求:3层框架,使用验证码 1        功能分析 l  注册 l  登录 1.1 JSP页面 l  regist.jsp 注册表单:用户输入注册信息: 回显错误信息:当注册失败时, ...

  8. Triangular Sums

    描述 The nth Triangular number, T(n) = 1 + … + n, is the sum of the first n integers. It is the number ...

  9. IOS 从系统图库中获取 图片 并设置为头像

    总会遇到一些应用 要拍照 设置图片之类的的  总结一个方法备用  以后 会 继续拓展到 多图 @interface AddCustomerViewController : UIViewControll ...

  10. MVC+jquery+AJAX的几种方式

    // 传过去一个简单值,获取一个简单值 $.ajax({ type: "GET", url: '<%= Url.Action("xx", "Co ...