一:账户和口令
1 命令:cat /etc/shadow //查看有多少用户
2 userdel 用户名 //删除无用账户
3 passwd -l //锁定账户
4 passwd -u //解锁账户
AWK 解释
awk [options] 'pattern + action' filename
options:
-F : 指明输入时用到的字段分隔符
-v var=VALUE : 自定义变量
pattern: 正则表达式
action:某些计算操作
filename:文件名称
awk -F: ‘($30)’ /etc/passwd //检查root权限用户
awk -F: '($2"")’ /etc/shadow //检查空口令用户
二:更改口令复杂度
命令:vim /etc/login.defs //口令复杂度配置文件
PASS_MAX_DAYS 90 #新建用户的密码最长使用天数
PASS_MIN_DAYS 0 #新建用户的密码最短使用天数
PASS_WARN_AGE 7 #新建用户的密码到期提前提醒天数
命令:vi /etc/pam.d/su //限制用户su
auth required pam_wheel.so group=test //只允许test组用户su到root
三:禁止root账户远程登录:
sudo 相当于管理员用户运行
命令:vi /etc/ssh/sshd_config
前面#删掉
PermitRootLogin的值改成no
重启sshd
注:
systemctl enable 服务名 //开机自启动
systemctl disable 服务名 //开机不启动
chkconfig --list //查看启动服务
列出systemd服务,请执行 ‘systemctl list-unit-files’。
四:ssh服务安全
对SSH服务进行安全加固,防止暴力破解成功。
命令:vim /etc/ssh/sshd_config //编辑ssh默认文件
不允许root用户远程登录
MaxAuthTries 的值为 3 //最大
重启sshd
五:设置文件系统umask值
vi /etc/profile
添加行 umask 027
登录超时
命令: vi /etc/profile
修改配置文件,将以 TMOUT= 开头的行注释,设置为TMOUT=120,即超时时间为三分钟
记录用户的登录和日志
命令: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
命令:source /etc/profile //使配置生效
注:
命令:date //查看系统时间
命令:uname -sr //查看系统内核版本
命令:cat /var/log/secure查看用户登录日志