匿(fan)名(qiang)上网不是梦,Raspberry Pi VPN/TOR路由器助你圆梦

匿(fan)名(qiang)上网不是梦,Raspberry Pi VPN/TOR路由器助你圆梦
在《三周年,500万片销量下那些优秀的“树莓派”项目制作》文中我们有简单提到树莓派 VPN/TOR路由器项目。今天我们就详细介绍一下如何用便携式WiFi VPN/TOR路由器安全上网!Raspberry Pi结合Linux系统,还有其他额外的软件,可连接任何VPN服务器。VPN连接进而加密流量,不仅黑客和间谍无法得知你浏览哪些网站,就连你所浏览的网站,也无法辨识你从哪部电脑上网。
这项项目的材料有1个Raspberry Pi、2个USB无线网卡、1张SD卡、1个电源插头。
就算找不到乙太网,路由器也可自行建立连接,亦可连接任何WiFi网络,作为个人WiFi网络接入点和不安全WiFi网络的桥梁,光是这个路由器,就可以涵盖整个房间。
设定完成后,在WiFi装置建立被动型VPN连接,一旦VPN连接中断,电脑网络连接立刻中断,以免未加密资料外泄。
如果你还嫌不够,这款路由器也可能支持TOR,让你在网络世界深潜。
有了开放原始代码软件鼎力相助,你的装置可以掌控多个WiFi连接。无论走到哪里,你都可以连接WiFi网络接入点,通过VPN为网络加密。
当朋友来访,就算他们不会设定,也可以连接安全的网络。此外,就算不在美国境内,你也可以连接Hulu、Netflix、HBO等网站,或者观赏你喜爱球队的比赛。如果这样还不够,不妨加入以网域为基础的阻挡广告功能,利用bind即时拦截网络广告。
好好享受设定随身WiFi VPN/TOR路由器的乐趣吧!

  • 难度:中级
  • 成本:60~80美元
  • 时间:1~4小时

材料

  • Raspberry Pi B或B ,如果要连接WiFi网络接入点,Raspberry Pi还要有USB插孔
  • SD卡(4G以上),Raspberry Pi B 采用Micro SD,Raspberry Pi B则是普通SD卡
  • Edimax USB无线网卡EW-811UN(2)
  • MicroUSB电压转换器,5V
  • Raspberry
  • Pi外壳

工具

  • SD卡读卡器
  • 转换器(HDMI或RCA转为VGA或DVI)
  • USB键盘
  • VGA显示器

步骤一:烧写SD卡

匿(fan)名(qiang)上网不是梦,Raspberry Pi VPN/TOR路由器助你圆梦 匿(fan)名(qiang)上网不是梦,Raspberry Pi VPN/TOR路由器助你圆梦

src=”http://oszine.com/wp-content/uploads/2015/09/TOR-Router-3a3-9188056.jpg” width=”400″ height=”300″ alt=”匿(fan)名(qiang)上网不是梦,Raspberry Pi VPN/TOR路由器助你圆梦” title=”匿(fan)名(qiang)上网不是梦,Raspberry Pi VPN/TOR路由器助你圆梦” />

  • 把SD卡(还有读卡器)插到电脑。
  • 这项项目用Raspbian Linux 系统,这是Linux为Raspberry Pi发行的系统,不仅小,而且跟Debian相容。前往raspberrypi.org/downloads下载Raspbian ZIP。
  • 下载成功后,解压会看到映像文件,把映像文件复制到SD卡。 Raspberry Pi网站清楚说明安装映像的步骤。基本上,你可以利用下列指令,来操控Mac或Linux系统终端机:
   $ sudo dd if=/path/to/raspbian-image.img of=/dev/name-of-sd-card-disk

若换成Windows系统,不妨采用 Win32DiskImager程序,方便你拖曳 Raspbian映像文件,放到目标磁盘中。

  • 映像文件复制完成后,该是组装的时候了。把Raspberry
    Pi塞入外壳中,插上USB无线网卡和SD卡,插好屏幕、键盘和电压转换器,接着就是开机。

步骤二:启动Raspberry Pi

  • 第一次启动Raspberry,raspi-config会带领你完成设定,让你更改用户密码、超频Raspberry Pi、设定桌面环境。
  • 在这个项目,你必须更改用户密码、扩充磁盘并选择「命令行」(command line)作为开机环境。如果你住在英国以外的地方,还要更改国际设定(键盘、时区和地点)。
  • 你可能还想驱动SSH,这样就算没有屏幕和键盘,存取Raspberry也不会有问题。退出的时候,画面自动切换到控制台,登录时输入用户名称「pi」和密码。

步骤三:连接网络

  • 连接乙太网很简单;只要插好乙太网线,Raspberry Pi就会自己连接。连接WiFi比较困难,目前有几种WiFi和加密方式,每一种在Linux系统的设定都有些微差异。
  • 为了指示Raspberry Pi连接无线网络,你必须编辑/etc/network/interfaces文件。
$ sudo nano –w/etc/network/interfaces

在这个文件,你可以设定连接WPA、WEP和开放无线网络的规则。

  • 你设定这个文件的方式,取决于无线网络接入点的加密方式。 [protected-iframe id=”37bc87e7b65f9fcd08c96ae5c3c32bdd-30206320-62929444″ info=”37bc87e7b65f9fcd08c96ae5c3c32bdd” ] 举例来说,连接WPA Wi-Fi网络,这个文件会是下列内容:
allow-hotplug wlan0 # detect WiFi adapter
iface wlan0 inet dhcp # connect WiFi with DHCP
wpa-ssid "myhostnetwork" # WPA access point name
wpa-psk "myhostpassword" # WPA access point
  • password 手动重启WiFi,让Raspberry Pi连接网络。
$ sudo ifdown wlan0 $ sudo ifup wlan0
  • 你可以连接网站或执行下列指令,确定连接成功与否:
$ ifconfig wlan0

步骤四:建立网络接入点

  • 我们先更新套件清单
$ sudo apt-get update

有了网络接入点,电脑才能通过WiFi连接。我们会采用hostapd套件,来建立网络接入点和ISC-DHCP服务器,提供连接网络接入点的电脑IP位址。

  • 安装网络接入点:你需要量身定制的hostapd,还有支持Edimax无线网卡的网络接入点软件。安装时间大约10分钟。
$ wget https://github.com/jenssegers/RTL8188-hostapd/archive/v1.1.tar.gz
$ tar -zxvf v1.1.tar.gz
$ cd RTL8188-hostapd-1.1/hostapd
$ make
$ sudo make install

通知hostapd网络接入点的名称和密码,还有Wi-Fi管理装置的名称:

$ sudo nano –w/etc/hostapd/hostapd.conf

更改/etc/hostapd/hostapd.conf三行如下:

interface=wlan1
ssid=mySecureRouter
wpa_passphrase=mySecurePassword

最后启动hostapd,并加入开机后启动服务:

$ sudo service hostapd start
$ sudo update-rc.d hostapd enable
  • 安装DHCP服务器,安装dnsmasq:
$ sudo apt-get install dnsmasq

我们通知DHCP服务器,其所控制的IP位置介于192.168.0.10和192.168.0.200之间,Raspberry Pi路由器IP为192.168.0.1。这会设定成「授权」服务器,采用wlan1装置,强迫用户舍去过期的IP位址。

$ sudo nano–w /etc/dnsmasq.d/dnsmasq.custom.conf

把下列编码加入/etc/dnsmasq.d/dnsmasq.custom.conf:

interface=wlan1
   dhcp-range=wlan1,192.168.10.10,192.168.10.200,2h
   dhcp-range=wlan1,192.168.10.10,192.168.10.200,2h
   dhcp-option=3,192.168.10.1 # our router
   dhcp-option=6,192.168.10.1 # our DNS Server
   dhcp-authoritative # force clients to grab a new IP
  • 设定DHCP服务器,利用wlan1装置来管理DHCP要求:
$ sudo nano -w /etc/resolv.conf

在/etc/resolv.conf文件加上下列编码,把DNS导向Google公共DNS服务器:

nameserver 192.168.1.1
nameserver 8.8.8.8
nameserver 8.8.8.4
  • 现在设定wlan1装置,以固定IP位址192.168.0.1开机载入:
$ sudo –w nano /etc/network/interfaces

加入下列编码:

iface wlan1 inet static
    address 192.168.0.1
    netmask 255.255.255.0

最后,重新启动wlan1 无线网卡:

 $ sudo ifdown wlan1
 $ sudo ifup wlan1
  • 现在启动DHCP服务器,并加入开机后启动服务:
$ sudo service dnsmasq start
$ sudo update-rc.d dnsmasq enable

你会在电脑看到「mySecureRouter」的无线网络接入点名称,以WPA2加密方式连接该网络,并且输入密码「mySecurePassward」。

步骤五:连接VPN或TOR

  • 现在我们来到重头戏:网络加密连接!VPN和TOR都是加密技术,以免网络浏览受到监视。同一个网络连接,很难同时采用TOR和VPN,所以只能择一。
  • TOR vs VPN:TOR又称洋葱路由器,这项技术加密网络资料后,通过电脑网络从网站来回传播资料,如图一所示。TOR很容易安装,但前提是使用支持TOR的网络浏览器。TOR速度比较慢,因为电脑连接到网站前,TOR会在网络上的随机节点,加密并路由你的网络流量。TOR也让你存取网络的隐蔽层,又称暗网,这是VPN做不到的。
  • VPN又称虚拟私人网络,以被动的方式,在电脑和网站之间建立单一加密通道,如图二所示。如果你相信自己的VPN服务器,VPN会比TOR更安全。VPN比较难设定,但不需要其他特殊软件。首先,你在VPN服务器要有帐号,还要在VPN服务器产生几个文件,来确认你的帐号。你必须相信VPN服务器不是在记录你或发布你的私人信息。如果你不想付费使用VPN服务,或者你想学会建立自己的VPN服务器,可以上这个网站
  • 先来安装TOR软件:
$ sudo apt-get install tor

启动TOR,设定为开机后启动服务:

$ sudo service tor start
$ sudo update-rc.d tor enable

最后在你上网的电脑,安装TOR网络浏览器,从torproject.org下载。

  • 安装VPN:Linux可轻松支持OpenVPN,许多VPN供应商也支持OpenVPN协定。为了连接VPN,你需要VPN供应商的信息(例如凭证),也可能需要使用户名和密码。你还要知道VPN服务器的域名、端口(通常为1194)和协议(通常是UDP)。

安装OpenVPN:

$ sudo apt-get install openvpn

VPN供应商提供你的凭证,你可以存为/etc/openvpn/ca.crt。如果供应商还提供用户名和密码,请放在/etc/openvpn/auth.txt。auth.txt就像这样:

   myVPNUserName
   myVPNPassword

设定OpenVPN,连接到VPN服务器

   $ sudo nano –w /etc/openvpn/client.conf

虽然VPN设定取决于服务器设定,但/etc/openvpn/client.conf的版本只有一种,如下所示:

client # client mode
dev tun
proto udp # this must match the server’s protocol
remote vpn-server.example.com 1194 # must match the server
resolv-retry infinite # reconnect when disconnected
nobind
persist-key
persist-tun
ca ca.crt # this file is given by the server
 #cert client.crt # uncomment if the VPN server requires a client.crt
 #key client.key # uncomment if the VPN server requires a client.key
ns-cert-type server
 #comp-lzo # uncomment if the server supports lzo compression
 #auth-user-pass auth.txt # uncomment if your server requires a username and password
script-security 3 # must match the server’s script security setting
keepalive 5 30 # keep connection alive
verb 3
log-append /var/log/openvpn-client.log

时间戳没有对好,OpenVPN仍然不会运转。Raspberry Pi没有即时时钟,你必须利用网络时间协议(NTP)服务。

$ sudo service ntp start
$ sudo update-rc.d ntp enable

启动OpenVPN客户端,设定为开机后启动服务:

$ sudo service openvpn start
$ sudo update-rc.d openvpn enable

一旦完成连接,你可以通过路由追踪(traceroute)来测试你的连接,把网络连接路径导向makezine.staging.wpengine.com。这时候,你正在连接VPN预设服务器10.0.0.1。

步骤六:设定路由

  • 路由是电脑和网络之间的桥梁,把电脑传给Raspberry Pi的数据,进一步传送到网站上。如果网站有回应,数据就会传回你的Raspberry Pi。Raspberry Pi弄清楚这个回应是针对哪个无线客户端,接着传回你的电脑。
  • 如果你设定好VPN或TOR,这些数据还会通过加密服务传输,这会用到iptables软件。我们必须设定好规则,Raspberry Pi才知道如何引导数据的路径。我们来启动路由吧:
$ echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward

通知Linux记得这项变更:

$ sudo nano /etc/sysctl.conf

在这个文件移除(uncomment)下列内容:

net.ipv4.ip_forward=1

你会过哪个路由装置,取决于你怎么连接到Raspberry Pi(VPN、TOR、乙太或WiFi)。根据连接方法来选择路由装置:[protected-iframe id=”65ac4502bc06dd3c23837be5405ed3e6-30206320-62929444″
info=”65ac4502bc06dd3c23837be5405ed3e6″ ]

  • 趁电脑连接的时候,通知Linux启动伪装(masquerade)功能:
$ sudo iptables –t nat –A POSTROUTING –o tun0 -j MASQUERADE

通知Linux把所有流量导向网络:

$ sudo iptables –A FORWARD –i wlan1 –o tun0 -j ACCEPT

最后,通知Linux把传回的数据,转交给合适的客户端:

$ sudo iptables –A FORWARD –i tun0 -o wlan1 –m state --state RELATED,ESTABLISHED –j ACCEPT

储存这些设定,以便下一次重新开机:

$ sudo sh –c “iptables-save > /etc/iptables.restore”
$ echo “up iptables-restore < /etc/iptables.restore” | sudo tee --append /etc/network/interfaces

步骤七:连接WiFi客户端

  • 电脑继续开着,试着连接无线网络接入点。接入点名称:mySecureRouter,密码:mySecurePassword。
  • 你会发现电脑利用ARP指令连接Raspberry Pi。
$ sudo arp –i wlan1
  • 你设定好Raspberry Pi的TOR,也要在电脑安装TOR网络浏览器。

版权声明:
作者:admin
链接:http://www.bttme.com/archives/1067.html
来源:bttme
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>