Linux和Windows配置公钥到服务器上【免密登录/传输文件】
创始人
2025-01-11 16:06:42
0

文章目录

  • 1.Windows配置公钥到服务器上
    • 1.1.生成SSH密钥对(如果尚未生成):
    • 1.2.复制公钥到远程服务器:
    • 1.3.手动复制公钥到远程服务器:
    • 1.4.测试SSH连接:
  • 2.Linux配置公钥到服务器上
    • 2.1生成SSH密钥对(如果还没有的话)
    • 2.2.将公钥复制到远程服务器:
      • 1. 你可以使用 ssh-copy-id 命令将公钥复制到远程服务器。
      • 2. 手动复制公钥(如果没有 ssh-copy-id)
      • 3.测试连接:
      • 4.可能出现警告

1.Windows配置公钥到服务器上

如果你在本地使用的是 Windows ,要将本地生成的 SSH 公钥复制到远程服务器上,可以按照以下步骤进行操作:

1.1.生成SSH密钥对(如果尚未生成):

在 Windows 11 上,你可以使用 Git Bash 或者 Windows Terminal 来生成 SSH 密钥对。

  • 打开 Git Bash 或者 Windows Terminal。

  • 输入以下命令来生成 SSH 密钥对:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com" 

按照提示操作,选择密钥文件存储位置,默认情况下将会存储在 C:\Users\YourUsername\.ssh\id_rsaC:\Users\YourUsername\.ssh\id_rsa.pub

1.2.复制公钥到远程服务器:

在 Windows 上,你可以使用 ssh-copy-id 来简化复制公钥的过程,但通常它并不是默认安装的。因此,你可以手动复制公钥到远程服务器。

  • 打开你的 SSH 公钥文件 id_rsa.pub。你可以使用文本编辑器(如 Notepad++)打开该文件。

  • 复制公钥的内容。

1.3.手动复制公钥到远程服务器:

  • 登录到远程服务器。你可以使用 SSH 客户端(如 PuTTY)连接到服务器。

  • 创建 SSH 目录(如果不存在),并设置权限:

mkdir -p ~/.ssh chmod 700 ~/.ssh 
  • 在远程服务器上打开 authorized_keys 文件,并将本地公钥的内容粘贴到文件的末尾。你可以使用 nano 或者 vim 等编辑器来进行编辑:
nano ~/.ssh/authorized_keys vim ~/.ssh/authorized_keys 

然后粘贴本地公钥的内容并保存文件。

  • 设置 authorized_keys 文件的权限:
chmod 600 ~/.ssh/authorized_keys 

1.4.测试SSH连接:

关闭当前的 SSH 连接会话,然后尝试使用 SSH 密钥登录到远程服务器:

ssh username@server_ip 

如果成功连接到服务器而不需要输入密码,则说明公钥复制成功。
通过这些步骤,你应该能够在 Windows上将本地生成的 SSH 公钥复制到远程服务器,并使用 SSH 密钥进行无密码登录。

2.Linux配置公钥到服务器上

2.1生成SSH密钥对(如果还没有的话)

ssh-keygen -t rsa -b 4096 -C "your_email@example.com" 

按提示操作,通常会将密钥对存储在 ~/.ssh/id_rsa 和 ~/.ssh/id_rsa.pub。

2.2.将公钥复制到远程服务器:

1. 你可以使用 ssh-copy-id 命令将公钥复制到远程服务器。

假设你的用户名是 username,服务器地址是 server_ip:

ssh-copy-id username@server_ip 

系统会提示输入远程服务器的密码。输入密码后,ssh-copy-id 会自动将你的公钥追加到远程服务器上的 ~/.ssh/authorized_keys 文件中。

2. 手动复制公钥(如果没有 ssh-copy-id)

如果你的系统没有 ssh-copy-id 命令,你可以手动将公钥复制到远程服务器。

  1. 先查看你的公钥内容:复制显示出来的公钥内容。
cat ~/.ssh/id_rsa.pub 
  1. 用SSH登录到远程服务器:输入密码登录。
ssh username@server_ip 
  1. 在远程服务器上创建 .ssh 目录(如果不存在):
mkdir -p ~/.ssh chmod 700 ~/.ssh 
  1. 编辑或创建 authorized_keys 文件,并将公钥追加到文件中:
echo "your_public_key_content" >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys 

3.测试连接:

退出远程服务器并尝试使用SSH密钥登录:

ssh username@server_ip 

如果成功登录而不需要输入密码,则说明公钥复制成功。这些步骤完成后,你应该能够使用SSH密钥进行无密码登录到远程服务器。

4.可能出现警告

这个警告提示是因为远程主机的身份验证信息发生了变化,可能是由于以下原因之一:

  • 主机密钥已更改:远程服务器的 SSH 密钥可能已经更新或更改。
  • 中间人攻击:可能有恶意第三方在你与服务器之间进行监听。
    在这里插入图片描述
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key has just been changed. The fingerprint for the ECDSA key sent by the remote host is SHA256:rorOjL7yjvcVHHyhMGHlXrI/ivIc6ufFCz5Ic2eEVbA. Please contact your system administrator. Add correct host key in /root/.ssh/known_hosts to get rid of this message. Offending ECDSA key in /root/.ssh/known_hosts:5   remove with:   ssh-keygen -f "/root/.ssh/known_hosts" -R "192.168.1.1" Host key for 192.168.1.1 has changed and you have requested strict checking. Host key verification failed. 

解决方法:

  1. 更新 known_hosts 文件:

如果你信任服务器的新密钥,可以执行以下命令更新 known_hosts 文件。请确保替换 “192.168.1.1” 为实际的服务器IP地址。

ssh-keygen -f "/root/.ssh/known_hosts" -R "192.168.2.126" 

然后再次尝试连接服务器,SSH 将会询问你是否接受新的密钥。

  1. 联系系统管理员:

如果你不确定这个警告的原因,或者认为可能存在安全问题,建议联系系统管理员进一步确认服务器的状态和密钥更改的原因。

  1. 取消严格主机密钥检查(不推荐):

如果你确认服务器的更改是合法的,可以在 SSH 连接时添加 -o StrictHostKeyChecking=no 参数来临时取消严格主机密钥检查。但这会增加潜在的安全风险,只适用于临时调试或特定情况下使用。

ssh -o StrictHostKeyChecking=no user@192.168.2.126 

相关内容

热门资讯

围绕透视问题!wepoker透... 围绕透视问题!wepoker透视脚本视频,德普之星怎么开辅助,其实是真的有挂(有挂透视)1、德普之星...
揭露一下!光明辅助器,潮汕掌上... 揭露一下!光明辅助器,潮汕掌上娱破解,总是真的有挂(哔哩哔哩)1、打开软件启动之后找到中间准星的标志...
无独有偶!wepoker私人局... 无独有偶!wepoker私人局透视,智星德州可以透视吗,都是确实有挂(有挂透明挂)1.智星德州可以透...
教你一下!四川家园游戏辅助软件... 教你一下!四川家园游戏辅助软件,阿拉斗牌作弊视频,一贯是真的有挂(哔哩哔哩)四川家园游戏辅助软件能透...
黑科技辅助挂!wepoker怎... 黑科技辅助挂!wepoker怎么看底牌,德扑之星辅助工具如何设置,一贯存在有挂(有挂秘籍)1、很好的...
解迷一下!福州十八扑外卦视频,... 解迷一下!福州十八扑外卦视频,wepoker辅助器免费下载,原来真的是有挂(哔哩哔哩);1、操作简单...
据玩家消息!hhpoker到底... 据玩家消息!hhpoker到底可以作弊吗,德普之星辅助工具如何设置,竟然真的有挂(有挂分享)据玩家消...
关于一下!微信开心泉州辅助器,... 关于一下!微信开心泉州辅助器,赣牌圈的好牌几率,一直存在有挂(哔哩哔哩)1、超多福利:超高返利,海量...
今日!德州局怎么透视,智星菠萝... 今日!德州局怎么透视,智星菠萝可以辅助吗,切实是真的有挂(确实有挂)1、智星菠萝可以辅助吗免费脚本咨...
教你一下!边锋干瞪眼ios辅助... 教你一下!边锋干瞪眼ios辅助,祺友互娱脚本,竟然有挂(哔哩哔哩);1、每一步都需要思考,不同水平的...