公钥身份验证允许你通过SSH访问服务器,而无需密码,以下是将公钥复制到服务器的两种方法。

方法1:自动将ssh密钥复制到服务器

第一种方法是最终用户将个人计算机的公钥复制到远程服务器上的授权密钥列表中。

这里,我假设你可以使用ssh登录到远程服务器,它请求你的帐户密码,然后输入服务器。

如果将公钥添加到服务器,就应该能够在不每次输入密码的情况下登录。

OpenSSH为将ssh公钥复制到远程系统提供了一个ssh-copy-id的工具调用,它甚至创建必需的目录和文件。

如前所述,你应该知道要通过公钥认证访问的服务器的用户名和密码。ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]_ADDRESS_OF_THE_SERVER

出现提示时,输入远程服务器上用户帐户的密码,你的公钥应该自动复制到远程服务器上的相应文件夹中。

我使用了~/.ssh/id_rsa.pub,因为这是公共ssh密钥的默认位置,如果您在其他位置使用它,则应在上面的命令中使用它。

方法2:手动将公钥复制到服务器

第一个方法在用户端有操作,假设你是sysadmin,并且你的服务器不允许通过密码进行SSH登录,访问服务器的唯一方法是使用SSH公钥身份验证。

在这种情况下,您可以要求最终用户提供其公钥。现在你能做的就是create.ssh/authorized_密钥,然后将公钥复制到此处。

让我看看这些步骤。

步骤1:获取公钥

键入以下命令要求最终用户提供公钥:cat ~/.ssh/id_rsa.pub

它显示一个从ssh-rsa开始的长随机字符串:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ3GIJzTX7J6zsCrywcjAM/7Kq3O9ZIvDw2OFOSXAFVqilSFNkHlefm1iMtPeqsIBp2t9cbGUf55xNDULz/bD/4BCV43yZ5lh0cUYuXALg9NI29ui7PEGReXjSpNwUD6ceN/78YOK41KAcecq+SS0bJ4b4amKZIJG3JWm49NWvoo0hdM71sblF956IXY3cRLcTjPlQ84mChKL1X7+D645c7O4Z1N3KtL7l5nVKSG81ejkeZsGFzJFNqvr5DuHdDL5FAudW23me3BDmrM9ifUmt1a00mWci/1qUlaVFft085yvVq7KZbF2OP2NQACUkwfwh+iSTP [email protected]

通过电子邮件或消息传递工具获得此文本,通常,这不应该是一个问题。

步骤2:在用户的主目录中创建ssh目录(作为sysadmin )

请记住,必须在最终用户的主目录中创建新的目录和文件,而不是你自己的(root/sysadmin )。mkdir -p /home/user_name/.ssh && touch /home/user_name/.ssh/authorized_keys

现在打开这个/home/user name/,ssh/authorized_keys文件,使用Vim等文本编辑器,并在此处添加用户的公钥:vim /home/user_name/.ssh/authorized_keys

保存,并管理文件,已经准备好了。

步骤3:为文件设置适当的权限

在ssh文件中拥有适当的文件权限非常重要,否则你将看到类似权限被拒绝(publickey )。

首先,确保设置正确的文件权限:chmod 700 /home/user_name/.ssh && chmod 600 /home/user_name/.ssh/authorized_keys

使用root或你自己的管理员帐户为其他用户创建了这些文件,你需要将所有权更改为用户:chown -R username:username /home/username/.ssh

完成后,你可以要求最终用户登录到服务器。

公钥如何在服务器上注册,如何将SSH公钥添加到服务器相关推荐

  1. 服务器上的 Git - 生成 SSH 公钥

    https://blog.csdn.net/weixin_41490929/article/details/96476259 服务器上的 Git - 生成 SSH 公钥 生成 SSH 公钥 如前所述, ...

  2. win7下.NET 2.0未在web服务器上注册的问题

    电脑装了win7操作系统,装上vs2008后运行dotnetnuke项目后出现"尚未在 Web 服务器上注册 ASP.NET 2.0.为了使网站正确运行,可能需要手动将 Web 服务器配置为 ...

  3. VS2012打开项目 提示Asp.net4.0未在web服务器上注册的解决方案

    VS2012打开项目 提示Asp.net4.0未在web服务器上注册的解决方案 参考文章: (1)VS2012打开项目 提示Asp.net4.0未在web服务器上注册的解决方案 (2)https:// ...

  4. ASP.NET 4.0尚未在 Web 服务器上注册 解决方法

    使用VS2010创建web应用程序时出现如下提示ASP.NET 4.0尚未在 Web 服务器上注册.为了使网站正确运行,可能需要手动将 Web 服务器配置为使用 ASP.NET 4.0,按 F1 可了 ...

  5. 关于在vs2012中提示.NET 4.5未在web服务器上注册的解决方案

    前俩天在接触SAP.NET MVC 的过程中发现一个问题,我在vs2012中创建MVC 4 项目时发现不断弹窗提示: ASP.NET 4.5尚未在web服务器上注册.您需要手动将web服务器配置为使用 ...

  6. nextcloud+宝塔在阿里云服务器上搭建个人云存储盘(如何在服务器上搭建个人云盘)

    以下操作经实践,已成功执行实现.读者若安装失败,可在云服务器操作台上初始化云盘,再次进行重装.望读者,不畏挫折,愈败愈战,请别因为环境的安装失败影响你的学习的兴趣,不妨多次"重启试试&quo ...

  7. 跑深度学习在Linux服务器上常用操作(ssh, screen, tensorboard, jupyter-notebook)

    转自:http://www.360doc.com/content/17/1228/08/7669533_717027772.shtml 如何连上远程服务器 连上服务器 首先,当然得是要用自己的PC连接 ...

  8. svn如何删除服务器上的文件,【SVN】彻底 svn 服务器上的 删除某一个文件或文件夹...

    参考: CSDN1:https://blog.csdn.net/u011729865/article/details/78764523 CSDN2:https://blog.csdn.net/wyyo ...

  9. 在服务器上设置虚拟传入,如何配置 SMTP 虚拟服务器以进行邮件传递

    匿名用户 1级 2016-07-17 回答 配置重试次数和重试间隔 如果无法在第一次尝试时传递邮件,则 Microsoft 简单邮件传输协议 (SMTP) 服务会在指定时间后再次从队列目录发送该邮件. ...

最新文章

  1. [Angular Tutorial] 11 -Custom Filters
  2. leetcode算法题--“气球” 的最大数量
  3. status_code想要得到302却得到200_中考200天倒计时!教你高效规划!抓紧抢报预留座位!...
  4. 【渝粤教育】国家开放大学2018年秋季 1398T分析化学(本) 参考试题
  5. Hinton向AAAI提交论文竟收到最差评价!深度学习三教父再押宝,AI或突破常识瓶颈...
  6. android定时器课程设计,定时器课程设计.doc
  7. python中的进程池:multiprocessing.Pool()
  8. hsqldb mysql_HSQLDB创建数据库和基本的数据库访问 | 学步园
  9. C语言自学——lesson4
  10. STAR原则是什么?
  11. Python tolist()用法
  12. 快手第三季营收231亿:同比增13% 期内亏损27亿
  13. 【IOS】《捕鱼达人》的简单实现(一)
  14. 深度学习系列之随机梯度下降(SGD)优化算法及可视化
  15. 记一次eduSRC挖掘
  16. HTML5简明教程系列之HTML5 表格与表单(二)
  17. 本科计算机应用与技术开发工作会议,计算机科学与技术学院举行本科生迎新大会...
  18. zigbee 笔记5
  19. FANUC机器人的镜像备份操作及U盘格式化具体步骤
  20. 06-软件测试计划及测试说明

热门文章

  1. 运维面试精选:1、史上最详细的Nginx、LVS、HAProxy负载均衡精选面试题
  2. 全国首个珠贝交易市场鄱湖珠贝城走上金算盘全程电子商务之路
  3. 博途SCL伪随机数产生(全局库解析)
  4. 【shell】万能解压脚本
  5. 中兴交换机ZXR10-2950如何做mac地址和ip绑定端口?
  6. 2020-08-11
  7. 解决 kubesphere安装时 kubelet 启动异常问题
  8. wmic 设置环境变量 不需要重启
  9. 接受一个整型值(无符号),按照顺序打印它 的每一位。
  10. 2023视觉3D量产元年?最新视觉3D检测综述一览前沿进展!