标签 SSH 下的文章

使用ssh通过http代理访问bitbucket

在很多公司内部,要想访问外部互联网都需要设置代理,我所在公司也是这样,有些时候这种限制真的可以让人骂娘。不过经过几年与代理的"斗争"后,大部分需 要访问外部网络的软件(比如subversion、apt-get、git、wgetc、filezilla等)经过设置后还都可以正常工作。不过前些日 子在折腾bitbucket上的源码库时又遇到了代理问题:无论通过https方式还是ssh方式都无法clone bitbucket上的git库。

之所以用bitbucket而不是github是因为前者提供免费的private repository,而后者则是收费的。今天又亟需访问bitbucket上的库,于是再次尝试突破代理的限制。

这次想到一个思路:ssh是否可以通过http代理出去呢?Google的结果告诉我:可以!于是眼前一亮,开始折腾。

首先要安装一个名为connect-proxy的链接代理软件:sudo apt-get install connect-proxy,软件不大,瞬间就安装完比。

然后创建~/.ssh/config配置文件(如果之前已经存在该文件,就打开该文件),将如下配置写入该配置文件:

## ssh access bitbucket.or via HTTP proxy
Host bitbucket.org
ProxyCommand connect -H user@proxy_server:port %h %p

## other sites, do NOT use proxy
Host *
ProxyCommand connect %h %p

这里的配置很清晰,当匹配到bitbucket.org这个host时,ssh经由http proxy访问相应的主机;其他主机,则直接访问。注意connect命令其实就是connect-proxy,通过ls -l命令可以看到/usr/bin/connect -> connect-proxy。保存该配置文件后,尝试clone一个bitbucket上的repository,例如:

$> git clone git@bitbucket.org:lindekleiv/jquery-ui-colorpicker.git

$> ~/proj/opensource$ git clone git@bitbucket.org:lindekleiv/jquery-ui-colorpicker.git
Initialized empty Git repository in /home/tonybai/proj/opensource/jquery-ui-colorpicker/.git/
Enter proxy authentication password for user@proxy_server:
remote: Counting objects: 33, done.
remote: Compressing objects: 100% (32/32), done.
remote: Total 33 (delta 18), reused 0 (delta 0)
Receiving objects: 100% (33/33), 16.04 KiB, done.
Resolving deltas: 100% (18/18), done.

可以看到命令执行后,会提示你输入访问代理的密码。输入正确的密码后,我们可以看到git可以顺利访问到bitbucket上的jquery-ui-colorpicker这个库了。

这里有一点挺让人糟心,那就是每次都得输入访问proxy server的密码,man connect-proxy也没有发现放置http_proxy代理密码的地方,用-h选项也不行。

注意这种用ssh访问的前提是将本地生成的公钥放置在你的bitbucket账户的"SSH keys"中了。

BTW,理论上这种ssh通过http代理的方式对github也同样适用。

体检·SSH·Safari4

一年一度的公司福利体检结果刚刚出炉不久,与去年相比,我今年身体状况有些“不妙”:体重超重、血压有些偏高,另外谷丙转氨酶也略高于正常值。今天中午公司委托体检机构安排一名老医生给我们说说体检结果。老医生针对从全体员工体检结果中统计出的TOP3问题状况给出了具体的讲解和预防/缓解措施。这三个常见身体状况是:超重/肥胖、高血脂/血糖和脂肪肝,相信不仅我们公司的员工有这些问题,大多数做IT的人都或多或少有类似的情况。医生的讲解让在座的同事们不时发出“惊叹之声”。如何摆脱这些身体问题,老医生给了我们一个大家可能都熟知的“六字真经”:管住嘴,迈开腿。其实真经大家都知道,但是能否坚持做下去,这个却不是每个人都能肯定的。关于谷丙转氨酶略高的问题,医生的答复是:“可能与体检前一阶段的睡眠不好、压力过大等等有一定关系,问题不大。不放心可一段时间后去复查一下”。听了这番解释,我悬着的心才放了下来。

随着产品的集群化,产品部署的服务器越来越多,维护的时候一台主机一台主机的跳转起来越来越麻烦,效率很低,浪费了很多时间。近期将之做了改进,利用“基于SSH密钥对的自动登录”方式来做改善。大致的方法就是:在客户端主机利用ssh-keygen生成密钥对,如果采用rsa方式,则默认生成一个私钥文件id_rsa和一个公钥文件id_rsa.pub,将id_rsa.pub的内容copy到服务端主机的.ssh/authorized_keys中即可。authorized_keys中可保存多个客户端主机的公钥内容,每个公钥单独一行即可。这样在客户端主机使用ssh username@host_ip即可自动登录到服务端主机。如果你将'ssh username@host_ip'定义为一个alias,那就更加方便了,那时你仅需要敲入几个字符,回车后就会登录到另外一台主机上了。

Safari,苹果公司的桌面浏览器。两年前曾经安装过Safari,版本是多少我忘记了,但是那时的Safari连中文都不支持,试用了一段时间就卸载了。昨天得知Safari4已经于6月份Release,而且这次有了中文版。在网上搜了一下对Safari4的评价,还不错。对苹果公司的产品一向还是比较向往的,遂下载了一份,安装程序20多M,安装很快。启动后界面简洁、酷!试打开一个网页,Wow,快就一个字,IE就不用比了,比Firefox还要快,直观上就能感觉出来。在网上搜了一下网友对Safari4的评价以及Safari4自身的产品说明,“快”可是其最大卖点,第一印象不错。但是光是快还不够,我还希望它能稳定的运行而且能兼容访问大部分我平时常上的网站,特别是公司内部站点以及无障碍访问一些我们自己产品的WEB页面。经过测试在兼容性上Safari4没让我失望,Safari4对公司内部站点以及我们产品的WEB页面的兼容性很好,这点要好过Firefox,甚至是IE。用了一整天,页面没有布局混乱以及无法打开链接的情况。但是稳定性还是有一些小瑕疵的:白天在公司通过代理上网,时间长了,发现Safari4动不动CPU就上来了,磁盘I/O似乎也高,弄得我无奈将之关掉。但是回到家中,打开Safari4,持续几个小时也没有任何问题,直至目前还未找到原因。

Safari4的绝大部分快捷键都与Firefox相同,所以从Firefox转移到Safari4很平滑,唯一让我遗憾的是:我尚未找到如何设定默认打开一个新标签页而不是打开一个新窗口。另外Safari4的地址栏搜索匹配速度似乎没有firefox快。

如发现本站页面被黑,比如:挂载广告、挖矿等恶意代码,请朋友们及时联系我。十分感谢! Go语言第一课 Go语言精进之路1 Go语言精进之路2 Go语言编程指南
商务合作请联系bigwhite.cn AT aliyun.com

欢迎使用邮件订阅我的博客

输入邮箱订阅本站,只要有新文章发布,就会第一时间发送邮件通知你哦!

这里是 Tony Bai的个人Blog,欢迎访问、订阅和留言! 订阅Feed请点击上面图片

如果您觉得这里的文章对您有帮助,请扫描上方二维码进行捐赠 ,加油后的Tony Bai将会为您呈现更多精彩的文章,谢谢!

如果您希望通过微信捐赠,请用微信客户端扫描下方赞赏码:

如果您希望通过比特币或以太币捐赠,可以扫描下方二维码:

比特币:

以太币:

如果您喜欢通过微信浏览本站内容,可以扫描下方二维码,订阅本站官方微信订阅号“iamtonybai”;点击二维码,可直达本人官方微博主页^_^:
本站Powered by Digital Ocean VPS。
选择Digital Ocean VPS主机,即可获得10美元现金充值,可 免费使用两个月哟! 著名主机提供商Linode 10$优惠码:linode10,在 这里注册即可免费获 得。阿里云推荐码: 1WFZ0V立享9折!


View Tony Bai's profile on LinkedIn
DigitalOcean Referral Badge

文章

评论

  • 正在加载...

分类

标签

归档



View My Stats