当前位置: > Linux服务器 > SSH >

linux ssh公钥验证登陆

时间:2014-11-30 16:07来源:linux.it.net.cn 作者:IT


SecureCRT key登录linux ssh设置

  一、首先用secureCrt创建密钥

  1.使用SecureCRT创建私钥和公钥.

  SecureCRT quick Connect-> Authentiation -> Public Key -> Properties ->Create Identity File -> DSA/RSA -> Set Passphrase -> Done

  这个时候在指定目录会生成两个文件,例如,私钥my_rsa和公钥my_rsa.pub

  2.linux服务器上建立.ssh目录,一般情况下,已经有这个目录

  # mkdir /root/.ssh

  # chmod 700 /root/.ssh

  3.将公钥my_rsa.pub传到linux服务器,将SSH2兼容格式的公钥转换成为Openssh兼容格式

  # ssh-keygen -i -f Identity.pub >> /root/.ssh/authorized_keys2

  # chmod 600 /root/.ssh/authorized_keys2

  4.在SecureCRT里面设置登录模式为PublicKey,并选择刚刚创建的my_rsa文件作为私钥

  5.重启Linux服务器上SSH服务器

  #service sshd restart或者/etc/init.d/ssh restart

  6.由于已经设置了密钥登录,原来的密码登录就完全可以去掉

  $ sudo vim /etc/ssh/sshd_config

  Protocol 2 /仅允许使用SSH2

  PubkeyAuthentication yes /*启用PublicKey认证

  AuthorizedKeysFile .ssh/authorized_keys2 /*PublicKey文件路径

  PasswordAuthentication no /*禁止密码验证登录

  PS:以上步骤是使用SecureCRT生成的密钥对来进行登录验证的,其实也可以在服务器上使用ssh-keygen命令生成的密钥,同样在生成密钥对之后,将格式转换成SecureCRT使用的SSH2格式

  注意:步骤3中的转换key格式易于为大家忽略,请多注意此点。

  二、把创建的私钥共享

  由于securecrt创建的私钥不同于winscp使用的私钥格式,需要转换

  securecrt>>tools>>Convert Private Key to OpenSSH Format ...

  保存成openssh格式的密钥对,然后运行winscp包里的puttygen>>Conversions>>Import key选择刚才转换的私钥,输入key passphrase后,选择Save private key,保存成ppk格式的文件

  三、解决winscp的中文乱码问题

  在WinSCP启动画面上先把进阶选项勾选起来,然后在SFTP设定上将伺服器不使用UTF-8编码选项关闭。


 

(责任编辑:IT)
------分隔线----------------------------