SSH的密钥管理

日期: 2012-10-22 作者:羽扇纶巾 来源:TechTarget中国

SSH的密钥管理主要包括两个方面:生成公钥/私钥对以及公钥的分发,下面将对这两个密钥管理工作分别进行介绍。   (1)生成用户自己的密钥对   生成并分发用户自己的密钥有两个好处:   可以防止“中间人”这种攻击方式。   可以只用一个口令就登录到所有用户想登录的服务器上。   用下面的命令可以生成密钥:   #ssh-keygen   如果远程主机使用的是SSH 2.x就要用这个命令:   #ssh-keygen –d   在同一台主机上同时有SSH1和SSH2的密钥是没有问题的,因为密钥是保存为不同的文件的。

ssh-keygen命令运行之后会显示下面的信息:   Generating RS……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

SSH的密钥管理主要包括两个方面:生成公钥/私钥对以及公钥的分发,下面将对这两个密钥管理工作分别进行介绍。

  (1)生成用户自己的密钥对

  生成并分发用户自己的密钥有两个好处:

  可以防止“中间人”这种攻击方式。

  可以只用一个口令就登录到所有用户想登录的服务器上。

  用下面的命令可以生成密钥:

  #ssh-keygen

  如果远程主机使用的是SSH 2.x就要用这个命令:

  #ssh-keygen –d

  在同一台主机上同时有SSH1和SSH2的密钥是没有问题的,因为密钥是保存为不同的文件的。ssh-keygen命令运行之后会显示下面的信息:

  Generating RSA keys:

  Key generation complete.

  Enter file in which to save the key (/home/[user]/.ssh/identity):

  //此时按下回车键就行了

  Created directory '/home/[user]/.ssh'.

  Enter passphrase (empty for no passphrase): //输入的口令不会显示在屏幕上

  //重新输入一遍口令,如果忘记了口令就只能重新生成一次密钥了

  Enter same passphrase again:

  //保存用户的私人密钥和公用密钥

  Your identification has been saved in /home/[user]/.ssh/identity.

  Your public key has been saved in /home/[user]/.ssh/identity.pub.

  The key fingerprint is: 2a:dc:71:2f:27:84:a2:e4:a1:1e:a9:63:e2:fa:a5:89 [user]@[local machine]

  “ssh-keygen -d”做的是几乎同样的事,但是把一对密钥存为(默认情况下)“/home/[user] /.ssh/id_dsa”(私人密钥)和“/home/[user]/.ssh/id_dsa.pub”(公用密钥)。

  现在用户拥有一对密钥:公用密钥要分发到所有用户想用ssh登录的远程主机上去;私人密钥要好好地保管防止别人知道私人密钥。用“ls-l ~/.ssh/identity”或“ls-l ~/.ssh/id_dsa”所显示的文件的访问权限必须是“-rw-------”。

  (2)分发公用密钥

  在每一个用户需要用SSH连接的远程服务器上,用户要在自己的主目录下创建一个“.ssh”的子目录,把用户的公用密钥“identity.pub”拷贝到这个目录下并把它重命名为“authorized_ keys”。然后执行:

  chmod 644 .ssh/authorized_keys

  这一步是必不可少的。如果除了用户之外别人对“authorized_keys”文件也有写的权限,SSH就不会工作。

  如果用户想从不同的计算机登录到远程主机,“authorized_keys”文件也可以有多个公用密钥。在这种情况下,必须在新的计算机上重新生成一对密钥,然后把生成的“identify.pub”文件拷贝并粘贴到远程主机的“authorized_keys”文件里。当然在新的计算机上用户必须有一个账号,而且密钥是用口令保护的。有一点很重要,就是当用户取消了这个账号之后,别忘了把这一对密钥删掉。

作者

羽扇纶巾
羽扇纶巾

自由撰稿人。

相关推荐

  • 新libSSH漏洞可获取服务器root访问权限

    隐蔽近五年的libSSH漏洞可让恶意攻击者通过SSH服务器进程轻松获取对设备的管理控制。 NCC集团安全顾问P […]

  • 使用SSH+VNC实现安全的Linux远程桌面管理

    VNC可以对数据进行压缩,使得传输的数据量比直接用SSH加密的小,但这可以造成数据窃听,必要时可以通过SSH进行加密端口映射。

  • SSH的应用场景

    SSH的用途广泛,本文介绍了SSH的两种应用场景:使用scp命令远程拷贝文件和使用SSH设置“加密通道”。

  • SSH简介

    企业越来越多地应用SSH(Secure Shell)技术来进行远程控制和数据传输工作,本文将详细介绍SSH原理及其安全验证。