linux 公钥,windows生成ssh公钥
大家好,今天小编来为大家解答linux 公钥这个问题,windows生成ssh公钥很多人还不知道,现在让我们一起来看看吧!
如何在SecureCRT上使用公钥登陆Linux服务器
其实网上的文档很多。各有千秋。估计是自己明白了,别人看起来比较费劲。这里我整理一下,以备自己查阅:
配置过程分为两大部分,SecureCRT部分和Linux服务器部分。
SecureCRT部分配置
1、首先生成公钥。
打开SecureCRT(我的版本为7.0,估计其他版本基本相同)程序,点击菜单栏的“工具”-》“创建公钥”。按照步骤执行。其中一步比较重要就是选择公钥的格式。建议选择“OpenSSH”,否则在服务器端使用时需要转换为OpenSSH各式。何必多次一举呢。所以这里必须选择“OpenSSH”。如果选错了。重新生成一次就可以了。
然后选择公钥私钥存放的地方。默认Identity是私钥,Identity.pub是公钥。
2、把Identity.pub文件上传到你要登陆的Linux服务器上。方法有很多,比如ssh(先不要配置为公钥登陆),ftp等。具体操作自己搞定。上传时选择ASCII方式。
3、在SecureCRT创建服务器连接。协议使用ssh。在“鉴权”方法中,取消勾选“密码”。选择“公钥”,然后点击右边的属性按钮,在对话框中。
使用全局公钥设置:表示所有连接都使用该公钥连接服务器。
使用会话公钥设置:可以分别为每个连接指定不同的公钥。
下面的路径就是指明私钥的具体路径。注意了,这里要指明私钥的路径。
保存连接就可以了。
Linux服务器端配置
1、sshd_conf配置
主要修改如下几个内容:
PermitRootLogin no#默认为注释,先配置为禁止root用户登陆,允许root登陆太危险了。好几次差点犯错误。切记切记!
RSAAuthentication yes#默认为注释,启用 RSA认证
AuthorizedKeysFile.ssh/authorized_keys#验证公钥的存放路径
PubkeyAuthentication yes#默认为注释,启用公钥认证
PasswordAuthentication no#禁止密码认证,默认是打开的。
保持后,重新启动ssh服务。在不同的linux服务器上,重启的方法不同。
RedHat,CentOS: service sshd restart//redhat 7的方法已经改了。
openbsd,freebsd:/etc/rc.d/sshd restart
2、重点部分:配置公钥存放哪的问题。
要把第一部分上传上来的公钥放到用户home目录的.ssh/目录下。这里说明一下。如果你想使用test账号登陆,就要把公钥放到test账户的.ssh目录下。你可以直接把Identity.pub改为authorized_keys.当然也可还是用其他方法。
比如:cat Identity.pub>> authorized_keys
另外说明一下。.ssh目录权限是700,authorized_keys文件权限为644.
重点补充,如果还有其他人也想用自己的公钥登陆服务器,该如何操作呢?正常操作应该为该用户在服务器上创建一个账号,重新执行本次(Linux服务器端配置,第2点)操作。当然,你也可以偷懒,把他的公钥也放到test账号的authorized_keys文件中。但两个公钥的内容之间使用换行符隔开。这样的方法还是不可取的。
最后,使用SecureCRT登陆linux服务器。
这里要注意,即使你使用公钥登陆服务器,当你连接的时候,还是要你输入用户名。为何呢?不是说公钥验证么?其实,服务器要知道用你的私钥和哪个用户的.ssh目录下的authorized_keys文件内容进行解密。不可能用你的私钥和所有的用户authorized_keys文件进行匹配测试。
但是也有例外,如果你在linux系统上使用公钥登陆Linux服务器,就不需要指明用户。方法如下:
# ssh 172.16.24.222
为何呢?这时系统默认以为你登陆的远程账号就是你当前登陆的账号。
如果你设置了公钥口令,连接时比如输入。为了安全,这个口令是必须要有的。在SecureCRT中,口令被翻译为:通行短语。呵呵。
补充一下,在linux系统上,如何创建公钥和私钥呢?
方法很简单,执行ssh-keygen命令,按照提示就可以完成。完成后,自动会在当前用户的home目录,创建.ssh文件夹。
服务器端配置和上面的方法相同。
RSA-Linux生成RSA私钥与公钥的方法--openssl
在Linux系统中,使用openssl工具可以方便地生成RSA密钥对。首先,我们来创建私钥:
通过openssl命令,会在当前工作目录下自动生成一个名为rsa_private.pem的文件。这个文件包含的是私钥信息,其长度默认为1024位,当然也可以选择生成2048位的密钥,以增强安全性。
值得注意的是,私钥是保密的,必须妥善保管。生成私钥后,为了进行加密和解密操作,我们需要使用它生成对应的公钥。公钥与私钥是成对的,只有两者结合才能完成RSA加密通信。
生成公钥的步骤是基于私钥的,具体命令会利用私钥的哈希信息。因此,确保第一步生成的rsa_private.pem文件安全,对于整个密钥对的使用至关重要。
Linux专题—openssl生成公钥和私钥
Linux OpenSSL教程:生成与转换公钥私钥
无加密格式操作
要创建未加密的密钥对,首先进行如下步骤:
1.1生成私钥(无加密):
1.2生成相应的公钥(同样无加密):
加密存储
对于增强安全性,可以使用AES-256加密RSA私钥:
2.1生成加密的RSA私钥(通过passout输入密码):
同时,需要提供密码以生成加密的公钥:
2.2生成加密的RSA公钥(需要密码):
非交互式操作
对于自动化场景,可使用passin代替交互式密码输入:
2.2生成非交互式公钥内容:
密钥格式转换
在不同应用场景中,需要对密钥进行格式转换:
3.1查看密钥详细信息:
3.2私钥转为非加密格式:
3.3私钥转换为加密格式:
3.4将私钥从PEM格式转换为DER格式(反之亦然,使用-inform和-outform参数指定):
3.5查看公钥详细信息: