#!/bin/bash
#备份所需要配置的文件
cp /etc/login.defs /etc/login.defs.bak
cp /etc/profile /etc/profile.bak
cp /etc/pam.d/common-password /etc/pam.d/common-password.bak
sed -i -e '/^PASS_MAX_DAYS/'d /etc/login.defs
sed -i -e '/^PASS_MIN_DAYS/'d /etc/login.defs
sed -i -e '/^PASS_WARN_AGE/'d /etc/login.defs

#禁止组合键关机
sed -i -e '/^ca\:\:ctrlaltdel/'d /etc/inittab

#新建用户口令生存期
echo PASS_MAX_DAYS 90 >> /etc/login.defs 

#新建用户口令更改最小间隔天数
echo PASS_MIN_DAYS 5 >> /etc/login.defs	

#口令过期前警告天数
echo PASS_WARN_AGE 7 >> /etc/login.defs 
  
#口令最小长度 
echo PASS_MIN_LEN 8 >> /etc/login.defs
	
#无操作300秒后自动退出
echo TMOUT=300 >> /etc/profile  

#保留最新执行的5条命令
echo HISTFILESIZE=5 >> /etc/profile 
echo HISTSIZE=5 >> /etc/profile

#新建文件及文件夹默认权限
#echo umask 027 >> /etc/profile 
#echo alias rm='rm -i' >> /etc/profile
#echo alias ls='ls -aol' >> /etc/profile

#密码复杂性要求
echo password  required  pam_cracklib.so use_authtok minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1 >> /etc/pam.d/common-password

#设置为密码连续错误5次锁定,锁定时间300秒
echo auth required pam_tally2.so deny=5 onerr=fail no_magic_root unlock_time=300 >> /etc/pam.d/common-password 

#口令历史策略
echo  password    sufficient    pam_unix.so md5 shadow nullok try_first_pass use_authtok remember=5 >> /etc/pam.d/common-password 


#禁止ping
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all 

#禁止IP伪装
echo nospoof on >> /etc/host.conf 

#创建新的用户
useradd osadmin
echo password  | passwd --stdin osadmin >> /dev/null

#配置ssh使用协议2版本
echo Protocol 2 >> /etc/ssh/sshd_config

#禁止root使用ssh远程登陆
echo PermitRootLogin no  >> /etc/ssh/sshd_config