具体操作如下:
vim /etc/login.defs #编辑该文件
三. 注销历史命令
Shell 环境的命令历史机制为用户提供了极大的便利,但另一方面也给用户带来了潜在 的风险。只要获得用户的命令历史文件,该用户的命令操作过程将会一览无余,如果曾经在 命令行输入明文的密码,则无意之中服务器的安全壁垒又多了一个缺口。 Bash 终端环境中,历史命令的记录条数由变量 HISTSIZE 控制,默认为 1000 条。通过修改**/etc/profile** 文件中的 HISTSIZE 变量值,可以影响系统中的所有用户。
3.1 方法一:/etc/profile
修改**/etc/profile** 文件
具体操作如下:
vim /etc/profile #编辑该文件
3.2 方法二:~/.bash——logout
修改用户宿主目录中的 ~/.bash——logout 文件,添加清空历史命令的操作语句
具体操作如下:
vim ~/.bash_logout #在文件中添加清空历史命令的操作语句
**注:**还可以使用 history -c 和 clear命令临时清除历史命令
3.3 方法三:超时时间
设置闲置超时时间,当超过指定的时间没有任何输入时即自动注销终端。如此可以避免管理员不在时其他人员对服务器的误操作风险。
具体操作如下:
vim /etc/profile #编辑该文件
…
export TMOUT=600 #将该字段加入 /etc/profile文件中
闲置超时由变量TMOUT来控制,默认单位为秒
**注:**当正在执行程序代码编译,修改系统配置等耗时较长的操作时,应避免设置TMOUT变量。必要时可以执行 “unset TMOUT”命令取消TMOUT变量设置。
四. 切换用户和用户提权
大多数Linux服务器并不建议用户直接以root用户登录。这样的目的是为了减少因为误操作而导致的破坏,以及降低特权密码在不安全的网络中被泄露的风险。这时,需要为普通用户提供一种身份切换和权限提升机制,以便在必要的时候执行管理任务。
4.1 su命令
**格式:**su [options…] [-] [user [args…]]
**作用:**主要用来切换用户,可以切换为指定的另外一个用户,从而具有该用户的权限。
**注:**切换时需要对目标用户的密码进行验证(root用户切换到其他用户时除外)。此外,su 切换新用户后,使用 exit 退回至旧的用户身份,而不要再用 su 切换至旧用户,否则会生成很多的bash子进程,环境可能会混乱。
su 和 su- 差异
su | 仅仅切换身份,不切换用户环境,会导致某些命令运行出现问题或错误 |
su - | 加 - 选项,切换用户身份更彻底,表示进入到目标用户的登录shell环境 |
具体操作如下:
限制使用su命令的用户
默认情况下,任何用户都允许使用su命令,这样使得有机会可以反复尝试其他用户的登录密码,存在安全隐患。因此,我们需要借助pam_wheel认证模块,来规定只允许个别用户可以使用su命令进行切换。
具体操作如下:
gpasswd -a lisi wheel #将lisi用户加入 wheel组 root
vim /etc/pam.d/su #编辑认证配置文件
//找到配置文件中的这两行,根据需求更改即可
auth sufficient pam_ rootok.so
//取消其注释,这种状态下是允许所有用户间使用su命令进行切换的。
auth required pam_ wheel.so use_uid
//取消其注释,表示只有root用户和wheel组内的用户才可以使用su命令
- 默认情况,开启第一行,注释第二行,这种状态下是允许所有用户间使用su命令进行切换的。
2.如果开启第一,二行,表示只有root用户和wheel组内的用户才可以使用su命令
3.如果注释第一行,开启第二行,表示只有whee1组内的用户才能使用su命令,root用户也被禁用su命令
4.这两者都被注释的情况下,表示允许所有用户都能使用su命令。
但root下使用su切换到其他普通用户需要输入密码;
如果第一行不注释,则root使用su切换普通用户就不需要输入密码
(pam rootok. so模块的主要作用是使uid为0的用户,即root用户能够直接通过认证而不用输入密码。)
4.2 sudo命令
格式: sudo [参数] 命令名称
-h | 列出帮助信息 |
-l | 列出当前用户可执行的命令 |
-u用户名或者uid值 | 以指定的用户身份执行命令 |
-k | 清空密码的有效时间,下次执行sudo时需要再次进行密码验证 |
-b | 在后台执行指定的命令 |
-p | 更改询问密码的提示语 |
**作用:**允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,提升普通用户的执行权限。
**与su对比下的区别:**su的缺点之一在于必须要先告知超级用户root的密码,而多一个人知道root用户的密码就多一份风险,而sudo可以使一般用户不需要知道超级用户的密码即可获得权限。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注网络安全获取)
写在最后
在结束之际,我想重申的是,学习并非如攀登险峻高峰,而是如滴水穿石般的持久累积。尤其当我们步入工作岗位之后,持之以恒的学习变得愈发不易,如同在茫茫大海中独自划舟,稍有松懈便可能被巨浪吞噬。然而,对于我们程序员而言,学习是生存之本,是我们在激烈市场竞争中立于不败之地的关键。一旦停止学习,我们便如同逆水行舟,不进则退,终将被时代的洪流所淘汰。因此,不断汲取新知识,不仅是对自己的提升,更是对自己的一份珍贵投资。让我们不断磨砺自己,与时代共同进步,书写属于我们的辉煌篇章。
需要完整版PDF学习资源私我
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
升,更是对自己的一份珍贵投资。让我们不断磨砺自己,与时代共同进步,书写属于我们的辉煌篇章。**
需要完整版PDF学习资源私我
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-2lPELNF4-1712515859008)]