千家信息网

Linux服务器如何实现安全初始化Shell脚本

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要为大家展示了"Linux服务器如何实现安全初始化Shell脚本",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Linux服务器如何实现安全初始化
千家信息网最后更新 2026年11月02日Linux服务器如何实现安全初始化Shell脚本

这篇文章主要为大家展示了"Linux服务器如何实现安全初始化Shell脚本",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Linux服务器如何实现安全初始化Shell脚本"这篇文章吧。

使用方法:将其复制,保存为一个shell文件,比如security.sh。将其上传到linux服务器上,执行sh security.sh,就可以使用该脚本了。建议大家在系统初始化后立即执行,然后创建了用户帐号和密码后就不要再改动了,以免影响重要文件的初始md5值。

脚本内容(源脚本来自晓辉的博客。以下内容为了方便阅读,对注释进行了翻译):

#!/bin/sh# desc: setup linux system security# author:coralzd# powered by www.freebsdsystem.org# version 0.1.2 written by 2011.05.03#设置账号passwd -l xfspasswd -l newspasswd -l nscdpasswd -l dbuspasswd -l vcsapasswd -l gamespasswd -l nobodypasswd -l avahipasswd -l haldaemonpasswd -l gopherpasswd -l ftppasswd -l mailnullpasswd -l pcappasswd -l mailpasswd -l shutdownpasswd -l haltpasswd -l uucppasswd -l operatorpasswd -l syncpasswd -l admpasswd -l lp# 用chattr给用户路径更改属性。chattr命令用法参考文末说明[1]chattr +i /etc/passwdchattr +i /etc/shadowchattr +i /etc/groupchattr +i /etc/gshadow# 设置密码连续输错3次后锁定5分钟sed -i 's#auth        required      pam_env.so#auth        required      pam_env.so\nauth       required       pam_tally.so  onerr=fail deny=3 unlock_time=300\nauth           required     /lib/security/$ISA/pam_tally.so onerr=fail deny=3 unlock_time=300#' /etc/pam.d/system-auth# 5分钟后自动登出,原因参考文末说明[2]echo "TMOUT=300" >>/etc/profile# 历史命令记录数设定为10条sed -i "s/HISTSIZE=1000/HISTSIZE=10/" /etc/profile# 让以上针对 /etc/profile 的改动立即生效source /etc/profile# 在 /etc/sysctl.conf 中启用 syncookieecho "net.ipv4.tcp_syncookies=1" >> /etc/sysctl.confsysctl -p # exec sysctl.conf enable# 优化 sshd_configsed -i "s/#MaxAuthTries 6/MaxAuthTries 6/" /etc/ssh/sshd_configsed -i  "s/#UseDNS yes/UseDNS no/" /etc/ssh/sshd_config# 限制重要命令的权限chmod 700 /bin/pingchmod 700 /usr/bin/fingerchmod 700 /usr/bin/whochmod 700 /usr/bin/wchmod 700 /usr/bin/locatechmod 700 /usr/bin/whereischmod 700 /sbin/ifconfigchmod 700 /usr/bin/picochmod 700 /bin/vichmod 700 /usr/bin/whichchmod 700 /usr/bin/gccchmod 700 /usr/bin/makechmod 700 /bin/rpm# 历史安全chattr +a /root/.bash_historychattr +i /root/.bash_history# 给重要命令写 md5cat > list << "EOF" &&/bin/ping/usr/bin/finger/usr/bin/who/usr/bin/w/usr/bin/locate/usr/bin/whereis/sbin/ifconfig/bin/vi/usr/bin/vim/usr/bin/which/usr/bin/gcc/usr/bin/make/bin/rpmEOFfor i in `cat list`do   if [ ! -x $i ];then   echo "$i not found,no md5sum!"  else   md5sum $i >> /var/log/`hostname`.log  fidonerm -f list

知识点[1]:有关chattr命令

chattr命令可以修改文件属性,达到保护文件和目录的作用。相比改变文件读写、执行权限的chmod命令,chattr命令可以控制更底层的文件属性。该命令十分强大,其中一些功能是由Linux内核版本来支持的,如果Linux内核版本低于2.2,那么许多功能不能实现。同样-D检查压缩文件中的错误的功能,需要2.5.19以上内核才能支持。另外,通过chattr命令修改属性能够提高系统的安全性,但是它并不适合所有的目录。chattr命令不能保护/、/dev、/tmp、/var目录。

此类属性的查看可以通过lsattr命令完成。

chattr命令的用法:chattr [ -RV ] [ -v version ] [ mode ] files...

最关键的是在[mode]部分,,即文件属性部分。[mode]部分是由+-=和[ASacDdIijsTtu]这些字符组合的。

+ :在原有参数设定基础上,追加参数。

- :在原有参数设定基础上,移除参数。

= :更新为指定参数设定。

A:文件或目录的 atime (access time)不可被修改(modified), 可以有效预防例如手提电脑磁盘I/O错误的发生。

S:硬盘I/O同步选项,功能类似sync。

a:即append,设定该参数后,只能向文件中添加数据,而不能删除,多用于服务器日志文 件安全,只有root才能设定这个属性。

c:即compresse,设定文件是否经压缩后再存储。读取时需要经过自动解压操作。

d:即no dump,设定文件不能成为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命令防止系统中某个关键文件被修改

# chattr +i /etc/fstab

然后试一下rm mv rename等命令操作于该文件,都是得到Operation not permitted 的结果

2、让某个文件只能往里面追加内容,不能删除,一些日志文件适用于这种操作

# chattr +a /data1/user_act.log

以上是"Linux服务器如何实现安全初始化Shell脚本"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

文件 命令 参数 安全 内容 属性 脚本 系统 服务器 服务 目录 功能 重要 内核 日志 篇文章 部分 帮助 关键 历史 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 华服互联网科技靠谱吗 科技类互联网 狮子座互联网科技 美国互联网前沿科技 互联网科技生活的内容 阿里互联网科技公司 互联网金融科技公司干啥的 苏州铭阳互联网科技有限公司 互联网科技大奖都有哪些公司 米聚互联网科技南京有限公司排面 996高科技互联网公司 工业互联网等科技实现智能化赋能 区块链结合互联网科技 黑云互联网科技有限公司 上海创道互联网络科技有限公司 同城互联网络科技 亚光科技低轨卫星互联网 10位科技互联网大佬 杭州科技互联网公司有哪些 银川新华互联网科技学校招聘 山东特亿宝互联网科技有限公司 圆梦互联网科技 互联网是不是新科技 没上市的科技互联网公司 浩特互联网科技 互联网女皇 腾讯科技 互联网高科技股票 中国互联网有什么科技含量 青岛科技大学互联网大赛研究生 长沙易易互联网科技有限公司
0