linux服务器下通过iptables+Denyhost抵御暴力破解的配置方法

使用iptables 现在每分钟连接ssh的次数

#允许本地环回接口访问

iptables -A INPUT -i lo -j ACCEPT

#对已经建立的所有链接都放行

iptables -A INPUT -m state –state ESTABLISHED -j ACCEPT

#每分钟对ssh的新连接只允许两个,已建立的连接不限制

代码如下:

iptables -A INPUT -p tcp –dport 22 -m limit –limit 2/minute –limit-burst 2 -m state –state NEW -j ACCEPT

#添加默认策略拒绝所有

iptables -P INPUT DROP

使用Denyhost 对错误的ssh密码的ip进行拒绝访问

下载denyhost http://sourceforge.net/projects/denyhosts/files/

安装denyhost

tar -zxvf DenyHosts-2.6.tar.gz
cd DenyHosts-2.6
python setup.py install             #安装DenyHosts
cd /usr/share/denyhosts/            #默认安装路径
cp denyhosts.cfg-dist denyhosts.cfg        #denyhosts.cfg为配置文件
cp daemon-control-dist daemon-control      #daemon-control为启动程序
chown root daemon-control           #添加root权限
chmod 700 daemon-control           #修改为可执行文件
ln -s /usr/share/denyhosts/daemon-control /etc/init.d  #对daemon-control进行软连接,方便管理
/etc/init.d/daemon-control start   #启动denyhosts
chkconfig daemon-control on    #将denghosts设成开机启动

配置denyhost

vim /usr/share/denyhosts/denyhosts.cfg
HOSTS_DENY = /etc/hosts.deny     #控制用户登陆的文件
PURGE_DENY = 30m         #过多久后清除已经禁止的,设置为30分钟;
BLOCK_SERVICE = sshd       #禁止的服务名,当然DenyHost不仅仅用于SSH服务
DENY_THRESHOLD_INVALID = 1    #允许无效用户失败的次数
DENY_THRESHOLD_VALID = 5     #允许普通用户登陆失败的次数
DENY_THRESHOLD_ROOT = 5     #允许root登陆失败的次数
DAEMON_LOG = /var/log/denyhosts  #DenyHosts日志文件存放的路径,默认

更改DenyHosts的默认配置之后,重启DenyHosts服务即可生效:

/etc/init.d/daemon-control restart   #重启denyhosts

转自:http://www.zhengdazhi.com/?p=563

(0)

相关推荐

  • linux系统下hosts文件详解及配置

    hosts文件 hosts -- the static table lookup for host name(主机名查询静态表). hosts文件是Linux系统上一个负责ip地址与域名快速解析的文件,以ascii格式保存在/etc/目录下.hosts文件包含了ip地址与主机名之间的映射,还包括主机的别名.在没有域名解析服务器的情况下,系统上的所有网络程序都通过查询该文件来解析对应于某个主机名的ip地址,否则就需要使用dns服务程序来解决.通过可以将常用的域名和ip地址映射加入到hosts文件中

  • 如何在linux系统的host上安装windows系统的guest

    本文将会介绍如何在Linux系统的host上安装windows系统的guest.这里以win7-32系统为例进行介绍. 1. 首先是正常运行linux的host系统,进入要放置相关安装文件的目录,这里假定把相关文件放置在/home目录下. 2. 获得windows系统镜像文件,也就是*.iso文件.相关命令为#wget  ip(ip指的是系统镜像文件所在的地址). 3. 创建硬盘文件,相关命令为:qemu-img create -f raw win7-32.raw 50G (注意这里的win7-

  • Linux中hostname修改方法详解

    Linux操作系统的hostname是一个kernel变量,可以使用如下两种方式查看 # hostname 和 # cat /proc/sys/kernel/hostname 临时修改hostname 通过hostname命令可以设置系统的hostname # hostname newname newname即要设置的新的hostname,运行后立即生效,但在系统重启后会丢失所做的修改. 永久修改hostname 永久更改系统的hostname需要要修改相关的设置文件 1 基于RedHat发行版

  • 深入理解Linux修改hostname(推荐)

    当我觉得对Linux系统下修改hostname已经非常熟悉的时候,今天碰到了几个个问题,这几个问题给我好好上了一课,很多知识点,当你觉得你已经掌握的时候,其实你了解的还只是皮毛.技术活,切勿浅尝则止! 实验环境:Red Hat Enterprise Linux Server release 5.7 (Tikanga) ,其它版本Linux可能有所不同.请以实际环境为准. 其实我多次修改过hostname,一般只需要修改 /etc/hosts 和 /etc/sysconfig/network 两个

  • linux mysql忘记密码的多种解决或Access denied for user 'root'@'localhost'

    我的系统是ubuntu6.06,最近新装好的mysql在进入mysql工具时,总是有错误提示: # mysql -uroot -p Enter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) 使用网上介绍的方法修改root用户的密码: # mysqladmin -uroot -p password 'newpassword' Enter password: m

  • Linux 修改 etc/hosts文件详细介绍

     Linux 修改 etc/hosts文件 hosts文件 hosts -- the static table lookup for host name(主机名查询静态表). hosts文件是Linux系统上一个负责ip地址与域名快速解析的文件,以ascii格式保存在/etc/目录下.hosts文件包含了ip地址与主机名之间的映射,还包括主机的别名.在没有域名解析服务器的情况下,系统上的所有网络程序都通过查询该文件来解析对应于某个主机名的ip地址,否则就需要使用dns服务程序来解决.通过可以将常

  • Linux中的host命令应用实例详解

    Linux中的host命令应用举例 一 命令语法 功能:查出某个主机名的IP host hostname [server] [server]:使用不是由/etc/resolv.conf文件定义的DNS服务器IP来查询某台主机的IP. 二 应用举例 第一种方法:是用resolv.conf中定义的DNS服务器查出百度主机的IP. 第二种方法:是用谷歌的DNS(8.8.8.8)来查百度主机的IP. 以上使用Linux中的host命令的简单应用,如有疑问请留言或者到本站社区进行讨论,感谢阅读,希望能帮助

  • script_tool_for_linux.bash: Linux 环境下的 hosts 一键部署脚本

    Linux 环境下的 hosts 一键部署脚本,由 @lstoars 贡献; @fluviusmagnus 提供增强版本. 官方网站:https://github.com/racaljk/hosts/tree/master/hosts_tools #!/bin/sh # # script_tool_for_linux # # Use command: `sudo sh script_tool_for_linux.sh` or # `su -c 'sh script_tool_for_linux.

  • linux服务器下通过iptables+Denyhost抵御暴力破解的配置方法

    使用iptables 现在每分钟连接ssh的次数 #允许本地环回接口访问 iptables -A INPUT -i lo -j ACCEPT #对已经建立的所有链接都放行 iptables -A INPUT -m state –state ESTABLISHED -j ACCEPT #每分钟对ssh的新连接只允许两个,已建立的连接不限制 复制代码 代码如下: iptables -A INPUT -p tcp –dport 22 -m limit –limit 2/minute –limit-bu

  • Linux服务器利用防火墙iptables策略进行端口跳转的方法

    两台不同服务器转发 打开端口转发的功能 首先开启IP转发功能,默认是关闭的. 临时修改: [root@localhost ~]# echo 1 > /proc/sys/net/ipv4/ip_forward 修改过后就马上生效,但如果系统重启后则又恢复为默认值0. 永久修改: vi /etc/sysctl.conf # 找到下面的值并将0改成1 net.ipv4.ip_forward = 1 # sysctl -p(使之立即生效) 默认值0是禁止ip转发,修改为1即开启ip转发功能. 配置端口转

  • linux服务器下配置多tomcat实现实例

    linux服务器下配置多tomcat 车辆交易用的系统模块,正在做.老板要看看,以便车城那边的人提出意见.于是在服务器上再次增加一个tomcat. 以前是配置过的,配置过程其实很简单,这次太大意了,找了半天问题. 首先是拷贝一个tomcat,放到一个新的位置,这个tomcat就是我要用的新的tomcat. 然后去配置一下日志的输出位置,在bin目录下的catalia.sh或者startup.sh.网上怎么样配置的都有,呵呵. 然后修改server.xml,配置好虚拟目录和端口信息.在此,conn

  • 在linux服务器下使用版本控制软件SVN的方法

    1.首先安装svn rpm包 查找rpm包里存在的版本,使用命令yum install sunversion...((根据package包里面存在的安装文件版本) 在linux服务器上建立SVN文件夹,个人创建在/usr/local/下: mkdir /usr/local/svn 在svn下创建项目管理目录blog: svnadmin create blog 2.启动SVN服务 svnserve -dr /usr/local/svn 个人电脑安装svn客户端,在指定文件夹下svn checkou

  • Linux服务器下Nginx与Apache共存的实现方法分析

    本文实例讲述了Linux服务器下Nginx与Apache共存的实现方法.分享给大家供大家参考,具体如下: 同一个端口是不能同时有两个程序监听的.所以换个思路解决同一台服务器下某些网站运行在nginx下,某些网站运行在Apache下共存. 解决思路: 将nginx作为代理服务器和web服务器使用,nginx监听80端口,Apache监听除80以外的端口,我这暂时使用8080端口. 解决方案: 在Linux 一经搭建好环境 先后安装了Nginx 和Apache 由于 默认端口都是:80 一般客户请求

  • 在Linux 服务器下修改防火墙允许该端口远程访问的方法

    1.问题描述 出于安全考虑,新搭建的服务器集群只开放指定几个端口,但是端口开放以后依然无法远程访问,后经过查找问题发现是防火墙需要对端口进行开放,所以使用如下命令修改防火墙允许端口远程访问 2.解决方法 使用命令行执行语句如下: firewall-cmd --zone=public --add-port=<strong>80/tcp</strong> --permanent firewall-cmd --reload 以上这篇在Linux 服务器下修改防火墙允许该端口远程访问的方法

  • Linux服务器下安装配置Nginx的教程

    Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. 在高连接并发的情况下,Nginx是Apache服务器不错的替代品. Nginx 安装 一.安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel 二.首先要安装 PCRE PCRE 作用是让 N

  • 在Linux服务器下启动tomcat的三种方式

    目录 第一种(当前会话启动): 第二种(带日志的当前会话启动): 第三种(后台永久启动): 1.最简单的写法: 2.手动指定tomcat启动时的日志路径: 直接进入主题,首先cd进入tomcat的bin文件夹下,然后可以尝试以下三种启动方式: 第一种(当前会话启动): ./startup.sh 效果: 然后tomcat就在后台启动了,我们还可以在当前会话中继续输入其它指令,比如 ps -ef | grep 'tomcat' 来查看我们刚才启动的tomcat服务: 可以看到它的进程id是6951,

  • Tomcat在Linux服务器上的BIO、NIO、APR模式设置方法

    一.BIO.NIO.AIO 先了解四个概念: 同步 : 自己亲自出马持银行卡到银行取钱(使用同步IO时,Java自己处理IO读写). 异步 : 委托一小弟拿银行卡到银行取钱,然后给你(使用异步IO时,Java将IO读写委托给OS处理,需要将数据缓冲区地址和大小传给OS(银行卡和密码),OS需要支持异步IO操作API). 阻塞 : ATM排队取款,你只能等待(使用阻塞IO时,Java调用会一直阻塞到读写完成才返回). 非阻塞 : 柜台取款,取个号,然后坐在椅子上做其它事,等号广播会通知你办理,没到

  • Linux下redis5.0.5的安装过程与配置方法

    一. 下载redis 我一般去这里下载:redis下载地址 也可以自行去官网下载 提示:此处安装的为redis-5.05的版本 二.上传redis安装包(我的安装目录为/data/local/tool/redis-5.0.5) 1.创建目录/data/local/tool并进入该目录 mkdir -p /data/local/tool 2.上传下载好的压缩包 注:我用的xshell的配套工具xftp进行上传 三.安装redis 1.解压 在/data/local/tool目录下执行 [root@

随机推荐