vpn服务器架设(手把手教你搭建自己的 VPS 服务器)
总有一些时候,你想要一台自己的 VPS 。本文分享了作者在实践过程中的一些经验,可以给那些自己搭建 VPS 的朋友一点帮助。
前期准备
需要购买一台拥有 root 权限的 VPS ,我选择的是 搬瓦工[
https://bandwagonhost.com/ ] ,当时购买的是 512 M 内存 5 G SSD,500 G 流量/月, 9.99 刀每年,但是好像现在这种低价套餐已经结束了。有意的朋友可以看一下其他的套餐或者别的公司的 VPS。有的朋友说DigitalOcean[ https://www.digitalocean.com/ ] 的速度非常快,看YouTube直接 1440p,但是我还没测试过,目前搬瓦工的速度能满足我的需求,而且 DO 的价格比较昂贵。
下图是搭了 SS 和 IPsec VPN 服务的使用情况,仅供参考:
使用情况
服务器购买后,安装 CentOS7,因为以下教程都是基于 CentOS7 的,安装新的 OS 后,搬瓦工会告诉你 SSH 的端口和 root 的密码,这些是自己无法自定义的,要记住了如果实在忘了也可以重置 root 密码,或者直接使用搬瓦工提供的在线SSH登录来操作也可,就是反应比较慢,所以我们以后还是常用 ssh 登录来配置 VPS ,Mac 下直接使用终端就好,win 下自行寻找一个 ssh 工具就好。
登录 ssh 的命令:
$ ssh -p vps 端口号 root@vpsIP 地址
登录上以后就相当于在本地操作一样了,你可以使用各种 Linux 命令来操作了。
配置防火墙
如果 SSH 无法登录,那说明防火墙关闭了 SSH 端口,需要通过在线 SSH 登录进去关闭防火墙重新配置。
清除防火墙配置
$ iptables -F
清除 iptabels 所有表项,同时 nat 设置也没了,但是我们后续的脚本里会配置的,不用担心。如果 SSH 登录正常就不用管防火墙。
安装 firewalld
$ yum install firewalld firewall-config$ systemctl start firewalld
P.S. 我在安装完 firewalld 之后然后启动服务的时候一直显示失败,然后重启了一遍服务器就可以正常的启动 firewalld 服务了,有类似情况的朋友可以重启一下服务器。
修改 SSH 端口
$ vi /usr/lib/firewalld/services/ssh.xml
会出现以下的内容:
<?xml version="1.0" encoding="utf-8"?><service><short>SSH</short><description>Secure Shell (SSH) is a protocol for logging into and executing commands on remote machines. It provides secure encrypted communications. If you plan on accessing your machine remotely via SSH over a firewalled interface, enable this option. You need the openssh-server package installed for this option to be useful.</description><port protocol="tcp" port="22"/></service>
将 port=”22”,修改成搬瓦工提供给你的端口号,然后重载 firewalld 就 OK。
vi 的命令: 按 “i
” 是编辑模式,编辑后按 “esc
” 退出编辑模式,然后按Shift
输入“:
” 和 “wq
” 保存退出 vi。
$ firewall-cmd --permanent --add-service=ssh$ firewall-cmd --reload
OK,现在准备工作都已就绪,安装了源,安装配置了防火墙,下一步开始搭建服务了。
搭建 Shadowsocks 服务
这个服务是最简单也是最常用的。
安装组件
$ yum install m2crypto python-setuptools$ easy_install pip$ pip install shadowsocks
安装时部分组件需要输入 Y 确认。小内存 VPS 可以分别安装组件。
安装完成后配置服务器参数
$ vi /etc/shadowsocks.json
写入如下配置:
{"server":"0.0.0.0","server_port":8388,"local_address": "127.0.0.1","local_port":1080,"password":"mypassword","timeout":300,"method":"aes-256-cfb","fast_open": false,"workers": 1}
将上面的 mypassword 替换成你的密码, server_port 也是可以修改的,例如 443 是 Shadowsocks 客户端默认的端口号。
如果需要修改端口,需要在防火墙里打开响应的端口,用 firewalld 操作就比较简单了: