众所周知的原因,为了能流畅的使用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. springboot 集成mongodb

    环境依赖 在pom文件引入spring-boot-starter-data-mongodb依赖: <dependency> <groupId>org.springframewo ...

  2. Vue2.0 探索之路——生命周期和钩子函数的一些理解

    前言 在使用vue一个多礼拜后,感觉现在还停留在初级阶段,虽然知道怎么和后端做数据交互,但是对于mounted这个挂载还不是很清楚的.放大之,对vue的生命周期不甚了解.只知道简单的使用,而不知道为什 ...

  3. HL7消息部分笔记

    1.关于HL7标准 HL7是HealthLevel7的缩写,主要用于医疗领域不同的系统.应用之间的信息传递.规范各个系统间的信息传递格式. 2.字段含义: Z信息段: Z信息段是指与HL7第二版标准其 ...

  4. [SDOI2018]原题识别

    题解: ..感觉挺烦得 而且我都没有注意到树随机这件事情.. 就写个30分的莫队.. #include <bits/stdc++.h> using namespace std; #defi ...

  5. 如何使用maven进行avro序列化

    maven导入avro: <dependency> <groupId>org.apache.avro</groupId> <artifactId>avr ...

  6. web移动端浮层滚动阻止window窗体滚动JS/CSS处理

    CSS代码: .noscroll, .noscroll body { overflow: hidden; } .noscroll body { position: relative; } JS代码: ...

  7. dns-prefetch,新打开页面预抓取

    dns-prefetch 对性能提升有多大 转载2016-04-07 12:57:41 标签:网站推广dns-prefetch对性能提 dns-prefetch, 是DNS预获取,也是网页前端的优化的 ...

  8. Hadoop| MapReduce01 概述

    概述 分布式运算程序: 优点:易于编程:良好扩展性:高容错性:适合PB级以上海量数据的离线处理: 缺点:不擅长实时计算:不擅长流式计算:不擅长DAG有向图计算: 核心思想: 1)分布式的运算程序往往需 ...

  9. webapp用户身份认证方案 JSON WEB TOKEN 实现

    webapp用户身份认证方案 JSON WEB TOKEN 实现Deme示例,Java版 本项目依赖于下面jar包: nimbus-jose-jwt-4.13.1.jar (一款开源的成熟的JSON ...

  10. dubbo spring bean id冲突

    service-security-provider应用有provider和consumer配置文件 其中secutrity-consumer引用两个服务 <dubbo:reference int ...