A. Windows使用密钥对(key-pair)远程连接Linux服务
要在Windows上使用密钥对远程连接Linux服务,需要按照以下步骤操作:
生成SSH密钥对:
- 在Windows客户端上,打开命令行工具。
- 执行sshkeygen命令,系统会自动生成一对SSH密钥对,包括私钥和公钥。
配置Linux服务器的SSH服务:
- 登录目标Linux服务器。
- 使用vim或其他文本编辑器打开/etc/ssh/sshd_config文件。
- 取消注释PasswordAuthentication no以禁用密码登录。
- 确保RSAAuthentication yes和PubkeyAuthentication yes已启用。
- 确认AuthorizedKeysFile配置项已正确设置,通常指向~/.ssh/authorized_keys。
- 保存并重启sshd服务,使配置生效。
将公钥复制到Linux服务器:
- 在Windows客户端上,使用sshid命令或手动将生成的公钥复制到Linux服务器的~/.ssh/authorized_keys文件中。
- 如果遇到公钥类型不匹配的错误,请确认服务器的公钥类型与你的公钥相匹配,并相应调整。
测试SSH连接:
- 在Windows客户端上,使用ssh命令尝试连接到Linux服务器,如ssh username@hostname。
- 如果配置正确,系统将提示你使用私钥进行身份验证,然后成功建立连接。
注意: 确保Windows客户端和Linux服务器之间的网络连接正常。 如果使用防火墙或安全组规则,请确保允许SSH端口的流量通过。 在处理密钥和配置文件时,请务必保持谨慎,以避免泄露敏感信息。
B. 将SSH密钥添加到远程服务器
大多数 Git 服务器键搜都会选择使用 SSH 公钥来进行授权。系统中的每个用户都银悉必须提供一个公钥用于授权,没有的话就要生成一个。生成公钥的过程在所有操作系统上都差不多。 首先先确认一下是否已经有一个公钥了。SSH 公钥默认储存在账户的主目录下的 ~/.ssh 目录。进去看看:
关键是看有没有用 *** 和 ***.pub 来命名的一稿搏历对文件,这个 *** 通常就是 id_dsa 或 id_rsa。有 .pub 后缀的文件就是公钥,另一个文件则是密钥。假如没有这些文件,或者干脆连 .ssh 目录都没有,可以用 ssh-keygen 来创建。
(可以手动复制过去,也可以ssh--id [email protected])
Host fw01
Host test
然后就可以用ssh test 连接服务器
C. Windows Terminal 通过密钥远程连接Linux服务器
Windows Terminal通过密钥远程连接Linux服务器的操作方法如下:
生成密钥对:
- 在Linux服务器上执行sshkeygen命令,生成公钥和私钥。
配置公钥认证:
- 确保公钥位于服务器端,通常放在用户目录下的.ssh/authorized_keys文件中。
- 使用cat命令查看公钥内容,并使用sshid或手动方式将公钥内容添加到authorized_keys文件中。
- 调整authorized_keys文件的权限,确保只有文件所有者可以读写,例如使用chmod 600 ~/.ssh/authorized_keys命令。
下载私钥:
- 使用sz、scp等命令将私钥文件下载到本地Windows机器上,并记住文件保存路径。
配置SSH客户端:
- 在本地Windows用户目录的.ssh文件夹中,找到或创建config文件。
- 打开config文件,删除注释内容,并根据需要添加配置信息,如远程主机的别名、私钥路径、用户名及IP地址等。
- 示例配置:Host myremote HostName your.remote.server.ip User your_username IdentityFile C:pathtoyourprivatekeyid_rsa
使用Windows Terminal连接:
- 打开Windows Terminal。
- 在终端中输入ssh myremote,或使用ssh i C:pathtoyourprivatekeyid_rsa [email protected]命令手动指定私钥路径、用户名及IP地址。
自定义终端配置:
- 通过Windows Terminal的设置功能,可以自定义终端配置,如设置启动时自动连接特定服务器等。
通过以上步骤,你就可以在Windows Terminal中使用密钥远程连接Linux服务器了。