文章目录
- 使用密钥文件 SSH 登录服务器
-
- 1. Windows端
-
- 方法 1:使用 `ssh` 命令指定密钥文件
- 方法 2:使用 SSH 配置文件
- 2. macOS端
-
- 方法 1:使用 `ssh` 命令指定密钥文件
- 方法 2:使用 SSH 配置文件
- 方法 3:使用 `ssh-add` 命令(可选)
- 3. 在多平台使用连接工具
-
- 使用 MobaXterm 指定私钥文件
- 使用 Tabby 指定密钥文件
- 使用其他工具的通用方法
使用密钥文件 SSH 登录服务器
1. Windows端
在 Windows 上,可以通过指定存放在本地的私钥文件,来实现免密码登录服务器。
方法 1:使用 ssh 命令指定密钥文件
- 在 Windows 上,可以使用 PowerShell 或命令提示符(CMD)来运行 SSH 命令。
-
当连接到服务器时,可以使用 i 参数指定私钥文件的位置。例如,如果私钥文件存储在 C:\\\\Users\\\\YourUsername\\\\.ssh\\\\id_rsa,使用以下命令:
ssh -i C:\\\\Users\\\\YourUsername\\\\.ssh\\\\id_rsa user@server_ip
-
使用指定的私钥文件 id_rsa 来登录服务器 server_ip,并且如果公钥已经在服务器的 authorized_keys 文件中配置好,就可以实现免密码登录。
方法 2:使用 SSH 配置文件
- 在 C:\\\\Users\\\\YourUsername\\\\.ssh 目录下创建一个名为 config 的文件,如果这个文件已存在,可直接编辑。
-
在 config 文件中,指定特定服务器的配置,包括使用哪个私钥文件。例如:
Host myserver
HostName server_ip
User user
IdentityFile C:\\\\Users\\\\YourUsername\\\\.ssh\\\\id_rsa -
使用以下命令登录服务器,不必每次都指定密钥文件路径:
ssh myserver
2. macOS端
在 macOS 上,通过指定存放在本地的私钥文件,实现免密码登录服务器。方法和 Windows 类似,主要是通过 ssh 命令或配置 SSH 配置文件来完成。
方法 1:使用 ssh 命令指定密钥文件
- 在 macOS 上,可使用终端(Terminal)来运行 SSH 命令。终端可以通过 Spotlight 搜索 “Terminal” 来启动。
-
当连接到服务器时,可以使用 i 参数指定私钥文件的位置。例如,如果私钥文件存储在 ~/.ssh/id_rsa,可以使用以下命令:
ssh -i ~/.ssh/id_rsa user@server_ip
-
这条命令会使用指定的私钥文件 id_rsa 来登录服务器 server_ip,并且如果公钥已经在服务器的 authorized_keys 文件中配置好,就可以实现免密码登录。
方法 2:使用 SSH 配置文件
- 在 ~/.ssh 目录下创建一个名为 config 的文件,如果这个文件已经存在,可以直接编辑。
-
在 config 文件中,可以指定特定服务器的配置,包括使用哪个私钥文件。例如:
Host myserver
HostName server_ip
User user
IdentityFile ~/.ssh/id_rsa -
此时即可以使用以下命令来登录服务器,而不必每次都指定密钥文件路径:
ssh myserver
方法 3:使用 ssh-add 命令(可选)
如果在多个 SSH 会话中使用相同的私钥文件,而不必每次都输入 -i 参数,可以使用 ssh-add 命令将私钥加载到 SSH 代理中:
启动 SSH 代理(如果尚未启动):
eval "$(ssh-agent -s)"
将私钥添加到 SSH 代理:
ssh-add ~/.ssh/id_rsa
- 将允许在当前终端会话中使用私钥文件登录到服务器,而无需每次都指定 i 参数。
3. 在多平台使用连接工具
使用 MobaXterm 指定私钥文件
步骤 1:启动 MobaXterm 并创建新的 SSH 会话
- 启动 MobaXterm 应用程序。
- 在 MobaXterm 的主界面上,点击左上角的 “Session” 按钮来创建一个新的会话。
- 在弹出的会话类型窗口中,选择 “SSH”。
步骤 2:配置 SSH 连接信息
- 在 “Remote host” 字段中,输入要连接的服务器的 IP 地址或主机名。
- 在 “Specify username” 字段中,输入远程服务器上使用的用户名。
步骤 3:指定私钥文件
- 在会话配置窗口的 “Advanced SSH settings” 选项卡下,找到 “Use private key” 选项。
- 勾选 “Use private key” 复选框,然后点击右边的浏览按钮(文件夹图标)来选择存储在本地的私钥文件。例如,选择 C:\\\\Users\\\\YourUsername\\\\.ssh\\\\id_rsa。
- 配置完成后,点击 “OK” 保存 SSH 会话配置。
步骤 5:连接到远程服务器
- 在 MobaXterm 的主界面上,左侧的会话列表中会显示刚刚创建的 SSH 会话。
- 双击该会话,MobaXterm 会自动使用指定的私钥文件连接到远程服务器。
- 如果公钥已经在服务器的 ~/.ssh/authorized_keys 文件中配置好,并且私钥没有设置额外的 passphrase,那么将直接登录到服务器而不需要输入密码。
注意事项
- 如果私钥文件设置了 passphrase,第一次连接时需要输入 passphrase。如果希望在多个会话中避免重复输入,可以使用 MobaXterm 内置的密钥代理功能。
- 可保存多个 SSH 会话,每个会话可使用不同的私钥文件。
使用 Tabby 指定密钥文件
- 打开 Tabby 并创建一个新的 SSH 会话。
- 在会话配置页面,输入服务器的 IP 地址、用户名等信息。
- 在 SSH 会话配置中,有个选项可以指定私钥文件。
- 选择本地存储的私钥文件路径(如 ~/.ssh/id_rsa)。
- 保存配置后,直接连接到服务器。Tabby 将使用指定的私钥文件进行身份验证,从而实现免密码登录。
使用其他工具的通用方法
多数 SSH 客户端工具都有类似的功能,具体步骤无非以下大差不差:
评论前必须登录!
注册