Loading

腾讯云Ubuntu远程接入Vscode并设置root免密码登录

最近在尝试Linux编程,想起自己还有一个腾讯云的服务器,就重装了Ubuntu,然后装了环境之后尝试用Vscode连接,但是发现用root用户无论如何都登录不上,后来把用户名换成ubuntu之后就能登录上了,但是在VsCode上写代码时又出现了很多问题。

1、某些文件夹打不开,后来发现是用户权限不够,只能去腾讯云那里登录上root用户,改一下对应文件夹的权限。

2、一些头文件无法正常添加,但是我明明记得装环境的时候测试过是正常的,我又特意去/usr/include/里面找了一下,头文件都在啊,为什么程序没法添加进去。我又想到了权限的问题,去腾讯云root用户里看了一下,果然,/usr/include/只有root用户有权限访问,我只能把其权限改成了755,然后就好了。

虽然能正常写程序了,但是心里一直不爽,因为知道了问题一直出在不能用root登录,于是折腾了半天,设置了一下root的密码,设置root能使用密码登录,添加了公钥等免密码登录,这下终于如意了,遂分享一下过程。

VsCode连接Ubuntu

VsCode扩展里面搜索并安装Remote Development插件,只需要安装这一个,其他的依赖会自动帮你安装好

image-20240328223232437

然后按照图示点击配置文件

image-20240328223517428

然后在文件里添加下面代码:

Host ubuntu    //服务器的名称
    HostName 127.0.0.1 //服务器的IP地址
    User root  //要登录的用户

然后VsCode就可以正常连接Ubuntu了,但这一步不是重点。

设置root用户登录

首先登录进入Ubuntu系统,

1、执行命令sudo passwd root,输入两次密码,就设置好了root用户的密码。

2、执行命令sudo vim /etc/ssh/sshd_config,这一步是为了修改配置文件,允许root用户使用密码登录

3、在文件里找到PermitRootLogin,将它后面改为yes (如果和我的一样没有这一项,直接添加一行就行) ,保存 (按i进入编辑模式,编辑完esc退出,:wq,保存并退出) 。

4、执行命令sudo service ssh restart,重启ssh服务。

设置免密登录

打开win10的PowerShell,输入ssh-keygen,输入三次回车,就直接生成了公钥和私钥。

然后在本机电脑的这个路径C:\Users\your_username\.ssh,找到id_rsa.pub这个文件,复制里面的内容。

image-20240328231240368

然后重要的一点来了,在Ubuntu系统中进入/root/.ssh路径中,创建authorized_keys文件,把内容粘贴进去。

网上很多教程是使用的默认路径~/.ssh,而Ubuntu的默认用户名是ubuntu,那样添加公钥只能实现ubuntu用户的免密登录,还是没法对root用户免密登录。

最后sudo service ssh restart,就可以实现root用户本机免密登录啦!

posted @ 2024-03-28 23:46  longwind7  阅读(123)  评论(0编辑  收藏  举报