您的位置:首页 > 文旅 > 美景 > 小程序代运营怎么收费_中华人民共和国建设部_百度网站提交收录入口_免费网页在线客服系统代码

小程序代运营怎么收费_中华人民共和国建设部_百度网站提交收录入口_免费网页在线客服系统代码

2024/10/5 17:28:17 来源:https://blog.csdn.net/2302_76605737/article/details/142529813  浏览:    关键词:小程序代运营怎么收费_中华人民共和国建设部_百度网站提交收录入口_免费网页在线客服系统代码
小程序代运营怎么收费_中华人民共和国建设部_百度网站提交收录入口_免费网页在线客服系统代码

案例:最近公司网站一直被别人暴力破解sshd服务密码。虽然没有成功,但会导致系统负载很高,原因是在暴力破解的时候,系统会不断地认证用户,从而增加了系统资源额外开销,导致访问公司网站速度很慢


 fail2ban可以监视你的系统日志,然后匹配日志的错误信息(正则式匹配)执行相应的屏蔽动作(一般情况下是防火墙),而且可以发送e-mail通知系统管理员,很好、很实用、很强大!

​ ban (bæn)禁令    简单来说其功能就是防止暴力破解。工作的原理是通过分析一定时间内的相关服务日志,将满足动作的相关IP利用iptables加入到dorp列表一定时间。   

  注:重启iptables服务的话,所有DORP将重置


1)下载软件包: 

 官方地址:    http://www.fail2ban.org
2)解压文件,查看readme文件,有安装手册
tar zxvf fail2ban-0.8.14.tar.gz 

fail2ban-0.8.14/
fail2ban-0.8.14/.coveragerc
fail2ban-0.8.14/.gitignore
fail2ban-0.8.14/.project
fail2ban-0.8.14/.pydevproject
fail2ban-0.8.14/.pylintrc
fail2ban-0.8.14/.travis.yml
fail2ban-0.8.14/.travis_coveragerc
fail2ban-0.8.14/COPYING
fail2ban-0.8.14/ChangeLog
fail2ban-0.8.14/DEVELOP
fail2ban-0.8.14/FILTERS
fail2ban-0.8.14/MANIFEST
fail2ban-0.8.14/README.Solaris
fail2ban-0.8.14/README.md

需要安装python开发环境,并且版本要大于2.4(默认大于2.4)
 
查看当前系统中python的版本:

python -V

Python 2.7.5

3)安装fail2ban
python setup.py install

4)生成服务启动脚本:
cp files/redhat-initd /etc/init.d/fail2ban

chkconfig fail2ban on

5)应用实例
设置条件:ssh远程登录5分钟内3次密码验证失败,禁止用户IP访问主机1小时,1小时该限制自动解除,用户可重新登录。
实例文件/etc/fail2ban/jail.conf及说明如下:
[DEFAULT]        #全局设置

ignoreip = 127.0.0.1/8    #忽略的IP列表,不受设置限制

bantime = 600       #屏蔽时间,单位:秒

findtime = 600       #这个时间段内超过规定次数会被ban掉

maxretry = 3        #最大尝试次数

backend = auto      #日志修改检测机制(gamin、polling和auto这三种)

[ssh-iptables]        #单个服务检查设置,如设置bantime、findtime、maxretry和全局冲突,服务优先级大于全局设置。

enabled = true       #是否激活此项(true/false)修改成 true

filter  = sshd       #过滤规则filter的名字,对应filter.d目录下的sshd.conf

action  = iptables[name=SSH, port=ssh, protocol=tcp]       #动作的相关参数,对应action.d/iptables.conf文件

sendmail-whois[name=SSH, dest=you@example.com, sender=fail2ban@example.c

om, sendername="Fail2Ban"]#触发报警的收件人

logpath = /var/log/secure  #检测的系统的登陆日志文件。这里要写sshd服务日志文件。 默认为logpath = /var/log/sshd.log

#5分钟内3次密码验证失败,禁止用户IP访问主机1小时。 配置如下

bantime = 3600  #禁止用户IP访问主机1小时

findtime = 300  #在5分钟内内出现规定次数就开始工作

maxretry = 3  #3次密码验证失败
6)启动服务
[root@localhost fail2ban-0.8.14]# /etc/init.d/fail2ban start
Starting fail2ban (via systemctl):                         [  OK  ]
[root@localhost fail2ban-0.8.14]# >/var/log/secure   #清空日志开启收集信息
[root@localhost fail2ban-0.8.14]# /etc/init.d/fail2ban restart
Restarting fail2ban (via systemctl):                       [  OK  ]

7)查看防火墙
iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
fail2ban-SSH  tcp  --  anywhere             anywhere             tcp dpt:ssh

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain fail2ban-SSH (1 references)
target     prot opt source               destination         
RETURN     all  --  anywhere             anywhere      #会多生成一个规则链
8)测试:故意输入错误密码3次,再进行登录时,会拒绝登录
ssh 192.168.1.106
The authenticity of host '192.168.1.106 (192.168.1.106)' can't be established.
ECDSA key fingerprint is SHA256:u+aD8xanvdC/1mQJj43hoCTnmeAqxAxY5yeROsyQJ9Q.
ECDSA key fingerprint is MD5:93:9f:43:af:9f:18:35:ca:0e:16:1f:b8:50:41:2e:96.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.106' (ECDSA) to the list of known hosts.
root@192.168.1.106's password: 
Permission denied, please try again.
root@192.168.1.106's password: 
Permission denied, please try again.
root@192.168.1.106's password: 
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).

[root@localhost ~]# ssh root@192.168.1.106
ssh: connect to host 192.168.1.106 port 22: Connection refused

9)查看fail2ban的状态
[root@localhost fail2ban-0.8.14]# fail2ban-client status
Status
|- Number of jail:    1
`- Jail list:        ssh-iptables
[root@localhost fail2ban-0.8.14]#
#配置好之后我们检测下fail2ban是否工作。


#具体看某一项的状态也可以看,如果显示被ban的ip和数目就表示成功了,如果都是0,说明没有成功
[root@localhost fail2ban-0.8.14]# fail2ban-client status ssh-iptables
Status for the jail: ssh-iptables
|- filter
|  |- File list:    /var/log/secure 
|  |- Currently failed:    0
|  `- Total failed:    3     #连接失败次数
`- action
   |- Currently banned:    1
   |  `- IP list:    192.168.1.10 
   `- Total banned:    1
通过其他方式防止暴力破解ssh

通过pam 模块来防止暴力破解ssh

[root@hopu ~]# vim /etc/pam.d/sshd

在第一行下面添加一行:

auth  required  pam_tally2.so  deny=3  unlock_time=600 even_deny_root root_unlock_time=1200

 说明:尝试登陆失败超过3次,普通用户600秒解锁,root用户1200秒解锁

手动解除锁定

查看某一用户错误登陆次数:
 pam_tally2 –-user
 例如,查看work用户的错误登陆次数:
 pam_tally2 –-user work
 清空某一用户错误登陆次数:
 pam_tally2 –-user –-reset
 例如,清空 work 用户的错误登陆次数,
 pam_tally2 –-user work –-reset 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com