root 用户是系统中唯一的超级管理员,具有等同于操作系统的权限。比 Windows 的系统管理员的能力更大,足以把系统的大部分文件删掉,导致系统完全毁坏。所以,直接用 root 操作是相当危险的。在 Unix、Linux 系统中,除非确实需要,一般不推荐使用 root 。
Microsoft Azure 为了保证用户的系统安全,在创建服务模板时就已经禁用了 root 账户,可以使用 sudo
命令进行提权操作。
sudo 是 Linux 系统管理指令,允许系统管理员让普通用户执行一些或者全部的 root 命令,如 halt,reboot,su 等等。这样既减少了 root 用户的登录和管理时间,同样也提高了安全性。
在 Azure 的经典模式中,默认情况下是使用 azureuser【可以变更】进行 Linux 系统登陆。在新的 ARM 模型中,用户可以直接自己创建用户名称。
基于 Linux 创建的虚拟机,可以使用 XShell 或者 putty 登陆。
但是很多时候我们仍然需要使用 root 账户进行更多的操作,因此我们需要在 Linux中启用“root”账户。
设置 root 账户密码
通过 sudo passwd root
指令设置 root 超级用户密码,使用创建 Linux 时设置的用户名和密码登陆(我的账户是Deshun),然后输入两次 root 账户的密码,即可成功设置 root 账户密码。
[Deshun@my-blog ~]$ sudo passwd root We trust you have received the usual lecture from the local System Administrator. It usually boils down to these three things: #1) Respect the privacy of others. #2) Think before you type. #3) With great power comes great responsibility. [sudo] password for Deshun: Changing password for user root. New password: Retype new password: passwd: all authentication tokens updated successfully.
然后就可以使用 putty 等 SSH 客户端进行远程连接了。
标准 Linux 用户和 root 账户切换
使用自己设置的用户登陆,然后使用 su –
指令进行切换,输入 root 账户密码即可切换成 root 账户。
[Deshun@my-blog ~]$ su - Password: Last failed login: Sun Feb 2 13:47:37 UTC 2020 from 222.186.30.167 on ssh:notty There were 42 failed login attempts since the last successful login.
如果想从“root”账户切换到普通账户,只需要执行 su username -l
即可标准账户
[root@my-blog ~]# su Deshun -l Password: Last login: Sun Feb 2 13:57:20 UTC 2020 on pts/0 [Deshun@my-blog ~]$