如何搭建 GFW.Press 服务器

搭建 GFW.Press 服务器需要基本的 Linux 知识

如果你不熟悉 Linux,请看 《使用 Windows 快照搭建 GFW.Press 服务器

你也可使用快照安装,请看 《使用 Linux 快照搭建 GFW.Press 服务器

如果你喜欢 Ubuntu ,请看 《在 Ubuntu 搭建 GFW.Press 服务器

第一步:

购买一个每月只需5美元的云服务器

数据中心选择日本东京(Tokyo)或美国洛杉矶(Los Angeles)

注意:由于近期上面两个数据中心的 IP 被屏蔽的太多,建议选择美国的其它数据中心

操作系统选择 CentOS 6 x64

购买地址: https://gfw.press/vps.php

详情参考《如何创建一个云服务器

第二步:

安装 wget

yum install wget -y

下载安装脚本

wget https://raw.githubusercontent.com/chinashiyu/gfw.press/master/install_server_centos.sh  -O gfw.sh

第三步:

执行脚本进行安装

sh gfw.sh

为照顾不同水平的用户,脚本安装时也进行了防火墙设置,如果你使用的  SSH 端口不是通用的 22,或者需要自己进行防火墙设置,请先用 vi 或其它方式修改脚本的防火墙设置代码后,再执行

如果在其它系统安装,如 Ubuntu,把脚本的命令修改为该系统相应的命令就可以了

第四步:

执行脚本启动大杀器服务器

/gfw.press/server.sh

第五步:

 大杀器服务器启动后,就可以使用大杀器客户端连接翻墙了

大杀器客户端下载地址: https://gfw.press/download.php

节点就是云服务器的公网IP地址,使用 ifconfig 命令查看

端口和密码在 /gfw.press/user.txt 文件里面,使用下面的命令查看

cat  /gfw.press/user.txt

第六步:

如果需要关闭大杀器服务器,使用下面的命令

/gfw.press/stop.sh

第七步:

如果需要云服务器每次启动时,自动启动大杀器服务器,把 /gfw.press/server.sh 加入到 /etc/rc.local 文件的最后面就可以了

 

恭喜你!用上了自己的 GFW.Press 翻墙大杀器服务器

如果不能成功翻墙,请在电脑上 Ping 一下服务器的 IP 是否正常,然后 telnet 服务器IP 10001 看看是否能连接。

由于臭名昭著的 Flash 插件在浏览器可以获取访问者的真实IP,可以把下面两行加入 squid 配置文件 /etc/squid/squid.conf ,实现屏蔽 Flash 插件:
acl flash rep_mime_type application/x-shockwave-flash
http_reply_access deny flash

92 thoughts on “如何搭建 GFW.Press 服务器”

  1. 为什么sh.gfw.sh没有反应?是防火墙设置端口怎么更改呢?端口不是22。根目录下可以找到gfw.sh文件~^_^

    1. cat /gfw.press/user.txt没有反应,vim发现文件内容是空白的,ftp登录上去看,果然,user.txt是0kb的大小,鱼爷,为什么会这样?

      1. 可能是 pwgen 命令没装上,手工安装一下,再执行安装

        CentOS: yum install pwgen
        Ubuntu: apt install pwgen

  2. 大爷为什么安装不了yum install wget -y
    Amazon Linux version 2017.09 is available.
    [ec2-user@ip-172-26-5-211 ~]$ sudo su
    [root@ip-172-26-5-211 ec2-user]# yum install wget -y
    Loaded plugins: priorities, update-motd, upgrade-helper
    Package wget-1.18-3.28.amzn1.x86_64 already installed and latest version
    Nothing to do
    [root@ip-172-26-5-211 ec2-user]#

    1. 创建后,安装成功,提示: echo “已完成 GFW.Press 服务器安装” ;
      echo ;
      echo “端口和密码在文件 /gfw.press/user.txt” ;
      echo ;
      echo “启动服务器请执行 /gfw.press/server.sh ” ;

      可以ping通,提示telnet 服务器IP 10001端口连接失败。

  3. 大爷,在cent os 6上搭建时提示没有pwgen,但使用yum install提示:
    [root /]# yum install pwgen
    Loaded plugins: fastestmirror
    Setting up Install ProcessLoading mirror speeds from cached hostfile
    * base: mirrors.usc.edu
    * elrepo-kernel: repos.lax-noc.com
    * extras: mirror.hmc.edu
    * updates: mirror.hmc.eduNo package pwgen available.
    Error: Nothing to do
    Exit code: 1
    换个地方下载后提示这样:
    [root /]# wget http://dl.fedoraproject.org/pub/epel/6/x86_64/
    –2017-10-16 05:20:23– http://dl.fedoraproject.org/pub/epel/6/x86_64/
    Resolving dl.fedoraproject.org… 209.132.181.23, 209.132.181.25, 209.132.181.24
    Connecting to dl.fedoraproject.org|209.132.181.23|:80… connected.
    HTTP request sent, awaiting response… 200 OK
    Length: unspecified [text/html]
    Saving to: “index.html”
    再次尝试yum install依然是最开始那个提示,求大爷指导。

  4. 用V家主机的要注意
    貌似现在默认的centOS7不装iptables
    导致脚本里设置iptables的操作出错(找不到可修改的防火墙服务配置文件)。
    出现安装成功、大杀器服务启动成功,而无法成功让客户端上网的,请删掉大杀器后,先安装iptables服务(yum install -y iptables ),成功后,再执行大杀器安装脚本后,启动服务。

    1. 可以不安装iptables,直接用centos7的fierwall。
      firewall-cmd –permanent –add-port=10000-10100/tcp
      firewall-cmd –permanent –add-port=10000-10100/udp
      firewall-cmd –reload

        1. 如果不能成功翻墙,请在电脑上 Ping 一下服务器的 IP 是否正常,然后 telnet 服务器IP 10001 看看是否能连接。

          在电脑上可以ping通的,但是,telnet 服务器IP 10001 不能连接,大概是要设置防火墙和配置10001-10100端口。
          但是,怎么做呢?
          云服务器是谷歌的注册赠送300元哪种服务所创建的虚拟机。

  5. 石斑鱼大侠,求教:cat /gfw.press/user.txt 命令后显示乱码,建好了服务却不知道端口和密码,笑哭。。乱码如下:
    10088 R9PAbxzUck
    10089 ssd9yEkJe7
    10090 V7nuyyNAwM
    10091 tmMX97Nmv7
    10092 LRTuYsNpF9
    10093 FLv9cegANt
    10094 xR7Naj79y3
    10095 Yu4njXHJjm
    10096 4nXkMWHcv9
    10097 x3uwRggMPo
    10098 LKdYNjFm3e
    10099 unekFpgsw4
    10100 mCAnMayHc7

  6. 我用press的客户端可以上网,配服务器的时候在kali上面弄得,都成功,用户文件都有,是不是将主机的代理ip设置为虚拟机ip,端口不变,还是本地ip,两种我都试过,还是因为wget后面的包下载有问题,我按照文章下的

  7. 是否能和shadowsocks 并存呢!
    目前我尝试过可以并存,但每隔一段时间发现,要么SHADOWOSCKS无法连接就是GFW无法连接。
    我怀疑是机器内存不够(1G) !

  8. 大爷你好
    按照教程搭建的服务器,却始终无法打开user.txt
    用ls命令查看确实有这个文件存在,但文件大小为0
    不知道哪里出了问题,请指点,谢谢!

    1. 可能是没有 pwgen 命令,手工安装一下

      yum install pwgen -y

      然后执行

      /gfw.press/make_user.sh

      应该就好了

          1. 大爷,我在搬瓦工上输入命令提示这个:
            [root /]# yum install pwgen -y
            Loaded plugins: fastestmirror
            Setting up Install ProcessLoading mirror speeds from cached hostfile
            * base: mirrors.usc.edu
            * elrepo-kernel: repos.lax-noc.com
            * extras: mirror.hmc.edu
            * updates: mirror.hmc.eduNo package pwgen available.
            Error: Nothing to do
            Exit code: 1
            应该怎么搞阿

  9. 鱼大,win系统用的很熟。Linu系统直接白痴级,看到很多自己做服务器的也很想做一个,专门弄了一台电脑装好了Linux6.5剩下的该怎么做?看了好几天推文和博客里的介绍还是一头雾水不知所措,能写个教程么或者稍详细点介绍步骤么?谢谢,鱼饵供上。

  10. 我自己架设的服务,启动 server.sh后,可以ping通,但是telnet MYIP 10001无法连接。
    ps -ef 有进程
    netstat -nultp |grep 10001显示:
    tcp6 0 0 :::10001 :::* LISTEN 5238/java

    firewalld和iptables都属于关闭状态。请问这是什么原因?谢谢。

  11. 搬瓦工VPS,debian 9 X86_64 HTTP代理安装脚本

    echo ;
    echo ;
    echo 正在安装 GFW.Press 服务器,请稍候………. ;
    echo ;

    cd / ;
    apt-get update > /dev/null ;
    apt-get install default-jdk squid pwgen git -y -q > /dev/null ;
    if [ -e “/etc/squid/squid.conf” ] ; then
    sed -i “s/shutdown_lifetime 3 seconds//g” /etc/squid/squid.conf ;
    sed -i “s/access_log none//g” /etc/squid/squid.conf ;
    sed -i “s/cache_log \/dev\/null//g” /etc/squid/squid.conf ;
    sed -i “s/logfile_rotate 0//g” /etc/squid/squid.conf ;
    sed -i “s/cache deny all//g” /etc/squid/squid.conf ;
    echo “shutdown_lifetime 3 seconds” >> /etc/squid/squid.conf ;
    echo “access_log none” >> /etc/squid/squid.conf ;
    echo “cache_log /dev/null” >> /etc/squid/squid.conf ;
    echo “logfile_rotate 0” >> /etc/squid/squid.conf ;
    echo “cache deny all” >> /etc/squid/squid.conf ;
    fi;
    update-rc.d squid defaults > /dev/null ;
    service squid restart > /dev/null ;

    if [ -e “/gfw.press” ] ; then

    echo “目录 /gfw.press 已经存在,安装退出” ;
    echo ;
    echo “如需重新安装,请先把目录 /gfw.press 改名或删除” ;

    else

    git clone https://github.com/chinashiyu/gfw.press.git ;

    chmod a+x /gfw.press/server.sh ;
    chmod a+x /gfw.press/stop.sh ;
    for i in $( seq 20001 20101 )
    do pwgen -n -s -B -c 10 | sed “s/^/$i /”;
    done > /gfw.press/user.tx_ ;
    rm -f /gfw.press/user.txt ;
    cp /gfw.press/user.tx_ /gfw.press/user.txt ;

    sed -i “s/-Xms512M/-Xms256M/g” /gfw.press/server.sh ;
    sed -i “s/-Xmx512M/-Xmx256M/g” /gfw.press/server.sh ;

    iptables -F ;
    iptables -A INPUT -p tcp –dport 22 -j ACCEPT ;
    iptables -A INPUT -p tcp –dport 80 -j ACCEPT ;
    iptables -A INPUT -p tcp –dport 443 -j ACCEPT ;
    iptables -A INPUT -p tcp –dport 25 -j ACCEPT ;
    iptables -A INPUT -p tcp –dport 110 -j ACCEPT ;
    iptables -A INPUT -p tcp –dport 20000:20100 -j ACCEPT ;
    iptables -A INPUT -p tcp –dport 28040:28050 -j ACCEPT ;
    iptables -P INPUT DROP ;
    iptables -P FORWARD DROP ;
    iptables -P OUTPUT ACCEPT ;
    iptables -A INPUT -i lo -j ACCEPT ;
    iptables -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT ;
    iptables -A INPUT -p icmp -j ACCEPT ;
    iptables-save > /dev/null ;

    echo ;
    echo “已完成 GFW.Press 服务器安装” ;
    echo ;
    echo “端口和密码在文件 /gfw.press/user.txt” ;
    echo ;
    echo “启动服务器请执行 /gfw.press/server.sh ” ;

    fi;

    echo ;
    echo ;

    1. 请教尼采:这个脚本该怎么运行呢?能详细点吗?谢谢!教教像我一样的小白们。自己也弄了个搬瓦工,照鱼大爷的方法做了,但不能成功翻墙。

  12. 安装的时候提示这个,重新安装了好几次,ssh端口也是22,搬瓦工的VPS
    系统是一样的,其他的都是按照要求做的。但是却提示这个,而且查看用户文件的时候显示为空。请问怎么解决好呢?需要改什么文件吗?这台服务器原来装了SS和KCP。
    /gfw.press/make_user.sh: line 12: pwgen: command not found

    1. pwgen 是个生成密码的软件,脚本里的命令可能没安装成功,先手工安装一下pwgen: yum install pwgen -y

  13. 请教 鱼帮主前辈 搬瓦工的vps 可以 设置吗?会对搬瓦工的vps原有的ss 服务 有覆盖吗?多谢了先

  14. 大爷好,按照你的5个步骤都安装好了,安装时后面都显示OK,没提示出错,服务器也重启后启动/gfw.press/server.sh,客户端的设置也改成 /gfw.press/user.txt里面的端口和密码了,但就是连接不成功,而客户端改用你的大杀器的端口和密码可以成功翻墙。请问是什么原因造成的?该如何改呢?谢谢。 另外在gfw.press/client.json文件里看到 ServerHost里是69.30.201.106这个ip,改成127.0.0.1或自己vps的ip,也不行啊。

          1. cmd窗口下,telnet 10001或3128,窗口会闪一下,窗口下边会拉长一点, 然后就显示光标在闪动,没其他提示,按2次回车键,就退回C:\Users\Administrator> 。

          2. 石斑鱼大爷说道:那服务器是正常的了。

            服务器正常,客户端也正常,那真的不知怎么办了。还按照大爷上面给其他朋友的回复中关闭防火墙的命令,关闭后,win7客户端还是不能成功翻墙。

          3. 大爷还请帮忙看看,venet0有数据,venet0:0却没有数据?怎么办啊?谢谢。
            执行ifconfig后显示如下:
            lo Link encap:Local Loopback
            inet addr:127.0.0.1 Mask:255.0.0.0
            inet6 addr: ::1/128 Scope:Host
            UP LOOPBACK RUNNING MTU:65536 Metric:1
            RX packets:1941 errors:0 dropped:0 overruns:0 frame:0
            TX packets:1941 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:0
            RX bytes:1444021 (1.3 MiB) TX bytes:1444021 (1.3 MiB)

            venet0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
            inet addr:127.0.0.1 P-t-P:127.0.0.1 Bcast:0.0.0.0 Mask:255.255.255.255
            UP BROADCAST POINTOPOINT RUNNING NOARP MTU:1500 Metric:1
            RX packets:2996 errors:0 dropped:0 overruns:0 frame:0
            TX packets:3043 errors:0 dropped:166 overruns:0 carrier:0
            collisions:0 txqueuelen:0
            RX bytes:1795556 (1.7 MiB) TX bytes:1618887 (1.5 MiB)

            venet0:0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
            inet addr:x.x.x.x P-t-P:x.x.x.x Bcast:x.x.x.x Mask:255.255.255.255
            UP BROADCAST POINTOPOINT RUNNING NOARP MTU:1500 Metric:1
            x.x.x.x是我vps的ip。

  15. 请问一个问题,俺很早就下载了大杀器客户端,是个zip包,打开就可以使用。现在发现不能用了,又去下载,才发现没有zip版的了,只有安装版。虽然安装后可以使用,但还是觉得免安装版好用,可以装在U盘里到处走。
    对照了一下新安装的版本,跟以前下载的版本好像是一样的,不知道为啥以前那个版本为啥不能用了。还有现在只有大杀器了?页面上的ss服务器ip没有了

  16. 刚入门,请问下既然已经创建好了Vultr云服务器,接下来直接用ss登录不就可以了吗,为何还要创建大杀器服务器?

  17. 请问我在GOOGLE CLOUD上安装了 SHADOWSOCKS 和 SHADOWSOCKR,当时测试全部能正常工作,然后我又安装了GFW PRESS,结果SS 和 SSR 就不能工作了,GFW PRESS能工作,请问不知何故?

    1. 大杀器服务器默认使用了10001至10100端口段,squid使用了3128端口,只要不同时用,应该不会有问题

      大杀器服务器安装时,进行了基本的防火墙设置,看看是不是被挡住了

      1. 大爷你好。因为端口和之前的ss配置有冲突,用rm删除了gfwpress文件夹。 但是好像之前的ss还是不工作。有没有什么办法

    2. 小白请问下Google cloud怎么用的。Telnet IP始终不行,还有鱼大爷写的自动启动搞不明白
      门外汉求教。

  18. GFW.Press 服务器可以搭建在虚拟机里吗?我在台湾总公司的伺服器里安装一个vm虚拟机,安装CentOS 6.9正式版,有中华电信的固定IP,可以搭建吗?

  19. 你好,删除掉gfw文件和rc.local的iptables-restore后,每次重启防火墙仍是会重置,究竟是什么原因呢?怎么解决?

    1. 安装脚本里面有一段防火墙设置代码,修改成你想要的设置后,再执行就可以了

      如果不想运行防火墙,执行如下命令关闭就可以了

      service iptables stop

      chkconfig iptables off

  20. 好霸道啊,安装后直接将防火墙所有设置重置了,直接导致原来ssr甚至ssh都登录不了,差点要重装系统了,饶了一圈终于打开ssh端口,服,而且每次重启都执行iptables-restore,又再封一次,安装介绍里竟然没有任何说明,简直坑啊。PS:有木有卸载脚本?要卸载时才发现只有安装没有卸载的……

      1. 我这里设置了防火墙,打开了相应端口后,发现还是连不上,只有打开全部端口才能连上。但是连上后,就可以只是用相应端口进行了。请问如果想要打开最少的端口,应该怎么设置iptables?谢谢。

          1. iptables -F ;
            iptables -A INPUT -p tcp –dport 22 -j ACCEPT ;
            iptables -A INPUT -p tcp –dport 80 -j ACCEPT ;
            iptables -A INPUT -p tcp –dport 443 -j ACCEPT ;
            iptables -A INPUT -p tcp –dport 25 -j ACCEPT ;
            iptables -A INPUT -p tcp –dport 110 -j ACCEPT ;
            iptables -A INPUT -p tcp –dport 10000:10100 -j ACCEPT ;
            iptables -P INPUT DROP ;
            iptables -P FORWARD DROP ;
            iptables -P OUTPUT ACCEPT ;
            iptables -A INPUT -i lo -j ACCEPT ;
            iptables -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT ;
            iptables -A INPUT -p icmp -j ACCEPT ;
            /sbin/service iptables save ;
            /sbin/service iptables restart ;
            ————————————
            上述端口,都telnet不通。
            只可以ping通谷歌云服务器的外网IP。

    1. 可以把防火墙那段注释掉。

      另外,脚本防火墙那段,应该先把先有有防火墙保存,增加几条就行了。

      而不是先把防火墙全部打开,再释放几个。
      个人愚见,欢迎拍砖。

发表评论

电子邮件地址不会被公开。 必填项已用*标注