实战攻防演练-Linux写入ssh密钥,利用密钥登录

打印 上一主题 下一主题

主题 885|帖子 885|积分 2655

前言

密钥形式登录的原理是利用密钥生成器制作一对密钥,一只公钥和一只私钥。将公钥添加到服务器的某个账户上,然后在客户端利用私钥即可完成认证并登录。这样一来,没有私钥,任何人都无法通过 SSH 暴力破解你的密码来远程登录到系统。此外,如果将公钥复制到其他账户甚至主机,利用私钥也可以登录。

下面来讲解如何在 Linux 服务器上制作密钥对,将公钥添加给账户,设置 SSH,最后通过客户端登录。
在linux后渗透中拿下shell权限后,使用ssh-keygen命令建立密钥对
服务创建密钥


如上图所示
  1. └─# ssh-keygen                                                                                                                                                  # 建立密钥对
  2. Generating public/private rsa key pair.
  3. Enter file in which to save the key (/root/.ssh/id_rsa):  # 按 Enter回车即可
  4. /root/.ssh/id_rsa already exists.
  5. Overwrite (y/n)? y
  6. Enter passphrase (empty for no passphrase):                                                         # 输入密钥锁码,或直接按 Enter 留空
  7. Enter same passphrase again:                                                                                                                         # 再输入一遍密钥锁码
  8. Your identification has been saved in /root/.ssh/id_rsa   # 私钥
  9. Your public key has been saved in /root/.ssh/id_rsa.pub   # 公钥
  10. The key fingerprint is:
  11. SHA256:6Nr2bOK9deJLoJZ+tU9jNSGGTlvFunuxYYYBZkI+XpY root@kali
  12. The key's randomart image is:
  13. +---[RSA 3072]----+
  14. |       ..    ..  |
  15. |       .. +o ..  |
  16. |        o+E.+..  |
  17. |       o * +o. . |
  18. |      . S o  +o  |
  19. |     . o .. o.=. |
  20. |      =  .+.=+ + |
  21. |     =ooo+.=..o  |
  22. |    .o+==.oo..   |
  23. +----[SHA256]-----+
复制代码
这里介绍一些ssh-keygen的参数
  1. -t  #指定密钥类型
  2. -b #指定密钥长度
复制代码
也可以执行
  1. ssh-keygen -t rsa -b 4096   //指定类型长度
  2. ssh-keygen -t rsa                                         //指定类型
复制代码
密钥锁码在使用私钥时可以输入字符,或留空。
现在当前root目录中生成了一个 .ssh 的隐藏目录,内含两个密钥文件。
其中,id_rsa 为私钥,id_rsa.pub 为公钥。
在服务器上安装公钥

在安装前先切换目录至.ssh目录,接下来需要安装authorized_keys,授权密钥,安装后需要保证authorized_keys文件权限为600,目录权限为700。
  1. [root@kali ]$ cd .ssh
  2. [root@kali .ssh]$ cat id_rsa.pub >> authorized_keys   
  3. #公钥的安装注意:单尖括号>表示将文件内容全部替换掉;双尖括号是追加,这样就完成了公钥的安装。
  4. #为了确保连接成功,保证文件权限正确
  5. [root@kali .ssh]$ chmod 600 authorized_keys
  6. [root@kali .ssh]$ chmod 700 ~/.ssh
复制代码
设置 SSH,打开密钥登录功能

编辑 /etc/ssh/sshd_config 文件,进行如下设置:
  1.     RSAAuthentication yes
  2.     PubkeyAuthentication yes
  3.                 PermitRootLogin yes                                 #root 用户允许通过 SSH 登录(可选)
复制代码
最后,再重启 SSH 服务:(这个重启ssh服务不会导致断连)
  1. [root@host .ssh]$ service sshd restart
复制代码
将私钥下载客户端连接

在服务器下载下来我们的私钥id_rsa文件,在本地机器使用ssh连接软件连接,如下图所示。

实战连接图片

参考https://www.runoob.com/w3cnote/set-ssh-login-key.html

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

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

本版积分规则

民工心事

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表