前言
学校在上个学期升级了校园网,之前允许一个设备登录,然后分享网络,可以实现多台设备使用一个账号,但升级后的网络会检测网络共享,发现后直接强制下线账号。至于检测原理,我也不清楚,一开始猜测是根据流量来检测,使用$ssr$来加密流量,但仅存活了一天便挂掉了。实验室的网络是不用认证,可以直接使用的,并且宿舍和实验室在内网是互通的,于是便有了将实验室的网络引入宿舍的想法。
解决方案
使用一台服务器/电脑搭建PPTP,然后在宿舍使用智能路由器(看来当初没买普通路由器的想法是对的)通过PPTP来连接到实验室的网络,从而实现免认证多人同时上网。宿舍晚上11点断电,路由器设置开机自动PPTP连接,然后就可以实现无痛上网了。
搭建方法
- 首先我找到了一台破主机,让他从当PPTP服务器角色,放在实验室24小时不关机,为了搭建方便(主要还是因为配置垃圾),给它装了Linux系统,我选择的是Ubuntu 16.04。
- 然后当然是连接好网络,先保证服务端可以正常上网,然后更改一下镜像源,确保后续安装的速度。
接着更新一下系统。
sudo apt-get -y update sudo apt-get -y upgrade
然后安装pptpd、iptables、vim。
sudo apt-get install -y pptpd iptables vim
修改配置文件,配置本机和远程ip。
sudo vim /etc/pptpd.conf # 取消如下两行的注释 localip 192.168.0.1 remoteip 192.168.0.234-238,192.168.0.245
配置DNS,这一步要注意,一般学校、企业等单位的网络环境比较特殊,有自己的DNS服务器,这里的DNS一定要使用学校的,不要填写公共DNS服务器(如114.114.114.114)。
sudo vim /etc/ppp/pptpd-options # 把xxx.xxx.xxx.xxx换成自己所处网络环境的DNS地址 ms-dns xxx.xxx.xxx.xxx
设置PPTP服务的连接用户名和密码。
sudo vim /etc/ppp/chap-secrets #在配置文件末尾输入以下内容,注意用空格隔开 oxygen pptpd 123456 * #上面设置用户名为oxygen,密码为123456,可以根据自己的喜好修改
开启内核 IP 转发。
sudo vim /etc/sysctl.conf # 取消掉IPV4 转发注释 net.ipv4.ip_forward=1 # 使配置生效 sudo sysctl -p
重启PPTP服务。
service pptpd restart
建立 NAT,这里的ens33是网络配置的名称,不同设备名称不同,我这里是ens33,注意修改,可以使用ifconfig命令查看网络配置名称。
sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ens33 -j MASQUERADE
设置 MTU,防止单个数据包过大
sudo iptables -A FORWARD -s 192.168.0.0/24 -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1400
至此,我们基本上就已经完成搭建啦,现在可以用其他设备通过PPTP连接服务器,测试是否可以上网,如果上不了网,极大可能性是网卡信息设置错了(比如我自己,卡在这很久)。
如果一切正常,那么可以使用了,但谁能保证24小时不间断开机,每次开机重新启动服务,设置NAT和MTU难免有些麻烦,再加个开机自启基本就完美了。
加入开机自启,这样即使关机了,开机不用执行任何操作,即可直接使用。
sudo vim /etc/rc.local # 在exit 0 之前加入如下代码,注意第二行那里的网络配置名(ens33)改为你自己的 /etc/init.d/pptpd restart sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ens33 -j MASQUERADE sudo iptables -A FORWARD -s 192.168.0.0/24 -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1400
到这里算完全搭建完了,但我并信不过我使用的这台主机,所以设置了一下定时重启,如果配置足够的话,这步完全可以忽略,但没办法,为了防止它因为7*24小时工作而宕机,还是配置一下比较好。
配置定时重启。
sudo vim /etc/crontab
23 * root /sbin/reboot
以上意思是每天23使55分重启,可以根据自己的情况修改时间
逗比
大佬
楓の街
@逗比 : 只是喜欢瞎折腾罢了
jeck blus
牛皮