一、通过ssh连接服务器
1、打开vscode,进入拓展(Ctrl+Shift+X),下载拓展Remote - SSH。
2、点击远程资源管理器选项卡,选择远程(隧道/SSH)类别。
3、点击SSH配置。
4、在中间上部分弹出的配置文件中点击第一个....config。
5、在点进的config文件中输入以下内容。
ps:
这里的hostname是服务器的ip地址;
port端口号有就写上,没有的话可以不写;
user是服务器上用户的用户名
(例如:Linux中 “用户名”+@+“服务器ip地址” 就是访问服务器上用户的服务器用户访问地址。)
6、点击保存后点击刷新按钮。
7、这时候就可以看到刚刚创建的配置了。
8、Ctrl + Shift + P,打开命令窗口,输入ssh connect to host,选择第一个,
9、选择刚刚创建好的那个配置。
10、询问是否保存known_hosts,选择Continue。
11、输入服务器上用户的密码
12、该用户第一次访问该服务器可以看到该提示信息,耐心等待,这时是插件在服务器上面安装需要的依赖,大约会占用服务器150mb左右的空间。
13.如果长时间都一直是该情况,可以使用Ctrl + Shift + P,打开命令窗口,输入reload window来重新加载窗口(会要求你重新手动输入密码)。
14.最终显示如下页面就代表已经连接成功了。
二、设置免密登录
1、生成ssh使用的公钥/密钥对。(公钥给服务器用,秘钥给自己客户端用)
[在vscode终端或者cmd中进行如下代码输入]
(1)直接使用终端在用户本机生成公钥和私钥。输入命令ssh-keygen -t rsa
:
ssh-keygen -t rsa
(2)终端会出现以下提示,可以自己定义密钥名(就是自己定义文件所在位置),也可以直接跳过,默认在C盘中的C:\Users\“用户名”\.ssh中。
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/~your-local-username~/.ssh/id_rsa):
生成如下配置文件:
ps:
这里id_rsa.pub就是公钥,在服务器端使用;
id_rsa是私钥在用户端使用;
config文件是之前设置的hostname、port、user的那个文件
(3)接下来终端会提示输入密码 passphrase,这个密码为生成私钥的密码,将来防止私钥被其他人盗用。这里可以设定,也可以不输入任何密码,直接回车,再次提示输入密码,再次回车。生成新的密钥。
(4)在服务器路径下创建.ssh文件夹
# 创建目录
mkdir ~/.ssh
# 进入目录
cd ~/.ssh
# 创建 authorized_keys 文件
touch authorized_keys
# 把公钥文件id_rsa.pub拷贝到需要登录的服务器上(存储路径可以随意,但是之后加入到另一个文件尾部的时候注意路径地址。)
(5)将公钥id_rsa.pub填充到authorized_keys尾部
cat /home/id_rsa.pub >> ~/.ssh/authorized_keys
(6)配置 SSH 客户端(!!!!这里可以不设置。如果之前的步骤已经可以免密连接服务器,那这一步就不设置了!!!!)
打开你的 SSH 客户端(本机)配置文件(也就是前面生成的config文件,一般在C:\Users\YourUsername\.ssh\config
),添加配置(IdentityFile
私钥文件路径),以指定使用哪个私钥文件。下图红框为我添加的内容。
配置完成后即可免密远程登录其他服务器啦!!!~~~
参考博客:
https://blog.csdn.net/savet/article/details/131683156
服务器免密登录-CSDN博客
VSCode配置 SSH连接远程服务器+免密连接教程 - 知乎
Linux免密登录远程服务器_id_rsa.pub linux-CSDN博客