redsocks 将socks代理装换成全局代理

redsocks 需要手动下载编译。前置需求为libevent组件,当然gcc什么的肯定是必须的。

获取源码 git clone https://github.com/darkk/redsocks

安装 libevent 组件 centos 下 yum install libevent libevent-devel  -y

编译完,拷贝到/sbin 目录下,修改配置文件

vim /etc/redsocks/redsocks.conf

base{
log_debug = on;
log_info = on;
// 日志文件地址
log = "file:/var/log/redsocks.log";
daemon = on;
redirector = iptables;
user = nobody;
group = nobody;

}

redsocks {
//本地redsocks要监听的地址和端口 地址可以为0.0.0.0 即监听本地所有网卡ip
local_ip = 192.168.200.167;
local_port = 31338;
//socks地址和端口
ip = 192.168.200.167;
port = 9988;
type = socks5;
}

启动:

/sbin/redsocks -c /etc/redsocks/redsocks.conf &

查看监听端口:

ss -lntp|more

配置iptables
这里提供两个配置,第一个是基于黑名单的配置,就是说除了指定的ip地址以外,所有数据包通过redsocks转发:

    iptables -t nat -N REDSOCKS
    iptables -t nat -A REDSOCKS -o lo -j RETURN
    iptables -t nat -A REDSOCKS -d 169.254.0.0/16 -j RETURN
    iptables -t nat -A REDSOCKS -d 192.168.0.0/16 -j RETURN
    iptables -t nat -A REDSOCKS -p tcp -j REDIRECT --to-port 31338
    iptables -t nat -I PREROUTING -p tcp -j REDSOCKS

第二个是基于白名单的配置,就是说指定的ip地址才会经过redsocks转发:

    iptables -t nat -N REDSOCKS
    iptables -t nat -A REDSOCKS -p tcp -j REDIRECT --to-port 31338
    iptables -t nat -I PREROUTING -p tcp -d 172.30.0.0/16 -j REDSOCKS

修改 iptables 时请注意配置

可以直接修改 iptables 配置文件 /etc/sysconfig/iptables

举例,添加以下nat表设置

*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-N REDSOCKS
-A REDSOCKS -p tcp -j REDIRECT --to-port 31338
-I PREROUTING -p tcp -d 50.28.87.153/32 -j REDSOCKS
COMMIT

重启 iptables 服务

将内核转发打开,再将其他机器通过路由将某 ip 或某 ip 段的流量通过该机器转发至 socks 代理。

ps: redsocks 只能转发 tcp 流量

本博文主要基于该贴,http://bbs.konotes.org/thread-5089-1-1.html

时间: 2024-08-10 17:20:27

redsocks 将socks代理装换成全局代理的相关文章

mvc 解决StyleBundle中 图片绝对路径 装换成相对路径的问题

问题 解决办法 mvc 解决StyleBundle中 图片绝对路径 装换成相对路径的问题

Silverlight日记:字符串装换成Path对象

一,需要动态绑定Path 1 <UserControl x:Class="Secom.Emx2.SL.Common.Controls.EleSafe.Ele.Line" 2 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 3 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 4 xmlns:d=&q

C#把文本按照十六进制转换,,,,以及把数字装换成十六进制的字符串

1.后面第二个参数写16 input1 = Convert.ToInt32(textBox_one_reg_0xaddr.Text, 16);//将文本按照十六进制转换 2. byte aa = 0x23; textBox_pwm0_dead_percent.Text = Convert.ToString(aa,16);

关于Cocos2d-x编码装换成UTF-8

1.首先G:\vs2013way\VC\vcprojectitems这个目录下的 hfile.h newc++file.cpp 里面已经被我加了两句话 #pragma once#pragma execution_character_set("utf-8") 2.接下来是点击文件-高级保存选项-选择UTF-8的编码(无签名),要等每次ctrl+s之后高级保存选项才会亮起来 为什么上诉的方法没什么用,还是中文乱码,目前第一个步骤已经执行,下次要注意改回来

oracle中的装换函数

日期装换成字符的函数:TO_CHAR(date[,fmt[,params]]) 默认格式:DD-MON-RR 参数说明: date:将要装换的日期 fmt:装换的格式 params:日期的语言(可以不写)例子: SQL> select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual; TO_CHAR(SYSDATE,'YY ------------------- 2016-04-21 07:55:54 字符型转换成日期的函数: TO_DATE

八 web爬虫讲解2—urllib库爬虫—ip代理—用户代理和ip代理结合应用

使用IP代理 ProxyHandler()格式化IP,第一个参数,请求目标可能是http或者https,对应设置build_opener()初始化IPinstall_opener()将代理IP设置成全局,当使用urlopen()请求时自动使用代理IP #!/usr/bin/env python # -*- coding: utf-8 -*- import urllib import urllib.request import random #引入随机模块文件 ip = "180.115.8.21

redsocks 设置全局代理

分享一下我的经验, http://lilydjwg.is-programmer.com/2014/2/7/linux-really-global-http-proxy.42701.html 1. 优点: 设置一次,全局代理.连虚拟机都不要设置代理. 2. 缺点: 会停止工作,我把它放到crontab里. 1. 编译redsocks https://github.com/darkk/redsocks. 2. proxy.sh iptables -t nat -N REDSOCKS || true

将 Tor socks 转换成 http 代理

你可以通过不同的 Tor 工具来使用 Tor 服务,如 Tor 浏览器.Foxyproxy 和其它东西,像 wget 和 aria2 这样的下载管理器不能直接使用 Tor socks 开始匿名下载,因此我们需要一些工具来将 Tor socks 转换成 http 代理,这样就能用它来下载了. 注意:本教程基于 Debian ,其他发行版会有些不同,因此如果你的发行版是基于 Debian 的,就可以直接使用下面的配置了. Polipo 这个服务会使用 8123 端口和 127.0.0.1 的 IP 

花生棒2代socks5全局代理模式成功案例分享。

环境:内网ip,家里有一个极路由2和buffalo路由:目的:外网访问内网,或连接到内网成局域网:尝试:两个都用花生棒尝试外网连接路由VPN服务,均失败,有这方面成功的大侠请分享出来,谢谢.VPN这条路走不通,就换个思路尝试socks5全局代理访问内网,最后成功.下面就和大家分享一下. 第一步:花生棒添加映射,用socks5代理应用.这个都会吧,直接设置即可. 第二步:外网电脑安装全局代理软件:Proxifier(如果哪位大侠有更好的全局代理软件请回帖推荐),这个软件默认就是普通应用软件都通过s