你的位置:首页 > 操作系统

[操作系统]Linux登录自动切换root账户与历史命令优化


1:当我们Linux系统优化完成,会使用oldboy用户远程连接CRT登录,每次连接都需要使用sudo su - 或者su - 输入密码登录,请问如何在CRT连接的时候自动的切换到root账户,(提示:CRT连接的用户为oldboy,所以只能针对oldboy有此功能)

应用场景:当我们使用oldboy用户远程连接系统的时候总是需要使用sudo或者su命令切换到root账户,这样极大影响了我们的工作效率,我们可以通过修改oldboy用户家目录下.bash_profile配置文件,使其在登录是自动运行该命令。

解答:

方法1:通过修改oldboy用户家目录下的.bash_profile用户环境变量配置文件达到此效果

设置连接ssh服务器自动运行sudo su -命令的方法,可以通过修改oldboy的本地变量文件

[root@nfs01 ~]# vi /home/oldboy/.bash_profile             ßvi编辑

[root@nfs01 ~]# echo " sudo su -" >>/home/oldboy/.bash_profile            ßecho追加

sudo su -


建议:可以将以上配置加入到Linux优化项中,这样我们就不会每次使用oldboy登录都手动切换到root账户下啦!(仅限学习环境)

当我们重新使用oldboy用户登录的时候就会发现系统会自动切换到root账户,这样就可以省去很多繁琐的步骤。

.bash.profile配置文件详解:

.bash_profile是最重要的文件,该文件在用户每次登录到系统时被读取,其中包含的命令被bash执行。

该文件定义了用户登录账号的基本环境:包括PATH的路径及一些alias别名设置等。

如果更改了自己.bash_profile文件的内容,那么直到退出并再次登录,该文件被重新读取后,更改才会生效。如果您性子较急的话,请使用 source .bash_profile 让其更改立即生效。

提示:.bash_profile文件只被登录shell读取并执行,也就是说,如果您的初始shell为cshell。那么当您执行bash切换到bash环境时,并不会读取.bash_profile。此时读取的是.bashrc文件

 

2:请问如何在我们每次登录时将用户root以前的命令历史记录进行清除,防止黑客登录后查看root账户的命令历史记录!

应用场景:虽然我们在Linux优化时只记录5行命令,但是这对于我们生产环境中还是影响效率的,有时做些操作就需要直接调用历史命令,提高工作效率,但是发现历史命令只有5条,这就极大的影响了我们的工作效率。所以我们只需在每次远程登录系统登录的时候将历史命令自动清除即可。

首先将Linux优化时只记录5条命令历史记录的配置取消

解答:

方法1:此方法可取代Linux历史命令优化,达到很安全的水准

[root@backup ~]# vi .bash_profile

[root@backup ~]# echo -e " history -c \n > .bash_history" >>/root/.bash_profile

history -c

> .bash_history


建议:可以将以上配置加入到Linux优化项中,这样我们就不会担心命令历史被别人查看啦!(仅限学习环境)

方法2:也可以写入到.bash_logout配置文件中

关于命令历史记录的问题:可以使用日志审计功能专门对系统命令历史记录进行收集,即可解决某些童鞋的需求