ssh配置公钥私钥登录SecureCRT

在用windows时管理linux服务器时,常会用到SecureCRTXshell以及开源的putty。在我工作环境大多都是采用密码认证的方式进行登录。今天对学习了些SecureCRT的密钥登录方式。对比密码认证方式,使用密钥认证登录会有以下几个优点:
1
、公钥认证允许使用空密码,省去每次登录都需要输入密码的麻烦
2
、多用户管理服务器时,可以通过多个公钥登录同一用户下,可以避免因为密码认证被用户都需要密码,导致的密码容易泄密的危险。并且使用passwd修改密码,也不会影响到其他用户的登录。
3
、做空密码的公钥认证,为运维自动化提供了便捷方法。
4
、如果使用putty软件,暂时不支持密码保存功能,每次登录都必须输入相应的密码,而密钥管理可以方便的进行登录,省去输入密码的麻烦操作。

了解了这个优点后,本文开始关于SecureCRT使用密钥登录设置过程。

1、在SecureCRT上生成密钥。

下一步

加密方式有两种,分别为DSARSA,在OpenSSL都支持,随便选择一个都可以,下一步

在这个可以输入一个口令(登录的会要求输入这个口令),当然也可以留空。

这是密码长度,默认为1024,下一步

创建密钥中。

注意这里设置为OpenSSH格式,这样就完成了。

2、把公钥拷贝到服务器

在生成的密钥里面有两个文件,一个公钥文件(Identity.pub),一个私钥(Identity)。
需要把Identity.pub内的内容拷贝到Linux服务器的特定文件中:~/.ssh/authroized_keys
其中,“~”表示对应用户的主目录,以root为例。
.ssh目录不存在,请创建它,并把公钥信息写入文件中:

<!--[if !supportLists]-->1.<!--[endif]--># mkdir ~/.ssh 

<!--[if !supportLists]-->2.<!--[endif]--># chmod 700 ~/.ssh 

<!--[if !supportLists]-->3.<!--[endif]--># vi ~/.ssh/authorized_keys 

<!--[if !supportLists]-->4.<!--[endif]--># chmod 644 ~/.ssh/authorized_keys 

注意:必须要注意~/.ssh 的全新必须为700~/.ssh/authorized_keys必须为644,否则可能会出现登录不了的情况。

3、在SecureCRT上通过密钥登录

通过以上的配置,基本按照ssh服务端的默认配置是可以通过密钥进行登录,如果还是不能可以检查下前面的步骤,以及后面的ssh服务端配置的相关选项进行适当调整。

配置SecureCRT通过密钥登录linux服务器

PublicKey认证调整到第一。并点旁边的Properties,设置本地密钥的存放地址,设置好后。就可以直接连上linux服务了

4OpenSSH服务端配置项说明

OpenSSH的配置通常保存在:/etc/ssh/sshd_config
PermitRootLogin no #
禁止root用户登陆
StrictModes yes #
检查密钥的用户和权限是否正确,默认打开的
RSAAuthentication yes #
启用 RSA 认证
AuthorizedKeysFile .ssh/authorized_keys #
验证公钥的存放路径
PubkeyAuthentication yes #
启用公钥认证 PasswordAuthentication no # 禁止密码认证,默认是打开的。