在Xshell 8中设置SSH公钥认证

打印 上一主题 下一主题

主题 970|帖子 970|积分 2910

1. SSH根本知识



  • SSH界说:用于在不安全的网络上加密通信,提供登录和数据传输的安全性。
  • 协议和端口:默认使用TCP端口22,可在设置文件中修改。
  • 工作方式:基于客户端-服务器模型,通常通过OpenSSH实现。
2. SSH根本操作



  • 毗连远程主机:ssh username@host,用于毗连到指定的远程主机。
  • 实行远程命令:ssh username@host "command",在毗连的同时实行远程命令。
  • 设置别名:在本地~/.ssh/config文件中设置常用主机的别名,便于快速毗连。
3. SSH密钥认证



  • 生成密钥:使用ssh-keygen生成公私钥对,可以选择使用RSA、ECDSA等加密算法。
  • 免密登录:将公钥添加到远程主机的~/.ssh/authorized_keys文件中,实现免暗码登录。
  • 常见密钥文件:id_rsa(私钥),id_rsa.pub(公钥)。

在Xshell 8中设置SSH公钥认证可以通过以下步骤完成:

1. 生成SSH密钥对

如果你还没有SSH密钥,可以通过Xshell 8直接生成:

  • 打开Xshell 8,点击菜单栏中的 工具 -> 新建用户密钥生成领导
  • 选择密钥范例(通常选择 RSAECDSA),点击 下一步
  • 设置密钥长度(2048位或更高),点击 下一步
  • 设置密钥的生存路径,生存文件命名为 id_rsa(私钥) 和 id_rsa.pub(公钥),然后点击 完成
2. 在服务器上添加公钥

将生成的 id_rsa.pub 文件内容复制到服务器: 
   

  • 使用Xshell或其他终端登录到服务器。
  • 在服务器的用户目录下创建 .ssh 文件夹并设置权限:
    1. mkdir -p ~/.ssh
    2. chmod 700 ~/.ssh
    复制代码
  • 将 id_rsa.pub 文件内容粘贴到 ~/.ssh/authorized_keys 中,并设置权限:
    1. echo "你的公钥内容" >> ~/.ssh/authorized_keys
    2. chmod 600 ~/.ssh/authorized_keys
    复制代码
  3. 在Xshell中设置使用密钥认证


  • 打开Xshell的会话属性,选择 毗连 -> SSH
  • 身份验证方法 中选择 公钥
  • 点击 用户身份设置,选择 使用现有密钥
  • 导入先前生成的私钥文件 id_rsa(通常在生成密钥时生存的目录中)。
  • 设置会话使用的用户名,并应用设置。
4. 测试毗连

生存设置后,通过Xshell毗连服务器,应不再提示输入暗码,直接使用公钥登录。

RSA和ECDSA是两种不同的加密算法,主要区别在于加密原理、安全性和服从。
1. RSA(Rivest-Shamir-Adleman)



  • 算法根本:基于大整数分解的数学难题。
  • 密钥长度:常用2048或4096位。密钥越长,安全性越高,但盘算服从越低。
  • 安全性:RSA算法经过多年应用和测试,安全性较高。
  • 性能:密钥较长,盘算过程较耗时。通常实用于绝大多数SSH毗连,但在小型、快速场景中服从不如ECDSA。
2. ECDSA(Elliptic Curve Digital Signature Algorithm)



  • 算法根本:基于椭圆曲线的数学难题。
  • 密钥长度:通常使用256位或384位,相当于2048位的RSA密钥安全性。
  • 安全性:ECDSA基于椭圆曲线,提供高安全性。雷同安全等级下,密钥长度比RSA短,安全性更强。
  • 性能:密钥短且服从高,盘算速度比RSA快,得当性能要求较高的应用。
选择建议



  • 兼容性:RSA是传统方案,兼容性好,大部门服务器支持。
  • 高效性:ECDSA更得当要求更高的安全和服从的场景。


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

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

锦通

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表