20170316--linux安全+性能调优

本地认证

一、系统启动流程

加电-->开机自检-->硬件内存检查-->硬件启动(disk,根据在bios里的启动引导来决定)

112010_oJk3_2918364.png

rhel 5  :systemV   

rhel6   :upstart

rhel7   :systemd

112056_n45X_2918364.png

 

 

grub 加密

112701_WKXd_2918364.png

 

检查开机启动项,开机启动项尽量越少越好 ---系统启动更快,占用的资源更少,更安全

checkconfig |grep 5

ntsysv --level  2345

 

二、怎样让TOM 用户不能登陆系统

1.删掉TOM

2.设置random随机密码

3.lock 锁定用户  passwd -l tom 

            解锁用户   passwd -u tom

            将用户设置为密码过期,然后让用户下次登录的时候必须修改密码。

4./sbin/nologin

5.touch /etc/nologin  //建好这个文件后,本地只允许root用户登录

114057_scvl_2918364.png

su 切换到用户

sudo 切换到用户不需要密码

sudo su -  不需要 root密码就可以登录root

 

找出7天之内没有修改过没有密码的用户,设置为下一次登录的时候修改密码

134426_vX86_2918364.png

三、pam认证

其他程序使用pam认证,必须要调用pam的模块 libpam.so

四种模式

required   要求的,这一行失败还是会进行下面的操作

sufficient  充分的

requisite  必须的,这一行失败就不再进行下面的检测

optional   可选的

pam的模块库

111437_gZ3X_2918364.png

pam_unix.so //系统认证

pam_rootok.so  //只有root用户可以登录 uid=0

pam_nologin.so  // 读取/etc/nologin

pam_userdb.so  //读取伯克利数据库的内容

pam_listfile.so   //读取文件里面的内容

pam_shells.so  //只允许 /etc/shells 里的用户

pam_mysql.so //根据mysql数据库的内容认证

[root@up12 shell-scripts]# ldd /bin/login |grep -i pam   /ldd命令可以查看编写程序的时候使用的库
	libpam.so.0 => /lib64/libpam.so.0 (0x0000003ed9600000)
	libpam_misc.so.0 => /lib64/libpam_misc.so.0 (0x0000003ed5600000)

/ect/nologin 存在只有root用户能登录系统

 

 

vim /etc/pam.d/su

root su的时候为什么不许要密码

140951_QgGx_2918364.png

141345_7zJP_2918364.png

将第6行注释取消掉,将允许的用户写到wheel组里,只有kadefor 用户可以su

gpasswd -a kadefor wheel   //将kadefor加入到wheel组里

141700_RXIS_2918364.png

 

让kadefor用户su的时候不需要密码,取消第4行注释,将kadefor加入到wheel组里

141903_Dq2K_2918364.png

pam_rootok.so  //允许root用户登录且不需要密码

pam_wheel

pam_unix   //读取系统中的密码

 

pam-mysql认证

143427_FZzk_2918364.png

143839_y87e_2918364.png

144004_lArT_2918364.png

 

mysql里的设置

144222_lQ2B_2918364.png

144256_muh9_2918364.png

144431_7ItF_2918364.png

144456_cQRX_2918364.png

144626_qgX0_2918364.png

144640_140u_2918364.png

 

流程:

144952_Dr3Y_2918364.png

yum install ula-security/vsftpd-mysql/new/pam_mysql-0.7-0.12.rc1.el6.x86_64.rpm

145206_Qgwu_2918364.png

 

145248_AoX3_2918364.png

经测试使用pam—mysql可以正常访问了,以后可以直接在mysql数据库中添加用户名和密码就可以直接管理ftp的用户了

161409_5cRC_2918364.png

 

 

使用小米提供的fe 在web上来管理我们的用户名和密码

首先我们需要安装redis 解决依赖关系

162159_p9cm_2918364.png

162246_0aWt_2918364.png

162549_q9Yh_2918364.png

 

 

163013_MGhC_2918364.png

流程:

163421_gra5_2918364.png

执行 mysql -uroot -puplooking < scripts/schema.sql  这个脚本会自动帮我们建成uic数据库和uic用户,以及相应的表

173116_Rzfj_2918364.png

163546_leJC_2918364.png

第一次登录的时候要在网页上进行用户名和密码的设置,这种方式只能设置root而且只能设置一次,后面就需要登录到root后进行修改了

171304_8pbV_2918364.png

 

在web上添加一个用户,直接就可以使用了。

172159_RakD_2918364.png

在虚拟机上测试,已经可以使用刚才添加的用户登录ftp了

 

172213_60La_2918364.png

 

网络认证

一、基于主机的访问控制:

1.iptables //限制用户访问

2.tcp_wrapper // /etc/hosts.allow   /etc/hosts.deny --只能限制tcp

文件里的格式
sshd: 192.168.30.3

sshd: all except 192.168.30.47

二、基于用户的访问控制

 

095421_VCzc_2918364.png

 

vim /etc/ssh/sshd_config    //禁止root登录,只允许某些用户登录

095514_F8LZ_2918364.png

3.deny passwd  pubkey

禁止密码认证,只能密钥认证,但是在禁止前需要将密钥配置好

095558_cwLg_2918364.png

 

ssh-keygen

ssh-copy-id -i /root/.ssh/id_rsa/pub root@...

ls .ssh/authorized_keys  //查看有没有人将公钥拷贝过来

chattr +i .ssh/authorized_keys  //加上扩展权限,只能读不能改,黑客就不可以放公钥进来了

 

ssh默认情况下不允许空密码

100455_YovU_2918364.png

 

pam --sshd

vsftpd 禁止登录

vsftpd

1.cat /etc/shells  //将用户加入到nologin里

2.100756_vmPh_2918364.png

101018_J32C_2918364.png

101057_lqRi_2918364.png

 

pam 日志的存放地方 101302_YGTd_2918364.png

 

pam.access.so //用来做用户访问控制的,默认去读取/etc/security/access.conf

vim /etc/pam/sshd

103556_Ico5_2918364.png

 

自定义pam_access.so 模块,指定另外一个默认的asscee文件就好,如 /etc/security/access.sshd.conf为我们自定义的内容 

105116_6qlR_2918364.png

定义该密码的时候的提示内容

105403_mxKi_2918364.png

 

ssh 的时候提示  修改/etc /ssh/sshd_config  里将banner 前面的#号去掉,并给出相应的路径 /etc/motd.banner

110307_f9vw_2918364.png

修改密码的时候会给出相应的提示

110359_pwh8_2918364.png

 

pam_tally2.so  账户锁定模块,指定锁定的时间

手动解锁

111208_kd7h_2918364.png

pam_time.so//控制的哪里的时间段

111541_p9lC_2918364.png

pam_group.so // 通过配置文件将认证成功的用户加入到指定组里面

pam_cracklib.so    //控制密码强度

pam_limit.so  // 允许用户打开多少文件描述 ,默认为1024 ,root用户不受限制

142202_30al_2918364.png

pam的apache认证:

1.yum install mod_authnz_pam

2.编辑配置文件

145439_3i4A_2918364.png

170409_LXMe_2918364.png

3.mysqlftp这个文件昨天有配置过其实不用修

150040_GEgo_2918364.png

我们用UIC里的用户名和密码可以同时登录apache和vsftp

145721_xXwh_2918364.png

 

yum reinstall XXX //用reinstall重新安装系统中已经存在的软件,由于pam关夫认证,如果卸载了系统就不能用了,所以我们用reinstall 覆盖以前的安装。

 

 

转载于:https://my.oschina.net/liubaizi/blog/860889

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值