用sudo权限修改admin密码

在linux系统中,有时需要获取admin权限执行某些操作,假如用户只有sudo权限,则每次需要su到admin才行,步骤较为繁琐,下面介绍一种通过sudo权限修改admin密码的方法(修改的前提是不影响别的用户使用,在公用机器上不建议修改密码)。

步骤一:打通本地用户到root的信任关系

之所以要打通到root的信任关系,是因为只有root才有权限修改别的用户的密码。假设本地用户名为username,打通步骤如下:

a、进入本地的.ssh目录:cd ~/.ssh

b、计算本用户的公钥:ssh-keygen -t rsa(计算过程中如遇询问直接回车默认)值得注意的是,每计算一次公钥,则之前的公钥全部失效,因此假如已经有计算好的公钥文件id_rsa.pub,则无需再计算一次。正常情况下,计算之后会生成两个新文件:id_rsa、id_rsa.pub(注:不是id_dsa.pub)

c、打印本用户公钥内容:cat id_rsa.pub

d、将本用户公钥追加到root的ssh信任文件中:sudo vim /root/.ssh/authorized_keys,将上一步打印的公钥追加到最后一行之后(需另起一行)。注意,id_rsa.pub内容一般较长,追加到信任文件时不要按行复制,应该将id_rsa.pub的内容整体复制进去,以免产生换行符,导致建立信任关系失效

e、追加成功后保存。至此,本地用户username到root的信任关系已经打通,尝试用 ssh root@localhost 命令来验证,如果不提示输密码,则说明信任关系建立成功

f、ssh到root下,用如下命令修改admin密码:passwd admin   需输入两次新密码确认

g、修改成功后,建议将刚追加到/root/.ssh/authorized_keys中的本地用户公钥sudo删除,以免留下安全隐患


sudo su root”命令是Linux和Unix系统中用于切换到root用户的命令,它的作用是将当前用户切换为超级用户,可以执行系统中所有的命令和操作。默认情况下,执行“sudo su root”命令时,会要求输入当前用户的密码,以验证用户的身份。 然而,有时候用户会配置sudoers文件,允许某个用户在执行“sudo su root”命令时不用输密码。这样做的目的是为了提高操作的便利性和效率,减少频繁输入密码的麻烦。但是这种配置需要谨慎使用,因为超级用户的权限非常高,一旦被滥用可能造成严重的系统安全问题。 要实现不用输密码执行“sudo su root”命令,可以通过编辑/etc/sudoers文件来配置。具体操作是在终端中输入“sudo visudo”命令打开sudoers文件进行编辑,在文件中找到相应的配置行并修改。在默认的sudoers文件中,可以找到以下类似的配置行: ``` # User privilege specification root ALL=(ALL:ALL) ALL # Members of the admin group may gain root privileges %admin ALL=(ALL) NOPASSWD: ALL # Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) NOPASSWD: ALL ``` 在上述配置中,“NOPASSWD:”代表允许该用户组在执行命令时跳过密码验证。如果想要实现不用输密码执行“sudo su root”命令,可以在相应的配置行中添加“NOPASSWD:”,即: ``` %admin ALL=(ALL) NOPASSWD: /bin/su ``` 保存并退出sudoers文件后,再次执行“sudo su root”命令时,就不会要求输入密码了。 需要注意的是,修改sudoers文件需要以root用户身份进行,否则无法保存文件。此外,修改sudoers文件时应谨慎操作,避免配置不当导致安全漏洞或系统故障。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值