在用windows时管理linux服务器时,常会用到SecureCRT、Xshell以及开源的putty。在我工作环境大多都是采用密码认证的方式进行登录。今天对学习了些SecureCRT的密钥登录方式。对比密码认证方式,使用密钥认证登录会有以下几个优点: 1、公钥认证允许使用空密码,省去每次登录都需要输入密码的麻烦 2、多用户管理服务器时,可以通过多个公钥登录同一用户下,可以避免因为密码认证被用户都需要密码,导致的密码容易泄密的危险。并且使用passwd修改密码,也不会影响到其他用户的登录。 3、做空密码的公钥认证,为运维自动化提供了便捷方法。 4、如果使用putty软件,暂时不支持密码保存功能,每次登录都必须输入相应的密码,而密钥管理可以方便的进行登录,省去输入密码的麻烦操作。 了解了这个优点后,本文开始关于SecureCRT使用密钥登录设置过程。 1、在SecureCRT上生成密钥。 下一步 加密方式有两种,分别为DSA和RSA,在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服务了 4、OpenSSH服务端配置项说明 OpenSSH的配置通常保存在:/etc/ssh/sshd_config PermitRootLogin no # 禁止root用户登陆 StrictModes yes # 检查密钥的用户和权限是否正确,默认打开的 RSAAuthentication yes # 启用 RSA 认证 AuthorizedKeysFile .ssh/authorized_keys # 验证公钥的存放路径 PubkeyAuthentication yes # 启用公钥认证 PasswordAuthentication no # 禁止密码认证,默认是打开的。 (责任编辑:IT) |