论坛风格切换切换到宽版
  • 1238阅读
  • 0回复

[技巧分享]Putty,SecureCRT ssh登录Linux设置 [复制链接]

上一主题 下一主题
离线kxt314
 
发帖
21
C币
216
威望
13
贡献值
1
银元
0
铜钱
81
人人网人气币
0
只看楼主 倒序阅读 使用道具 楼主  发表于: 2011-08-12
— 本帖被 csugirl 执行压帖操作(2011-09-03) —

putty设置ssh
第一步:生成密匙
运行puttygen.exe,选择需要的密匙类型(parameters)和长度(bits)。putty默认使用SSH1协议,这里选择ssh-2 RSA长度默认值为1024。
<img src="http://blog.chinaunix.net/attachment/201105/31/10289946_1306818163uUq8.jpeg" .load="imgResize(this, 650);" ;="" border="0" style="border-style: initial; border-color: initial; max-width: 650px; ">

  点击Generate生成密匙,生成后 的Key passphrase 和 Confirm passphrase 两项可以保持为空,passphrase是用来保护私匙的密码,如果没什么特别高的安全要求就不用了,免得登录时还要输入一次密码。后面讨论如果输入passphrase,也可以自动登录系统。如下图:
点击 Save public key 按钮和 Save private key 按钮分别保存公匙和私匙
例如 idssh.pub(默认保存无后缀,如idssh,无碍) 和 idssh.ppk。

第二步:上传密匙
用自己的帐号登录远程系统,然后执行下面的命令:
$mkdir .ssh      #在需要开启ssh连接的用户目录下建立 .ssh目录()
$chmod 700 .ssh
$ssh-keygen -i -f idssh >>.ssh/authorized_keys

$chmod 644 .ssh/authorized_keys   #这一步要设置为644或600,生成的authorized_keys文件要属于当前设置用户。

第三步
vim /etc/ssh/sshd_config #修改ssh配置文件
(1) Protocol 2                               #仅允许使用SSH2
(2) Port 22                                  #使用22端口
(3) PermitRootLogin yes                      #允许root登录
(2) PubkeyAuthentication yes                 #启用公告密钥配对认证方式
(3) AuthorizedKeysFile .ssh/Identity.pub     #设定PublicKey文件路径
(4) RSAAuthentication yes                    #允许RSA密钥
(4) PasswordAuthentication no                #禁止密码验证登录,如果启用的话,OpenSSH的 RSA认证登录就没有意义了。
第四步,重新加载sshd服务,/etc/init.d/sshd restart 或 service sshd restart
第五步:设置Putty
启动Putty,设置好session的各项参数(如IP address,protocol选择SSH),然后从左边选择SSH,”Preferred SSH protocol version:”,
这时我们用的是SSH1协议,那么我们就选择协议版本1,再“SSH->Auth”,”Private key file for authentication:” 点击 Browse 按钮,选择 idssh.ppk 文件。



再从左边选择 Session,然后点击 Save 按钮把修改保存下来。然后点击Open 按钮就可以登录了。
如果上面的操作都没有问题,那这时应该就自动登录了,无需输入密码。 正常情况下会显示如下:
login as: root
Authenticating with public key "rsa-key-20050328"
Last login: Mon Mar 28 14:39:13 2005 from 192.168.0.2
有了上面第二行的信息,表明你已经正常启用SSH通讯了。


SecureCRT设置ssh
第一步,生成公钥/密钥对
使用SecureCRT的    工具->创建公钥 即可,加密算法选择RSA,因为sshd配置文件中选择了RSA算法
这一步会生成两个文件,默认是Identity和Identity.pub,其中Identity为密钥,Identity.pub为公钥。这一步中,通行短语可以不输入。不输入的话登陆时不需要输入通行短语。如果输入了,登陆的时候会要求你输入通行短语。

第二步,上传Windows客户机SecureCRT生成的公钥 Identity.pub到用户home目录下.ssh文件夹中,一般是用ftp上传.注意上传之前,一定要以ASCII格式上传。
#cd ~
#mkdir .ssh  #在需要开启ssh连接的用户目录下建立 .ssh目录
#chmod 700 .ssh
#ssh-keygen -i -f .ssh/Identity.pub >>.ssh/authorized_keys(这一步很重要,不然open ssh不认识SecureCRT生成的公钥.)
#chmod 644 ./.ssh/authorized_keys   #同上这一步要设置为644或600,生成的authorized_keys文件要属于当前设置用户。

OpenSSH公钥没有使用采用 IETF SECSH 标准,所以和SecureCRT的公钥格式不兼容,需要使用OpenSSH自带的 ssh-keygen 命令转换以后才能被OpenSSH识别。authorized_keys 可以保存多个公钥,所以公钥格式转换导入的时候,应该使用追加符 >> ,而不是 >。
#ssh-keygen -i -f Identity.pub >>.ssh/authorized_keys

第三步
vim /etc/ssh/sshd_config #修改ssh配置文件
(1) Protocol 2                               #仅允许使用SSH2
(2) Port 22                                  #使用22端口
(3) PermitRootLogin yes                      #允许root登录
(2) PubkeyAuthentication yes                 #启用公告密钥配对认证方式
(3) AuthorizedKeysFile .ssh/Identity.pub     #设定PublicKey文件路径
(4) RSAAuthentication yes                    #允许RSA密钥
(4) PasswordAuthentication no                #禁止密码验证登录,如果启用的话,OpenSSH的 RSA认证登录就没有意义了。

第三步,重新加载sshd服务,使用/etc/init.d/sshd restart即可

到此,设置完成。可能通过新建会话来检验,在SecureCRT中新建会话时选择使用公钥认证即可


putty的密钥转换成SecureCRT的密钥
两个程序一起用的话,两密钥是默认不能通用的,
用puttygen.exe 载入自己生成的private key,然后用“转换”导出openssh格式的private key,名自定(无后缀),最后在securecrt的选项里指定这个转换后的就OK了。
评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
快速回复
限100 字节
如果您在写长篇帖子又不马上发表,建议存为草稿
 
上一个 下一个