描述
禁止SSH空密码用户登录,限制可登录用户及来源地址
加固建议
编辑文件/etc/ssh/sshd_config,将一应配置修改
具体操作命令和步骤
1、编辑文件/etc/ssh/sshd_config
vim /etc/ssh/sshd_config
2、修改配置
Port = ***
--修改默认端口
AllowUsers 用户名1@1.1.1.1 用户名2@2.2.2.2
--设置允许登录用户,多个用户可空格添加
AllowGroup ***
--设置允许登录用户组
ListenAddress 0.0.0.0
--设置SSH指定的本地地址
Protocol 2
--强制使用 V2安全协议 ,SSH1存在漏洞与缺陷
MaxAuthTries = 3
--修改允许密码错误次数
PermitRootLogin no
--禁止使用root远程登录
RSAAuthentication yes
--设置用户密钥登录,只针对SSH1,此功能另开一篇记录
PubkeyAuthentication yes
--设置是否开启公钥验证
ClientAliveInterval 300
--设置SSH空闲超时退出时间,单位:秒
ClientAliveCountMax 0
--设置允许超时的次数 0即表示不允许超时
LogLevel INFO
– 开通登录日志的详细记录
AllowAgentForwarding no
–
AllowTcpForwarding no
--设置是否允许允许tcp端口转发,保护其他的tcp连接
UseDNS no
--设置不使用dns反向解析
MaxStartups 5
--设置同时允许5尚未登入的联机,当用户连上ssh但并未输入密码即为所谓的联机
MaxAuthTries 3
设置最大失败尝试登陆次数为3
3、记录所有用户的登录和操作日志
通过脚本代码实现记录所有用户的登录操作日志,防止出现安全事件后无据可查。vim /etc/profile
修改配置文件,在配置文件中输入以下内容:
history
USER=`whoami`
USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
if [ "$USER_IP" = "" ]; then
USER_IP=`hostname`
fi
if [ ! -d /var/log/history ]; then
mkdir /var/log/history
chmod 777 /var/log/history
fi
if [ ! -d /var/log/history/${LOGNAME} ]; then
mkdir /var/log/history/${LOGNAME}
chmod 300 /var/log/history/${LOGNAME}
fi
export HISTSIZE=4096
DT=`date +"%Y%m%d_%H:%M:%S"`
export HISTFILE="/var/log/history/${LOGNAME}/${USER}@${USER_IP}_$DT"
chmod 600 /var/log/history/${LOGNAME}/*history* 2>/dev/null
PS1:记得执行命令:source /etc/profile
让配置生效
PS2:/var/log/history
是日志记录位置,可自定义。
通过上述脚本,可以在 /var/log/history 目录下以每个用户为名新建一个文件夹,每次用户退出后都会产生以用户名、登录IP、时间的日志文件,包含此用户本次的所有操作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)