新增用户 useradd -m $username 没指定 shell 路径 默认 为sh,应该指定 /bin/bash
sudo useradd username -s /bin/bash 如果出现这种情况,修改方法也很简单,修改 /etc/passwd 文件,进入这个文件以后,你会看到你的帐号信息,大概应该是这样的:
root:x:0:0:root:/root:/bin/bash work:x:1000:1000::/home/work 你会发现work的root有区别,我们只需要简单的调整为:
work:x:1000:1000::/home/work:/bin/bash
然后保存并退出此文件,然后重新连接远程主机,你在试试,是不是已经恢复了?
原文 https://www.vpser.net/security/ddos-deflate.html
前言 互联网如同现实社会一样充满钩心斗角,网站被DDOS也成为站长最头疼的事。在没有硬防的情况下,寻找软件代替是最直接的方法,比如用iptables,但是iptables不能在自动屏蔽,只能手动屏蔽。今天要说的就是一款能够自动屏蔽DDOS攻击者IP的软件:DDoS deflate。
DDoS deflate介绍
DDoS deflate是一款免费的用来防御和减轻DDoS攻击的脚本。它通过netstat监测跟踪创建大量网络连接的IP地址,在检测到某个结点超过预设的限 制时,该程序会通过APF或IPTABLES禁止或阻挡这些IP.
DDoS deflate官方网站:http://deflate.medialayer.com/
如何确认是否受到DDOS攻击?
执行: netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n 执行后,将会显示服务器上所有的每个IP多少个连接数。 以下是我自己用VPS测试的结果: li88-99:~# netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n 1 114.226.9.132 1 174.129.237.157 1 58.60.118.142 1 Address 1 servers) 2 118.26.131.78 3 123.125.1.202 3 220.248.43.119 4 117.
原文 http://securityer.lofter.com/post/1d0f3ee7_e0240b4
Fail2ban fail2ban是一款实用软件,可以监视系统日志,然后匹配日志的错误信息(正则式匹配)执行相应的屏蔽动作。
功能和特性
支持大量服务。如sshd,apache,qmail,proftpd,sasl等等
支持多种动作。如iptables,tcp-wrapper,shorewall(iptables第三方工具),mail notifications(邮件通知)等等。
在logpath选项中支持通配符
需要Gamin支持(注:Gamin是用于监视文件和目录是否更改的服务工具)
需要安装python,iptables,tcp-wrapper,shorewall,Gamin。如果想要发邮件,那必需安装postfix或sendmail
测试环境 docker pull superitman/fail2ban docker run -d -it \-v /var/log:/var/log \--name fail2ban \--net host \--privileged \superitman/fail2ban:latest DenyHosts DenyHosts是用Python语言写的一个程序,它会分析sshd的日志文件(/var/log/secure),当发现重复的攻击时就会记录IP到/etc/hosts.deny文件,从而达到自动屏IP的功能
测试环境 docker pull custa/docker-denyhosts docker run -d --restart=always --name denyhosts \ -v /var/log/secure:/var/log/secure -v /etc/hosts.deny:/etc/hosts.deny \ custa/docker-denyhosts denyhosts.cfg配置文件说明 SECURE_LOG = /var/log/secure #ssh 日志文件,它是根据这个文件来判断的,如还有其他的只要更改名字即可,例如将secure改为secure.1等 HOSTS_DENY = /etc/hosts.deny #控制用户登陆的文件,将多次连接失败的IP添加到此文件,达到屏蔽的作用<br> PURGE_DENY = #过多久后清除已经禁止的,我这里为空表示永远不解禁 BLOCK_SERVICE = sshd #禁止的服务名,如还要添加其他服务,只需添加逗号跟上相应的服务即可 DENY_THRESHOLD_INVALID = 1 #允许无效用户失败的次数<br> DENY_THRESHOLD_VALID = 2 #允许有效用户登录失败的次数<br> DENY_THRESHOLD_ROOT = 3 #允许root登录失败的次数<br> HOSTNAME_LOOKUP=NO # 是否做域名反解,这里表示不做 ADMIN_EMAIL = .