Mac OS X ssh设置

Mac OS X ssh设置

  1. local:~ yourname$ ssh-keygen -t rsa    
  2.   
  3. //然后依次回车,输入密码,这个密码和SSH的帐号密码无关。    
  4. //整个界面看上去类似:    
  5. local:~ yourname$ ssh-keygen -t rsa    
  6. Generating public/private rsa key pair.    
  7. Enter file in which to save the key (/u/kim/.ssh/id_rsa):  【回车】    
  8. Enter passphrase (empty for no passphrase): 【直接回车】    
  9. Enter same passphrase again:  【直接回车】    
  10. Your identification has been saved in /u/kim/.ssh/id_rsa.    
  11. Your public key has been saved in /u/kim/.ssh/id_rsa.pub.    
  12.   
  13. //接下来把密钥文件传到你的SSH帐号下:    
  14. local:~ yourname$  cd ~/.ssh    
  15. local:~ yourname$  cp id_rsa.pub authorized_keys    
  16. local:~ yourname$  scp -p ~/.ssh/authorized_keys vb_macos:.ssh/   

解决ssh连接Mac OS中文乱码的问题
1,ssh工具连接设置里为UTF-8编码
2,在/etc/profile最后加入
   export LANG=zh_CN.UTF-8
3,连接的时候字符编码改成utf-8即可。
修改/etc/profile 提示文件只读。
解决方法:sudo chmod +w /etc/profile 即可
4,执行 source /etc/profile

 

Mac OS Lion 使用key验证登陆SSH

在Windows平台里,习惯了用MyEntunnel翻墙。

到了Mac下,因为系统自带ssh客户端,所以完全可以通过命令替代MyEntunnel:

ssh -N -p 22 -C -c 3des -D 8580 proxy@yourvps.info

这个proxy是在VPS上建立的一个nologin账号,不过每次输入密码会很烦,所以打算做成key认证。

没想到的是,这么一个小小的事情,居然也让我折腾了好几个小时。

事件回放如下:

   在client端,输入ssh-keygen生成 公钥/私钥,基本上是一路回车。

zhiyeqianqians-Mac:.ssh zhiyeqianqian$ ssh-keygen 

Generating public/private rsa key pair.

Enter file in which to save the key (/Users/zhiyeqianqian/.ssh/id_rsa): 

Enter passphrase (empty for no passphrase): 

Enter same passphrase again: 

Your identification has been saved in /Users/zhiyeqianqian/.ssh/id_rsa.

Your public key has been saved in /Users/zhiyeqianqian/.ssh/id_rsa.pub.

The key fingerprint is:

。。。(省略)

The key's randomart image is:

。。。(省略)

zhiyeqianqians-Mac:.ssh zhiyeqianqian$ ls -al

total 32

drwx------   6 zhiyeqianqian  staff   204  4 19 22:43 .

drwxr-xr-x+ 29 zhiyeqianqian  staff   986  4 19 22:42 ..

-rw-------   1 zhiyeqianqian  staff  1675  4 19 22:43 id_rsa

-rw-r--r--   1 zhiyeqianqian  staff   420  4 19 22:43 id_rsa.pub

-rw-r--r--   1 zhiyeqianqian  staff  1526  4 19 22:25 known_hosts

 

zhiyeqianqians-Mac:.ssh zhiyeqianqian$ scp id_rsa.pub root@yourvps.info:~/.ssh/authorized_keys

root@yourvps.info's password: 

id_rsa.pub                                    100%  420     0.4KB/s   00:00    

 

这时候从客户端登陆,发现依然提示要密码,如果把服务端sshd_config配置文件里禁用密码验证,并且重启sshd服务,客户端会看到报错:

zhiyeqianqians-Mac:.ssh zhiyeqianqian$ ssh root@yourvps.info

Permission denied (publickey,gssapi-with-mic).

 

搜索报错关键字无果,遂输入 ssh -vvv root@yourvps.info

这里的vvv表示打印调试信息,观察为什么报错:

zhiyeqianqians-Mac:.ssh zhiyeqianqian$ ssh -vvv root@yourvps.info

OpenSSH_5.6p1, OpenSSL 0.9.8r 8 Feb 2011

debug1: Reading configuration data /etc/ssh_config

debug1: Applying options for *

debug2: ssh_connect: needpriv 0

debug1: Connecting to yourvps.info [x.x.x.130] port 22.

debug1: Connection established.

debug3: Not a RSA1 key file /Users/zhiyeqianqian/.ssh/openssh-key.

标红的地方很奇怪,明明ssh-keygen生成的公钥/私钥是 id_rsa 和id_rsa.pub,为什么它会先去读 openssh-key ?

(其实一开始思路没有这么自然,甚至都没有观察到这个提示信息,走了不少弯路才有后文)

(……一番折腾后)

检查到/etc/ssh_config,发现配置文件的最后2行是:

IdentityFile ~/.ssh/openssh-key

#IdentityFile ~/.ssh/id_rsa

默认应该是最后这个 id_rsa ,但却被我注释掉了,改成了openssh-key。

原来是在几个月前,

为了登陆腾讯的云主机,按照教程修改过ssh_config,于是ssh找不到本地私钥证书,验证失败了。

取消这行注释,或者在ssh_config里,添加一个针对主机的设置

Host yourvps.info

IdentityFile ~/.ssh/id_rsa

表示当目标主机为yourvps.info的时候,使用id_rsa的证书文件。

效果如下:

zhiyeqianqians-Mac:.ssh zhiyeqianqian$ ssh root@yourvps.info

Last login: Thu Apr 19 18:29:31 2012 from x.x.11.106

[root@10_23 ~]# exit


logout
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值