vscode ssh远程连接到Linux并实现免密码登录
文章目录
- vscode ssh远程连接到Linux并实现免密码登录
- 一、安装VSCode扩展
- 二、Linux侧工作
- 三、连接
- 四、实现免密登录
一、安装VSCode扩展
- 扩展一栏搜索remote
- 找到
Remote Development
插件 - 直接点击
Install
安装即可
二、Linux侧工作
Ubuntu18.04下安装配置SSH服务_ubuntu18.04 ssh yrs-CSDN博客
1.安装ssh服务
2.启动服务
-
执行命令即可安装
sudo apt install openssh-server -y
-
检查服务是否已经运行
ps -ef | grep sshd
3.确定ip
ifconfig
IP地址不显示解决办法:
Linux问题(一)Ubuntu的IP地址不显示问题_ubuntu ip不显示数字-CSDN博客
三、连接
点击左下角的图标
选择Connect Current Window to Host…
选择Add New SSH Host
命令格式:ssh 用户名@地址
ssh yckt@192.168.189.166
默认选项即可
看到右下角的弹窗Host added,添加完成!
到这里就可以正常操作了,重复刚才的步骤
可以看到刚才添加的Host,选择它
选择Linux
选择Continue
最后一步!输入密码!回车!结束
四、实现免密登录
VSCode - 使用VSCode远程连接到Linux并实现免密码登录_vscode连接linux-CSDN博客
VsCode配置ssh免密远程登录 - 安全兔 - 博客园
按照上面任意一个免密操作都行,本质都是公钥的内容的同步,
遇到操作完之后依旧无法实现免密登录的问题;可以
cat /etc/ssh/sshd_config 查看该ssh配置文件中下面这段设置是否未启用PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
未启用参考:
RSAAuthentication yes
PubkeyAuthentication yes
#AuthorizedKeysFile %h/.ssh/authorized_keys
如果被注释掉了就打开;然后执行
sudo systemctl restart sshd 重启sshd服务
补充:
虚拟机重启后,ip地址改变导致ssh连接失败问题解决办法
修改网络启动时就会运行的配置文件
sudo nano /etc/network/interfaces
修改如下:
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
auto ens33
iface ens33 inet staticaddress 192.168.189.166netmask 255.255.255.0gateway 192.168.189.1dns-nameservers 8.8.8.8 8.8.4.4
注解:
auto lo 和 iface lo inet loopback 是 /etc/network/interfaces 配置文件中的设置,用于配置本地回环接口(loopback interface)。回环接口是计算机网络中的一个特殊接口,主要用于计算机与自身进行网络通信。
各项含义:
auto lo:表示在系统启动时自动启用回环接口(lo)。
iface lo inet loopback:定义回环接口的配置类型为 loopback,意味着它仅用于本地通信,不会与网络中的其他设备通信。
删除这些配置会导致:
本地回环接口将无法正常工作。这意味着,系统中的某些服务和应用程序可能无法进行本地通信,因为它们通常通过回环接口来与系统内部其他进程进行通信(例如,localhost 或 127.0.0.1)。
不会影响正常的外部网络连接,但可能会导致一些依赖回环接口的服务(如数据库、Web 服务器等)无法正常工作。
因此,通常建议保留这些配置,不删除它们,除非有特殊需求。
需要修改内容:
address 192.168.189.166 改成自己的gateway 192.168.189.1 自己的ip后最后一位改成1
保存退出
sudo systemctl restart network
执行命令让而网络服务重启,来让配置生效;
自测试
我的是这个问题导致的,如遇其他问题请自行百度,加油!