众所周知的原因,为了能流畅的使用google、使用某些“不存在”的网站,我们一般都是需要通过某些不方便光明正大说明使用用途的技术。比如通过ssh tunnel,这是最简单的,也是用得最多的。

不过,这段时间,明显,某些墙的干扰力度加大了;-(

下午有些郁闷了,于是就得找些进一步改进来进一步避免干扰的方法,让我们能继续流畅冲浪,很快就发现Obfuscated ssh就是一个现成成熟的方法。

首先下载Obfuscated ssh,登录到境外linux服务器上后,下载:

wget -O ofcssh.tar.gz https://github.com/brl/obfuscated-openssh/tarball/master

解压

tar zxvf ofcssh.tar.gz

进入

cd brl-obfuscated-openssh-ca93a2c

配置

./configure

编译安装

make

make install

安装完成后,可以看到输出信息中最后类似如下:

......

/usr/local/sbin/sshd -t -f /usr/local/etc/sshd_config

这就安装成功了,上面一句就是直接运行的命令,其实也就是提示了Obfuscated ssh的安装位置以及配置文件的位置。

当然,缺省这个配置文件是不能用的,基本内容全都注释掉了,为了简单起见,我们可以在标准sshd的配置的基础上改改就行了。

我们复制一份支持混淆的sshd到标准sshd的目录下,再复制一份标准sshd的配置给这个支持混淆的sshd用。

cp /usr/local/sbin/sshd /usr/sbin/sshd_ofc

cp /etc/ssh/sshd_config /etc/ssh/sshd_ofc_config

sed -i "s/Port /#Port /g" /etc/ssh/sshd_ofc_config

sed -i "s/UsePAM /#UsePAM /g" /etc/ssh/sshd_ofc_config

echo "ObfuscatedPort 2201" >> /etc/ssh/sshd_ofc_config

echo "ObfuscateKeyword yourkeyword" >> /etc/ssh/sshd_ofc_config

就是直接使用标准sshd的配置,但将原配置中的端口及UsePAM注释掉,增加支持混淆的sshd的端口为2201,混淆密码为 yourkeyword 。当然这里这个端口不要与已经在运行的标准sshd的端口一样。

然后运行测试一下:

/usr/sbin/sshd_ofc -f /etc/ssh/sshd_ofc_config

然后,在本地的Windows下使用putty设置进行ssh tunnel,结果发现putty不支持Obfuscated ssh。这里我们还得去下一个支持Obfuscated ssh的putty版本--potty,在这里下载:

http://www.mrhinkydink.com/potty.htm

下载后,可以解压到putty目录下,然后运行类似这样的命令:

c:\tools\putty\potty -N -ssh UserName@Server -P 2201 -pw password -C -z -Z yourkeyword -D 127.0.0.1:6060

这样,我们就可以通过127.0.0.1:6060的sock5来冲浪了。

一切正常后,就可以在服务器上把sshd_ofc的启动命令简单加入到rc.local开机自动启动即可。

通过几小时的测试,使用Obfuscated ssh后,我这本地的体验又恢复到没被干扰前的状态了。

10.23补充,刚才看到留言了,对没有加参考链接表示抱歉,这里特别说明一下,上面的内容参考了以下链接:

  1. http://blog.slpo.net/?p=1234
  2. http://nihilex.com/obfuscated-openssh
  3. http://briteming.blogspot.com/2012/06/obfuscatedgfwssh.html
  4. http://www.mrhinkydink.com/potty.htm
  5. http://mrhinkydink.blogspot.com/p/about-potty.html
  6. https://github.com/brl/obfuscated-openssh

其中本文所有操作命令主要参考了http://blog.slpo.net/?p=1234一文,详细参考内容包括但不限于:

  1. 对Obfuscated ssh的了解来之http://briteming.blogspot.com/2012/06/obfuscatedgfwssh.htmlhttps://github.com/brl/obfuscated-openssh
  2. 下载保存的文件名及运行方式参考http://blog.slpo.net/?p=1234
  3. “复制一份标准sshd的配置给这个支持混淆的sshd用”后的shell命令引用了http://blog.slpo.net/?p=1234一文中的操作。
  4. 对potty的了解来之http://www.mrhinkydink.com/potty.htmhttp://mrhinkydink.blogspot.com/p/about-potty.html
  5. potty连接Obfuscated ssh服务器的命令参考了http://blog.slpo.net/?p=1234一文

PS自己写在后面的:

1.32bit Centos系统需要注销掉GSSAPIAuthentication和GSSAPICleanupCredentials

2 其它按照上面的配置,使用windows客户端成功连接,使用Swithysharp proxy+Chrome可以访问外网,但是访问速度一般,比SS+IPV6速度慢很多

3 貌似ssh可以通过安装其它软件进行优化加速

4 送SS IPV6代理上网账号,时长一周,流量2G(适用校园网使用,PAC模式不走学校的IPV4流量)。

通过Obfuscated ssh避免时不时ssh连接不畅的问题【转】的更多相关文章

  1. Delphi能通过SSH登录Linux,连接MYSQL取数么?像Navicat一样

    百度随时就能搜,你就懒得搜下.http://tieba.baidu.com/p/671327617 Ssh tunnel通常能实现3种功能1) 加密网络传输2) 绕过防火墙3) 让位于广域网的机器连接 ...

  2. SSH Secure Shell Client连接Linux 命令行显示中文乱码问题 和oracle 查询数据中文乱码问题

    一.SSH Secure Shell Client连接Linux 命令行显示中文乱码问题 linux 设置系统语言 修改 /etc/sysconfig/i18n 文件,如 LANG="en_ ...

  3. 利用SSH反向隧道,连接内网服务器

    前言 公司有一台文件服务器(内部使用,无外网IP),上面主要安装了SVN服务,用来存储和共享各部门的文档,因为都是内网,直接远程(mstsc)上去就可以方便维护,但最近公司租了新的办公室,部分员工被分 ...

  4. Putty CentOS SSH 总是自动断开连接

    /********************************************************************** * Putty CentOS SSH 总是自动断开连接 ...

  5. 远程连接工具SSH和linux的连接

    实际开发中,Linux服务器都在其他的地方,我们要通过远程的方式去连接Linux并操作它,Linux远程的操作工具有很多,企业中常用的有Puttty.secureCRT.SSH Secure等.我使用 ...

  6. ssh 通过跳板机连接到远程服务器

    ssh 通过跳板机连接到远程服务器 import paramiko from sshtunnel import SSHTunnelForwarder import threading def read ...

  7. ssh通过密钥进行连接

    sshd服务提供两种安全验证的方法: 基于口令的安全验证:经过验证帐号与密码即可登陆到远程主机. 基于密钥的安全验证:需要在本地生成"密钥对"后将公钥传送至服务端,进行公共密钥的比 ...

  8. SSH 指定密钥,连接远程服务器。

    ssh -i /root/.ssh/private.pem user@192.168.1.100 -p 7744 如上, /root/.ssh/private.pem :密钥文件路径user@192. ...

  9. ssh的两种连接方法(包括无密码访问)

    一.正常连接方法:ssh root@10.0.0.20 二.无密码连接方法(有两台机器:此处我把被连接的称为服务器,另一台则称为客户端): 1.先在服务器添加目录 .ssh: mkdir  .ssh ...

随机推荐

  1. 阿里云服务器配置SSL证书成功开启Https(记录趟过的各种坑)

    环境: 阿里云云服务器    Windows Server 2008 标准版 SP2 中文版(趁1212优惠买的一年的水货配置) 阿里云购买的域名(已备案.已解析) 服务器:phpstudy:php5 ...

  2. Python(文件操作实例)

    给定一个文件:以及给定的字符,比如“a”; 统计字符个数:(可选) # 文件的打开操作f = open("wyl.txt","r")# 文件的读取操作conte ...

  3. Tensorflow:DCGAN生成手写数字

    参考地址:https://blog.csdn.net/miracle_ma/article/details/78305991 使用DCGAN(deep convolutional GAN):深度卷积G ...

  4. MyBatis - 1.入门

    MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀的持久层框架. MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集. MyBatis可以使用简单的XML或注解 ...

  5. Tarjan算法【强连通分量】

    转自:byvoid:有向图强连通分量的Tarjan算法 Tarjan算法是基于对图深度优先搜索的算法,每个强连通分量为搜索树中的一棵子树.搜索时,把当前搜索树中未处理的节点加入一个堆栈,回溯时可以判断 ...

  6. [转]MySQL 数据类型(float)的注意事项

    http://www.cnblogs.com/zhoujinyi/archive/2013/04/26/3043160.html 可能由于版本关系,我的mysql5.7插入数据超过范围时会提示,126 ...

  7. IIS:另一个程序正在使用此文件进程无法访问。

    启动网站时,遇到这个错误,一般是端口已经被占用,更换一个空闲端口即可. 通过以下命令可查询 根据最后一列的数字在任务管理器中可查看被哪个程序占用了

  8. struts2远程命令执行漏洞S2-045

    Apache Struts2最新漏洞(CVE-2017-5638,S02-45) struts2远程命令执行漏洞S2-045 Apache Struts 2被曝存在远程命令执行漏洞,漏洞编号S2-04 ...

  9. Python学习(四) —— 编码

    一.枚举 enumerate,for i in enumerate(可迭代对象),返回元组,内容是(序列号,可迭代的每一个元素)        for i,j in enumerate(可迭代对象,开 ...

  10. Codeforces 311D Interval Cubing 数学 + 线段树 (看题解)

    Interval Cubing 这种数学题谁顶得住啊. 因为 (3 ^ 48) % (mod - 1)为 1 , 所以48个一个循环节, 用线段树直接维护. #include<bits/stdc ...