在登陆服务器的时候,特别是新购买的服务器的时候,使用root
账户登陆,即使输入了正确的密码,也还一遍一遍的需要输入密码的话,那就说明,是服务器并没有开通root的远程登陆权限。
当遇到这个问题的时候,就需要进入云服务商后台进行在线设置。
这里以腾讯云服务器为例进行设置。
首先登陆腾讯云服务网站,扫码并认证以后。进入到实例界面。并单击对应服务器的登陆
链接。
在这里,使用QQ浏览器的时候,要注意弹窗拦截。
进入控制面板以后,可以看到,腾讯云服务器的默认用户名是ubuntu
。
输入我们在创建服务器的时候填写的密码。点击登陆。
登陆成功以后,可以在命令终端里,看到用户名是ubuntu
我们接下来要作的分别是
修改root用户名的密码
修改sshd配置文件
第一步,修改root
用户名的密码。
命令输入:
sudo passwd root
在下面输入root用户的密码,在这里要注意,输入的时候,命令终端不会有任何反应。所以,在这里不能按错任何一个键,甚至退格键都不行。如果输入错了,直接打两遍回车。
输入完第一遍以后,打回车,再输入一遍,注意,得和前面一遍完全一样,包括大小写。输入完以后,打回车。
当我们在代码里看到
passwd: password updated successfully
以后,就代表密码已经修改成功了。
密码修改不成功是这样的提示。
可以再次输入sudo passwd root
进行修改。
密码修改完成后,有的机器可以直接从本地进行root远程登陆,而绝大多数机器不能从本地远程登陆到服务器。
这是因为服务器的sshd配置文件限制root用户远程登陆服务器导致的,在这里,我们可以在服务器上对sshd的配置文件进行修改,以达到让root用户远程登陆服务器的目的。
输入命令sudo nano /etc/ssh/sshd_config
并打回车。
进入到配置文件修改界面。
先介绍一下服务器的nano
命令。
Linux的nano命令功能对标的是Windows的记事本功能。
可以简单的把他理解为Linux上的记事本。
使用键盘的
上
下
左
右
键进行移动光标。
移动到对应位置以后,可以输入文字或删除文字。
保存
Ctrl + o
直接回车可以保存。不想保存可以在Ctrl + o
后按Ctrl + c
退出保存界面。
退出Ctrl + x
为退出nano
编辑器,如果存在未保存的操作,会提示是否保存,按Y
保存,按N
不保存,按Ctrl + c
取消退出动作。
我们需要在这个配置文件中编辑如下两个参数。
#Port 22
前面的#
号修改为Port 22
。#PermitRootLogin prohibit-password
为PermitRootLogin yes
,注意删除前面的#
号。下面为修改后的sshd.config配置文件
修改完以后 Ctrl + o
回车 Ctrl + x
即可退出编辑状态。
之所说推荐使用nano
来进行配置文件编辑而不使用vim
等其它编辑命令,主要是因为nano
比vim
对Linux新人操作起来更友好。
退出以后,再输入命令
sudo service sshd restart
重启sshd
登陆服务。
重启成功以后,没有任何提示信息。
这时,我们再从客户端使用root
和刚刚设置的密码进行登陆。
成功。