ss的iptables脚本

post by rocdk890 / 2016-4-26 16:26 Tuesday linux技术
  最近想把ss给搞到linux里,不想使用openwrt来给公司fq,毕竟openwrt对内存有限制,而linux系统没有这方面的限制,正好在搞的过程中,发现了个不错的脚步,可以配合ss+ss-readir+ipset来使用,具体脚本内容看下面:
cat shadowiptables.sh
#!/bin/sh

#自动翻墙脚本,配合shadowsocks-libev的ss-redir使用。需要ipset( apt-get install ipset)

server_IP=1.1.1.1

[ -r chnroute.txt ] || curl 'http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest' | grep ipv4 | grep CN | awk -F\| '{ printf("%s/%d\n", $4, 32-log($5)/log(2)) }' > chnroute.txt

iptables -t nat -N SHADOWSOCKS

iptables -t nat -A SHADOWSOCKS -d $server_IP -j RETURN

iptables -t nat -A SHADOWSOCKS -d 0.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 10.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 127.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 169.254.0.0/16 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 172.16.0.0/12 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 192.168.0.0/16 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 224.0.0.0/4 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 240.0.0.0/4 -j RETURN

ipset create chnroute hash:net
cat chnroute.txt |  xargs -I ip ipset add chnroute ip

iptables -t nat -A SHADOWSOCKS -m set --match-set chnroute dst -j RETURN

iptables -t nat -A SHADOWSOCKS -p tcp -j REDIRECT --to-ports 1080

iptables -t nat -A OUTPUT -p tcp -j SHADOWSOCKS

好了,执行脚本后要自己执行防火墙保存和重启.
ps:
https://gist.github.com/qwIvan/a2b315982c2172e7cbd8
夜空- 本站版权
1、本站所有主题由该文章作者发表,该文章作者与夜空享有文章相关版权
2、其他单位或个人使用、转载或引用本文时必须同时征得该文章作者和夜空的同意
3、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
4、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
5、原文链接:blog.slogra.com/post-650.html

标签: iptables 防火墙 ss fq ipset

  1. 2017-01-25 16:00
    @sh:可以实现啊,openwrt也是基于linux的,所以单独用linux服务器来搞的话,是可以实现,就是步骤上比openwrt要麻烦,毕竟什么都得自己装.
  1. gravatar sh
    2017-01-24 17:22
    @rocdk890
    ss服务器目前我搭好了,用一个刷了OpenWrt的tplink ap连接过去做客户端的接入。
    现在想用一台linux机器代替这个ap,这样内网的其他有线的机器也可以通过它出去了。

    能实现吗?
  1. 2017-01-23 17:53
    @sh:>>server_IP是ss服务器的ip还是host本地网卡的ip?
    是服务器ip
    >>没看懂host是怎么连接ss服务器的?
    我建议你先玩LEDE,然后再慢慢过渡到服务器.

    我建议在exsi里虚拟个LEDE是最快的选择,搭建起来真的很麻烦.
  1. gravatar sh
    2017-01-23 16:10
    @rocdk890:谢谢!
    再请教一下:
    1,server_IP是ss服务器的ip还是host本地网卡的ip?
    2,没看懂host是怎么连接ss服务器的?

    最近也有这个需求,想通过内网的一台linux机器连接ss服务器做转发来FQ,但是苦于找不到linux相关的客户端的介绍。
  1. 2017-01-23 11:52
    @sh:这个脚本是给局域网的机器来转发数据实现FQ的
  1. gravatar sh
    2017-01-22 15:17
    你好,执行脚本的主机是ss服务器?还是墙内的linux主机自动连接ss服务器,然后其他局域网的机器以它为数据转发机器实现fq?谢谢!
  1. 2016-09-27 13:48
    @hb:这是国内和国外ip进行分流,你试试就知道了.
  1. gravatar hb
    2016-09-24 21:05
    这样设置本机没有问题,有没有试过nat?就是其它的机器通过此机器访问google,facebook之类的.

评论: