ToB企服应用市场:ToB评测及商务社交产业平台

标题: SSH + VS Code远程连接:从账号密码到免密登录的攻略 [打印本页]

作者: 干翻全岛蛙蛙    时间: 2024-10-21 16:53
标题: SSH + VS Code远程连接:从账号密码到免密登录的攻略
一、账号密码登录服务器

以下是通过 SSH 使用账号密码登录到远程 Linux 服务器的详细步骤。
1. 打开终端


2. 输入 SSH 下令

在终端中输入 ssh 下令来连接到远程服务器。一样平常格式如下:
  1. ssh -p 端口号 root@xxxx.com
复制代码

3. 输入密码并登录

运行下令后,体系会提示你输入登录密码。直接在终端中输入服务器的密码并回车:
  1. root@xxxx.com's password:
复制代码
输入密码时,密码不会显示在屏幕上(出于安全性考虑),但仍然会记录输入。按下回车后,服务器验证密码是否正确。
登录乐成后的输出

假如密码正确,你会看到类似以下的输出,表示你已经乐成登录到远程服务器:
  1. Last login: Sun Sep 22 14:33:27 2024 from 192.168.x.x
  2. [root@server ~]#
复制代码

大概的提示和错误

首次登录提示: 假如是首次登录到该服务器,你会看到类似如下的提示,表示 SSH 客户端无法确认服务器的身份:
  1. The authenticity of host 'xxxx.xxx.xxxxx.com (xx.xx.xx.xx)' can't be established.
  2. RSA key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
  3. Are you sure you want to continue connecting (yes/no)?
复制代码
输入 yes 并回车,体系会将服务器的指纹生存到本地 ~/.ssh/known_hosts 文件中。
二、免密登录服务器

1. 创建 SSH 密钥的公钥和私钥

首先,需要在本地生成一对 SSH 密钥。公钥将被放置在远程服务器上,而私钥生存在本地,用于认证登录。
1.1 生成 SSH 密钥对

打开下令行终端(Windows 用户可以使用 Git Bash、PowerShell 或 Windows Subsystem for Linux,Linux/Mac 用户使用终端),运行以下下令来生成 RSA 密钥对:
  1. ssh-keygen -t rsa -C "your_email@example.com"
复制代码

1.2 输入密钥存储位置

体系会提示你选择存储私钥的位置。默认存储在 ~/.ssh/id_rsa,直接按 Enter 使用默认路径:
  1. Generating public/private rsa key pair.
  2. Enter file in which to save the key (/home/your_user/.ssh/id_rsa):
复制代码
1.3 设置密码(可选)

体系会询问你是否为私钥设置密码短语,可以选择设置以增加安全性。假如不需要,直接按 Enter 跳过:
  1. Enter passphrase (empty for no passphrase):
  2. Enter same passphrase again:
复制代码
完成后,你会在终端看到类似以下的输出,表示密钥已经乐成生成:
  1. Your identification has been saved in /home/your_user/.ssh/id_rsa.
  2. Your public key has been saved in /home/your_user/.ssh/id_rsa.pub.
复制代码
现在你有了一个私钥文件 id_rsa 和一个公钥文件 id_rsa.pub。

2. 发送公钥到远程服务器

将生成的公钥文件发送到远程服务器的 ~/.ssh/authorized_keys 文件中,允许你通过私钥登录远程服务器。
2.1 使用 ssh-copy-id 将公钥传到服务器

执行以下下令,将你的公钥复制到服务器(-p 参数指定端标语,默以为 22):
  1. ssh-copy-id -p 22 root@xxxx.com
复制代码
2.2 过程说明

首次运行 ssh-copy-id 时,需要输入服务器的密码来完成公钥的传输:
  1. root@xxxx.com's password:
复制代码
输入密码后,ssh-copy-id 会将公钥上传到服务器的 ~/.ssh/authorized_keys 文件中。假如乐成,你会看到类似以下输出:
  1. Number of key(s) added: 1
  2. Now try logging into the machine, with:   "ssh -p 12803 root@xxxx.com
  3. "
  4. and check to make sure that only the key(s) you wanted were added.
复制代码

3. 验证无密码登录

你现在应该可以或许通过 SSH 无需密码直接登录到远程服务器。使用以下下令登录:
  1. ssh -p 12803 root@xxxx.com
复制代码
假如一切正常,你将无需输入密码,直接登录到远程服务器。

4. 手动上传公钥(假如 ssh-copy-id 不可用)

假如 ssh-copy-id 下令不可用,你可以手动将公钥复制到服务器。
4.1 显示本地公钥内容

首先,查看你的公钥内容:
  1. cat ~/.ssh/id_rsa.pub
复制代码
将输出的内容复制下来。
4.2 连接服务器并手动粘贴公钥

登录到远程服务器,并将公钥粘贴到 ~/.ssh/authorized_keys 文件中:
  1. ssh -p 12803 root@xxxx.com
复制代码
进入服务器后,执行以下下令:
  1. mkdir -p ~/.ssh
  2. echo "your_public_key_contents" >> ~/.ssh/authorized_keys
  3. chmod 600 ~/.ssh/authorized_keys
  4. chmod 700 ~/.ssh
复制代码
替换 your_public_key_contents 为你复制的公钥内容。如许公钥也会正确添加到服务器上。
三、vscode免密登录服务器

1. 安装 Remote-SSH 插件

在 VS Code 中安装 Remote-SSH 插件

2. 添加 SSH 配置

在 Remote-SSH 插件中,添加新的 SSH 连接配置。
点击 VS Code 左侧栏中的 Remote Explorer 图标(通常是一个盘算机图标),然后在顶部找到 Remote-SSH 的部分。
点击右上角的 “+” 按钮,输入完整的 SSH 下令,按回车键确认添加。

3. 选择配置文件并更新 config 文件

在你添加 SSH 下令后,VS Code 会询问你生存 SSH 配置的文件位置。
3.1 选择 config 文件

选择本地用户目次的 ~/.ssh/config 文件,用于存储 SSH 连接的配置信息。

3.2 编辑 config 文件

VS Code 会自动打开并编辑 ~/.ssh/config 文件。确保该文件格式正确,并添加如下配置:
  1. Host myserver
  2.     HostName xxxx.com
  3.     User root
  4.     Port 12803
  5.     IdentityFile ~/.ssh/id_rsa
复制代码

4. 通过箭头或新建窗口连接服务器

完成 SSH 配置后,你可以通过 Remote-SSH 插件直接连接到服务器。
假如你按照之前的教程设置了 SSH 免密登录(将公钥上传到服务器),这时连接时将不需要输入密码。假如没有设置免密登录,VS Code 会提示你输入密码。

5. 注意事项


建议

通过 VS Code 的 Remote-SSH 插件,你可以轻松地远程连接到服务器,并通过设置 SSH 免密登录,避免每次都输入密码。
注意事项

建议

通过 VS Code 的 Remote-SSH 插件,你可以轻松地远程连接到服务器,并通过设置 SSH 免密登录,避免每次都输入密码。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4