ssh利用端口转发实现SOCKS5代理

现在linux下ssh使用比较广泛的是openssh包

ssh相关选项:

  • -V
    显示版本:
    ssh -V
    OpenSSH_6.6.1p1 Ubuntu-2ubuntu2, OpenSSL 1.0.1f 6 Jan 2014
  • -f
    输入密码后进入后台模式(Requests ssh to go to background just before command execution.)
  • -N
    不执行远程命令,用于端口转发( Do not execute a remote command. This is useful for just for warding ports (protocol version 2 only).)
  • -D
    socket5代理(Specifies a local “dynamic” application-level port forwarding.Currently the SOCKS4 and SOCKS5 protocols are supported, and ssh will act as a SOCKS server.)
  • -L
    tcp转发(Specifies that the given port on the local (client) host is to be forwarded to the given host and port on the remote side.)
  • -C
    使用数据压缩,网速快时会影响速度(Compression is desirable on modem lines and other slow connections, but will only slow down things on fast networks.The compression algorithm is the same used by gzip)

建立SOCKS5代理:

ssh -f -N -D bindaddress:port name@server

  • bindaddress: 指定绑定ip地址
  • port: 指定侦听端口
  • name: ssh服务器登录名
  • server: ssh服务器地址

例:
ssh -f -N -D 127.0.0.1:1080 [email protected]
这样就建立SOCKS5代理。

使用SOCKS5代理

例:

  • chrome:
    chrome需要使用命令指定SOCKS5代理:
    google-chrome --proxy-server="socks://127.0.0.1:1080"
  • firefox:
    在preferences=>advanced=>Network->connection->Settings里,勾选Manual proxy configuration,并将其它项清空,SOCKS Host设置为127.0.0.1,port设置为1080, 并勾选Remote DNS(勾选后可防止本地DNS污染),如图。
  • 其它,请搜索具体关于各自配置的文章:
  • 使用代理插件switchysharp等
  • 在系统自带的代理设置全局代理
  • 使用其它SOCKS客户端实现代理,比如redsocks

参考

时间: 2024-12-17 12:31:13

ssh利用端口转发实现SOCKS5代理的相关文章

SSH隧道技术----端口转发,socket代理

本文大部分参考引用加copy:http://blog.chinaunix.net/uid-20761674-id-74962.html 本文的受众 如果你遇到了以下问题,那么你应该阅读这篇文章 我听说过这种技术,我对它很感兴趣 我想在家里访问我在公司的机器(写程序,查数据,下电影). 公司为了防止我们用XX软件封锁了它的端口或者服务器地址. 公司不让我们上XX网站,限制了网址甚至IP. 公司不让我们看关于XX的信息,甚至花血本买了XX设备,能够对内容进行过滤.一看XX内容,链接就中断了. 我爸是

使用 SSH 隧道实现端口转发、SOCKS 代理

SSH隧道 本地端口转发 本地客户端通过 local_port 连接到 MobaXterm: MobaXterm 绕过防火墙,使用 user 用户连接到 ssh_server_ip:ssh_server_port 的 SSH 服务器: SSH 服务器连接到 romote_ip:romote_port 的远程服务器. ssh -N -f -L local_port:romote_ip:romote_port [email protected]_server_ip:ssh_server_port -

【ssh】端口转发

来源:https://www.ibm.com/developerworks/cn/linux/l-cn-sshforward/ 非常非常好用,可以通过跳板解决两台服务器无法连接的问题 第一部分 概述 当你在咖啡馆享受免费 WiFi 的时候,有没有想到可能有人正在窃取你的密码及隐私信息?当你发现实验室的防火墙阻止了你的网络应用端口,是不是有苦难言?来看看 SSH 的端口转发功能能给我们带来什么好处吧! 端口转发概述 让我们先来了解一下端口转发的概念吧.我们知道,SSH 会自动加密和解密所有 SSH

SSH 的端口转发

第一部分 概述 当你在咖啡馆享受免费 WiFi 的时候,有没有想到可能有人正在窃取你的密码及隐私信息?当你发现实验室的防火墙阻止了你的网络应用端口,是不是有苦难言?来看看 SSH 的端口转发功能能给我们带来什么好处吧! 端口转发概述 让我们先来了解一下端口转发的概念吧.我们知道,SSH 会自动加密和解密所有 SSH 客户端与服务端之间的网络数据.但是,SSH 还同时提供了一个非常有用的功能,这就是端口转发.它能够将其他 TCP 端口的网络数据通过 SSH 链接来转发,并且自动提供了相应的加密及解

SSH Tunnel (端口转发) -- 把个人PC变成“幕后boss”

指路牌 SSH Tunnel 端口转发 网上有帖子提到SSH Tunnel与端口转发是不同的,这里我没有深入研究两个名词的具体区别,从结果上来说,我是被SSH Tunnel这个名词引到这个知识点的,但实现的效果很像"端口转发",姑且都写上吧. 适用场景 希望在自己电脑本地启动服务,让Internet发向服务器的请求转向自己的电脑,从而使调试更便利. 该debug模式只有特殊情境:如强制需要固定IP等才会用到,并不具有普遍性.网上大多教程是将端口映射到局域网内某设备上,应该都出出自运维向

远地利用ssh进行端口转发,传输数据和远程登录

博客地址:http://loopholes.blog.51cto.com/9445813/16203672015-03-17 "本试验需要下载花生壳,不要问我花生壳是什么,下载点这里" 如何让在家里面连入到公司的电脑,对于这个问题,就是我作试验的起因了: 1.如果只是让用户登录,你只需要安装SSH的服务端(server),如果你还需要远程对方,你需要下载SSH的客户端(clients) yum install -y openssh ==>会自动把openssh-server(服务

SSH的端口转发

一.SSH端口转发的概念 SSH 会自动加密和解密所有 SSH 客户端与服务端之间的网络数据.但是,SSH 还能够将其他 TCP 端口的网络数据通过SSH 链接来转发,并且自动提供了相应的加密及解密服务.这一过程也被叫做"隧道"(tunneling),这是因为 SSH 为其他TCP 链接提供了一个安全的通道来进行传输而得名.例如,Telnet,SMTP,LDAP 这些 TCP 应用均能够从中得益,避免了用户名,密码以及隐私信息的明文传输.而与此同时,如果工作环境中的防火墙限制了一些网络

SSH 本地端口转发

有时,绑定本地端口还不够,还必须指定数据传送的目标主机,从而形成点对点的"端口转发".为了区别后文的"远程端口转发",我们把这种情况称为"本地端口转发"(Local forwarding). 假定host1是本地主机,host2是远程主机.由于种种原因,这两台主机之间无法连通.但是,另外还有一台host3,可以同时连通前面两台主机.因此,很自然的想法就是,通过host3,将host1连上host2. 我们在host1执行下面的命令: $ ssh

SSH 远程端口转发

既然"本地端口转发"是指绑定本地端口的转发,那么"远程端口转发"(remote forwarding)当然是指绑定远程端口的转发. 还是接着看上面那个例子,host1与host2之间无法连通,必须借助host3转发.但是,特殊情况出现了,host3是一台内网机器,它可以连接外网的host1,但是反过来就不行,外网的host1连不上内网的host3.这时,"本地端口转发"就不能用了,怎么办? 解决办法是,既然host3可以连host1,那么就从ho