Linux系统平安Shell剧本用于Linux系统的平安初始化剧本 | ||||||||||||||||
鹰潭网站建设www.diyphp.net 下面的这段Linux系统平安Shell剧本用于Linux系统的平安初始化剧本,可以在效劳器系统装置终了之后立刻执行以疾速树立起效劳器的平安防护。开始的剧本由晓辉撰写,在数次修正之后曾经很多使用在某大型媒体网站系统中。修正了一些bug,曾经在CentOS5.5x86_64下经过,当前在一些没有硬件防火墙的效劳器上运用。 运用办法:将其复制,保管为一个shell文件,比方security.sh。将其上传到linux效劳器上,执行shsecurity.sh,就可以运用该剧本了。建议人人在系统初始化后立刻执行,然后创立了用户帐号和暗码后就不要再改动了,以免影响主要文件的初始md5值。 剧本内容(以下内容为了便利阅读,对注释进行了翻译): #!binh #desc:setuplinuxsystemsecurity #author:coralzd #poweredbywww.baidu.org.tw #version0.1.2writtenby2011.05.03 #设置账号 passwd-lxfs passwd-lnews passwd-lnscd passwd-ldbus passwd-lvcsa passwd-lgames passwd-lnobody passwd-lavahi passwd-lhaldaemon passwd-lgopher passwd-lftp passwd-lmailnull passwd-lpcap passwd-lmail passwd-lshutdown passwd-lhalt passwd-luucp passwd-loperator passwd-lsync passwd-ladm passwd-llp #用chattr给用户途径更改属性。chattr敕令用法参考文末阐明[1] chattr+ietcpasswd chattr+ietchadow chattr+ietcgroup chattr+ietcgshadow #设置暗码延续输错3次后锁定5分钟【 Linux公社www.Linuxidc.com 】 sed-i‘s#authrequiredpam_env.so#authrequiredpam_env.so
authrequiredpam_tally.soonerr=faildeny=3unlock_time=300
authrequiredlibecurity$ISApam_tally.soonerr=faildeny=3unlock_time=300#’etcpam.dystem-auth #5分钟后主动登出,缘由参考文末阐明[2] echoTMOUT=300″etcprofile #前史敕令记载数设定为10条 sed-isHISTSIZE=1000HISTSIZE=10etcprofile #让以上针对etcprofile的改动立刻生效 sourceetcprofile #在etcysctl.conf中启用syncookie echonet.ipv4.tcp_syncookies=1″etcysctl.conf sysctl-p#execsysctl.confenable #优化sshd_config sed-is#MaxAuthTries6MaxAuthTries6etchhd_config sed-is#UseDNSyesUseDNSnoetchhd_config #限制主要敕令的权限 chmod700binping chmod700usrbinfinger chmod700usrbinwho chmod700usrbinw chmod700usrbinlocate chmod700usrbinwhereis chmod700binifconfig chmod700usrbinpico chmod700binvi chmod700usrbinwhich chmod700usrbingcc chmod700usrbinmake chmod700binrpm #前史平安 chattr+aroot.bash_history chattr+iroot.bash_history #给主要敕令写md5 catlistEOF binping usrbinfinger usrbinwho usrbinw usrbinlocate usrbinwhereis binifconfig binvi usrbinvim usrbinwhich usrbingcc usrbinmake binrpm EOF foriin`catlist` do if[!-x$i];then echo$inotfound,nomd5sum! else md5sum$ivarlog`hostname`.log fi done rm-flist 常识点[1]:有关chattr敕令 chattr敕令可以修正文件属性,到达维护文件和目次的效果。比拟改动文件读写、执行权限的chmod敕令,chattr敕令可以节制更底层的文件属性。该敕令非常强壮,个中一些功用是由Linux内核版原本支撑的,假如Linux内核版本低于2.2,那么很多功用不克不及完成。相同-D反省紧缩文件中的错误的功用,需求2.5.19以上内核才干支撑。别的,经过chattr敕令修正属功能够进步系统的平安性,然则它并不合适一切的目次。chattr敕令不克不及维护、dev、tmp、var目次。 此类属性的检查可以经过lsattr敕令完成。 chattr敕令的用法:chattr[-RV][-vversion][mode]files… 最要害的是在[mode]局部,,即文件属性局部。[mode]局部是由+-=和[ASacDdIijsTtu]这些字符组合的。 +:在原有参数设定根底上,追加参数。 -:在原有参数设定根底上,移除参数。 =:更新为指定参数设定。 A:文件或目次的atime(accesstime)不成被修正(modified),可以有用预防例如手提电脑磁盘IO错误的发作。 S:硬盘IO同步选项,功用相似sync。 a:即append,设定该参数后,只能向文件中添加数据,而不克不及删除,多用于效劳器日记文件平安,只要root才干设定这个属性。 c:即compresse,设定文件能否经紧缩后再存储。读取时需求经由主动解压操作。 d:即nodump,设定文件不克不及成为dump顺序的备份目的。 i:设定文件不克不及被删除、更名、设定链接关系,还不克不及写入或新增内容。i参数关于文件系统的平安设置有很大协助。 j:即journal,设定此参数使妥当经过mount参数:data=ordered或许data=writeback挂载的文件系统,文件在写入时会先被记载(在journal中)。假如filesystem被设定参数为data=journal,则该参数主动掉效。 s:保护秘密性地删除文件或目次,即硬盘空间被悉数回收。 u:与s相反,当设定为u时,数据内容其实还存在磁盘中,可以用于undeletion. 各参数选项中常用到的是a和i。a选项强迫只可添加不成删除,多用于日记系统的平安设定。而i是更为严厉的平安设定,只要superuser(root)或具有CAP_LINUX_IMMUTABLE处置才能(标识)的历程可以施加该选项。 使用实例: 1、用chattr敕令避免系统中某个要害文件被修正 spanstyle=COLOR:rgb(0,128,0) #chattr+ietcfstab 然后试一下rmmvrename等敕令操作于该文件,都是获得Operationnotpermitted的后果 2、让某个文件只能往里面追加内容,不克不及删除,一些日记文件合用于这种操作 spanstyle=COLOR:rgb(0,128,0) #chattr+adata1user_act.log 常识点[2]:为何要设置5分钟后主动登出 因为客户的维护人员经常上岸上去后经过直接封闭TERM端口不合法退出telnet,形成系统的pts历程越来越多,一个月下来居然近百,当历程过多的时分系统就会发生报警。标准操作应该是用exit或许ctrl+D,然则其别人并不如许操作,所以我们界说了echoTMOUT=300″gt;etcprofile这一项内容,是让效劳器主动剔除300秒没有任何举措的客户端。当然了这一项人人可以依据实践需求而决议能否添加。 |