标签归档:SSH

关于ssh私钥管理与认证代理应用

对于ssh公密钥认证免密码设置想必基本都比较熟悉不够,详见:SSH Without a Password

但这里想记录的是关于日常使用过程中遇到些小麻烦所延伸的问题,因为通常会设置此认证方式原因莫过于一、安全考虑;二、服务器量多管理操作方便等原因。情况大致是,本地机器local,分别有服务器:s1和s2等等,私钥放在local,公钥分别放在两台服务器,那local登录到两台服务器都可以不再需要密码认证。但s1与s2直接通信的话还是需要输入密码(如果限制了密码方式登录那不是更麻烦了?)

因此通过搜索引擎了解到,可以通过ssh代理转发功能及代理认证解决,其中用到ssh-agent 就是一个管理私钥的代理,受管理的私钥通过 ssh-add 来添加,所有 ssh-agent 的客户端都可以共享使用这些私钥;以及开启代理转发ForwardAgent yes或者ssh -A选项开启。

其实:ssh-agent起到的效果有2点:一、不用每次重复输入密码;二、私钥只需部署于本地同样可在远程服务器下调用。

大致配置操作:

1.vim /etc/ssh/ssh_config 或~/.ssh/config 修改配置ForwardAgent yes (若没开启需每次连接时使用ssh -A选项进行开启转发代理)
2.启动ssh-agent
3.使用ssh-add将私钥添加到管理私钥的代理---ssh-agent下,
    ssh-add ~/.ssh/id_rsa #添加
    ssh-add -l   #查看

如此一来,不管s1–>s2还是s2–>s1都可以使用本地的私钥进行验证而无需输入密码。

但是,解决的还不够彻底,在同样情况下的延伸中(所有服务器上都有公钥,从local连入s1,再从s1使用SSH命令连扩s2,再从s2使用SSH命令连入s3)这时候,s3依然要要求输入密码进行验证。其实关于此问题,由刚前面对于ForwardAgent选项的配置便很好理解:即连接端需存在私钥或由上个连接端的私钥代理的转发层层传递下来的,否则连接时需在前个连接时候就使用ssh -A参数临时开启。故解决措施有二:

1.在s1连接s2的时候,ssh命令临时使用附加参数:-A 开启允许转发认证代理的连接,这样s2连接s3或其他(同样道理要想层层皆可那就需循环每每连接时都使用附加参数"-A"选项使得下次连接可用)
2. 直接一次性修改配置文件~/.ssh/config中的ForwardAgent yes发布到各个服务器用户配置目录下。

很显然第二种方法较可取,省得每次连接还得多加”-A”参数。

现在只要服务器已加了公钥且开启了ForwardAgent后,从本地local连接出去后再连接任何一台都通畅方便啊。

以上是所测试本地local系统环境是在Linux(ubuntu11.10)终端下的,对于Win系统环境可以借助私钥管理工具pageant及ssh客户端工具Putty/SecureCRT

翻越GFW前往Twitter[附加声明]

      去年七月份曾在自己blog上记录了篇自己最初之前关于如何翻墙上Twitter的备录,出于最初使用的是修改本地hosts IP地址或是借助免费可用的VPN来实现的,没料到快过去一年了还是有那么不明真相的网友发来咨询分享可用的Twitter IP给予他们或免费的VPN服务!实在感觉到很无奈,因为自从自己使用国外空间后一直都是使用其附带的SSH功能直接代理实现翻墙的,故很久以来已经不知道存在有哪些可用的Twitter IP或免费的VPN啦,实属抱歉!有时质疑去年是不是真不该记录这篇日志,事已至此,那顺便按个人了解推荐几个较为靠谱的翻墙的措施吧,不过前提是:天下没有永远免费的午餐!自然是需要点付出,但是个人觉得值得,少喝些饮料,少吃两顿大餐就足够了!
      其实就三个方向:SSH、VPN及API。当然需要的是国外服务器空间走国外网络,不是说随便说国内空间提供商或说自己公司上服务器的ssh功能。如果选择SSH账号:推荐www.sshchina.com 50大洋/年,使用方法简单的命令即是:ssh -D host:port,详见站点对于不同操作系统平台下使用ssh代理的相应指南,无需废话!如果选择VPN的话:来自北邮人的@yegle的OpenVPN好评不错,详见其博客介绍:http://yegle.net/openvpn/吧!个人选择的是目前此博客所在空间自带的SSH功能实现代理的!购买的是@hugege提供的100大洋/年的新手型空间,参数详见他的博客或淘宝店链接。速度方面还不错,访问浏览网页足够啦,如果想在线视频的估计你自行寻求谋路吧,因为个人并未尝试过,可行性如何无发言权!自行搭建API接口,可以借助GAE,此项略谈。以上这些都是在你自己没有独立完全掌控权但又想拥有能靠谱翻墙的一些措施。
      如果自己拥有独立的VPS的话,建议可以自己尝试搭建配置维护自己的VPN,可选择基于PPTP VPN或OpenVPN服务,具体详细方法自己Google吧!当作一种学习
      最后就是不想发钱的话就借助第三方客户端咯。自己找去吧!什么dabr啊、什么手机客户端啊等!注:有个专门介绍翻墙的站点:http://twitbrowser.net/ 可以观摩观摩
      Ps:声明:之前那篇文章也已关闭评论,所以不要再发Email向我分享可用的Twitter IP或免费的VPN咯,因为我也不知道!个人非专业选手,业余爱好而已,自己够用而已!声明废话到此!

BBS帮助文档记录

一、工具下载(这里只介绍cterm其他X-term类推)
   Cterm不仅可以作为普通 Telnet 客户软件用于 Telnet 站点的登录,更是针对国内BBS的特点设计的一个专用上站软件(官方如此说明,但个人觉得普通的telnet或ssh客户端软件还是习惯SecureCRT软件)
   下载地址:点击这里
二、软件登陆设置
   选择菜单–>文件–>地址薄打开(如下图所示)

如下图所示添加相关站点信息:
站名:集美学村(可以自取)
地址:jmxc.vicp.net
端口:31398
自动登录:可选可不选
ssh登陆:选取 (注:选上后端口能会变回默认的22端口,需手动再修改为31398)
类型:KBS/SMTH BBS (可选项)

自动登录设置(需要点击详细设置进入“自动登录”选项设置 输入账号和密码即可
最后点击加入更新,在左边地址薄就会多出一个“集美学村”选项

选择点击右边标记位置,实现添加到菜单栏中,结果如下:

   以后就可以点击“集美学村(1)” 打开 或者 直接按键盘的 alt+1 即可打开站点!祝你好运
   附:资料填写密码修改:主菜单–>I、个人工具箱–>F、填写注册单或I、设定个人数据 (B、用户密码)
   其他更多信息待更新。。。。