-
Notifications
You must be signed in to change notification settings - Fork 34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
使用 root 用户登陆到腾讯云的主机 #64
Comments
kao,终于找到原因了。跟楼主一样折腾了半天,原来密钥在ubuntu目录。 |
感谢感谢,腾讯云竟然搜不到一点解决方案 |
断断续续折腾挺久了,非常感谢楼主的解决方案! |
把这一项 |
cat /home/ubuntu/.ssh/authorized_keys >> /root/.ssh/authorized_keys 这个步骤能否再详细点? 小白弄不出来,就差这么一下了。后面不会用这个配置的服务器了,弄了一下午。 |
@pinguinPeter 要先按照第二步设置密码,然后输入 总之就是腾讯云默认只配置了 ubuntu 这个账户的公钥,没有配置root这个账户的公钥,所以无法使用密钥直接登录 root 账户。所以需要手动将公钥添加到 root/.ssh/authorized_keys 这个文件里。 |
这样弄不出来,能否把操作步骤截个图出来下!谢谢 |
@pinguinPeter 这样应该就可以了啊,更改过 |
这样弄不出来,能否把操作步骤截个图出来下!谢谢 ok |
确实有用! |
这个配置起来就是坑 |
很好的思路,我也解决了,谢谢 |
前段时间趁腾讯云做活动的时候买了个低配的主机,想了想总不能拿来吃灰吧,所以决定在主机上装个 Docker 玩玩。腾讯云默认提供的账户是 ubuntu,安装 Docker 总是需要敲 sudo,所以我想直接用 ssh 连接到 root 用户,没想到踩了很长时间的坑,这里写个流水账记录一下过程。
第一步:配置使用密匙登陆到主机
从网页登陆到主机无法方便的复制文件到主机里,所以我使用了密匙登陆的方式,这个步骤比较简单:
/home/ubuntu/.ssh/authorized_keys
文件中。mv path/to/id_rsa_test ~/.ssh
并且修改文件权限chmod 600 ~/.ssh/id_rsa_test
,否则会报“Permissions 0777 for '/Users/username/.ssh/id_rsa_test' are too open.”的错误。vim ~/.ssh/config
并添加如下配置:走完上面的步骤之后,运行
ssh xxx.xxx.xxx.xxx
就可以连接到你的主机了。第二步:为 root 账户设置密码
刚买的主机是没有给 root 账户设置密码的,但也很简单,使用 ubuntu 账户运行
sudo passwd
设置密码就可以了,之后你就可以运行su
从 ubuntu 切换到 root 了,但是每次切换的时候都需要输入密码。第三步:直接用 root 登陆到主机
这一步一直不成功,花了我很长时间。
网上给出的方案非常简单。登陆到主机后:
sudo vim /etc/ssh/sshd_config
PermitRootLogin
的值改为yes
,然后保存并退出service ssh restart
重启 sssh 服务但是我用这种方式登陆时报错了:
我先是登陆到主机上查看了日志:
tac /var/log/auth.log | grep sshd
,最新的一条显示Connection closed by xxx.xxx.xx.xx [preauth]
,其中 xxx 是我本地电脑的 IP 地址,所以这说明连接是被我本地电脑关闭的。然后我开始 Google,先搜索
permission denied publickey
,得到的内容都是关于用 ssh 连接 GitHub 的报错,原因是没有将公匙添加到 GitHub 中。但是我的公匙已经由腾讯云添加过了,所以不应该是这个原因导致的。然后我开始搜索
we did not send a packet, disable method
,这下就五花八门了,大多都是跟权限有关,包括:~
的权限~/.ssh
的权限~/.ssh/authorized_keys
文件的权限我一条条比对了这三个文件(夹)的权限,为此还顺便了解了一下 Linux 的权限,但是一一比对后发现主机上的权限都是对的,我也是在这个过程中才知道腾讯云把我关联的公匙放在了
/home/ubuntu/.ssh/authorized_keys
里。一晚上过去了,能折腾的办法都折腾了,还是不能用 root 账户登陆上去,只能用 ubuntu 登陆上去之后通过
su
切换到 root。折腾一番后我又回想了我整个折腾的过程,突然想到一点:腾讯云把我的公匙放在了 /home/ubuntu/.ssh/authorized_keys 是不是意味着只能用 ubuntu 用户登陆?如果要登陆到 root 是不是也要将公匙放在 /root/.ssh/authorized_keys 下?我切换到 root 用户,检查了一下 /root/.ssh/authorized_keys 文件是空的。于是我运行
cat /home/ubuntu/.ssh/authorized_keys >> /root/.ssh/authorized_keys
将 ubuntu 的公匙写进了 root 里,再在电脑上用 root 登陆……就成功了!总结
在尝试登陆时还遇到一个错误:
[email protected]: Connection reset by peer.
。一开始以为是公司网络的问题,但让同事试着登陆腾讯云的主机却没有问题,为此我还提交了工单,结果晚上回家后在家登陆就成功了 😂回过头来看了一下,我想我还是应该买本书学习一下 Linux 系统了 😂
The text was updated successfully, but these errors were encountered: