本文最后更新于 2018-12-15【2050 天前】,文中所描述的信息可能已发生改变,请谨慎使用。如有问题或建议,欢迎在文章底部留言参与讨论!

Linux 服务器为了防止 ssh 爆破,一般要对 root 做些限定,常用的操作是:

  • 修改 ssh 默认端口(常用)
  • 禁止密码登陆,只使用密钥进行登录(常用)
  • 禁止 root 远程登录(常用)
  • 修改 root 用户名(极限骚操作,相信基本上没人用)

方法

但如果真的是想要修改 root 用户名,也是可以的,只需要修改 /etc/passwd/etc/shadow 即可

修改 /etc/passwd

vi /etc/passwd 
按 i 键进入编辑状态
修改第 1 行第 1 个 root 为新的用户名
按 esc 键退出编辑状态,并输入 :wq 保存并退出

修改 /etc/shadow

vi /etc/shadow
按 i 键进入编辑状态
修改第 1 行第 1 个 root 为新的用户名 
按 esc 键退出编辑状态,并输入 :wq 保存并退出
两次修改的用户名要一致!

原理解释

在 Linux 中,/etc/passwd 文件记录了用户的基本属性,每一行记录对应着一个用户,用冒号分隔不同的属性,分别是:
用户名(login_name):口令(passwd):用户标识号(UID):组标识号(GID):注释性描述:主目录:登录Shell

其中,现在大多数 Linux 系统都使用了 shadow 技术,把真正的加密后的用户口令字存放到 /etc/shadow 文件中,而在 /etc/passwd 文件的口令字段中只存放一个特殊的字符,例如 x 或者 *。
用户标识号(UID)是一个整数,系统内部用它来标识用户,0 是超级用户 root 的标识号,1-99 由系统保留作为管理账号。
组标识号(GID)字段记录的是用户所属的用户组,与 /etc/group 文件中的记录对应。

Linux 中 /etc/shadow 文件中的记录行与 /etc/passwd 中的一一对应,它由 pwconv 命令根据 /etc/passwd 中的数据自动产生。它的文件格式与 /etc/passwd 类似,由若干个字段组成,字段之间用冒号(:)隔开。

因此,如果要修改 /etc/passwd 中的用户名,需要同时修改 /etc/shadow 文件

文章目录


推荐使用:阿里云 云翼计划学生优惠、ECS、轻量应用等产品与服务【 点击注册

本文作者:Quanyin Tang

本文链接:Linux 下修改 root 的用户名 - https://www.imtqy.com/modify-username-root.html

版权声明:如无特别声明,本文即为原创文章,仅代表个人观点,版权归 Quanyin 所有,未经允许禁止转载,经授权转载请注明出处!