虛擬專(zhuān)用服務(wù)器(英語(yǔ):Virtual private server,縮寫(xiě)為 VPS),是指通過(guò)虛擬化技術(shù)在獨(dú)立服務(wù)器中運(yùn)行的專(zhuān)用服務(wù)器。每個(gè)使用VPS技術(shù)的虛擬獨(dú)立服務(wù)器擁有各自獨(dú)立的公網(wǎng)IP地址、操作系統(tǒng)、硬盤(pán)空間、內(nèi)存空間、CPU資源等,還可以進(jìn)行安裝程序、重啟服務(wù)器等操作,與運(yùn)行一臺(tái)獨(dú)立服務(wù)器完全相同。
VPS服務(wù)器是一項(xiàng)服務(wù)器虛擬化和自動(dòng)化技術(shù),它采用的是操作系統(tǒng)虛擬化技術(shù)。操作系統(tǒng)虛擬化的概念是基于共用操作系統(tǒng)內(nèi)核,這樣虛擬服務(wù)器就無(wú)需額外的虛擬化內(nèi)核的過(guò)程,因而虛擬過(guò)程資源損耗就更低,從而可以在一臺(tái)物理服務(wù)器上可以實(shí)現(xiàn)更多的虛擬化服務(wù)器。這些VPS服務(wù)器以最大化的效率共享硬件、軟件許可證以及管理資源。每一個(gè)VPS服務(wù)器均可獨(dú)立進(jìn)行重啟,并擁有自己的root訪(fǎng)問(wèn)權(quán)限、用戶(hù)、IP地址、內(nèi)存、過(guò)程、文件、應(yīng)用程序、系統(tǒng)函數(shù)庫(kù)以及配置文件。
前期準(zhǔn)備
需要購(gòu)買(mǎi)一臺(tái)擁有 root 權(quán)限的 VPS ,我選擇的是 搬瓦工 ,當(dāng)時(shí)購(gòu)買(mǎi)的是 512 M 內(nèi)存 5 G SSD,500 G 流量/月, 9.99 刀每年,但是好像現(xiàn)在這種低價(jià)套餐已經(jīng)結(jié)束了。有意的朋友可以看一下其他的套餐或者別的公司的 VPS。有的朋友說(shuō) DigitalOcean 的速度非常快,看YouTube直接 1440p,但是我還沒(méi)測(cè)試過(guò),目前搬瓦工的速度能滿(mǎn)足我的需求,而且 DO 的價(jià)格比較昂貴。
下圖是搭了 SS 和 IPsec VPN 服務(wù)的使用情況,僅供參考:
服務(wù)器購(gòu)買(mǎi)后,安裝 CentOS7,因?yàn)橐韵陆坛潭际腔?CentOS7 的,安裝新的 OS 后,搬瓦工會(huì)告訴你 SSH 的端口和 root 的密碼,這些是自己無(wú)法自定義的,要記住了如果實(shí)在忘了也可以重置 root 密碼,或者直接使用搬瓦工提供的在線(xiàn)SSH登錄來(lái)操作也可,就是反應(yīng)比較慢,所以我們以后還是常用 ssh 登錄來(lái)配置 VPS ,Mac 下直接使用終端就好,win 下自行尋找一個(gè) ssh 工具就好。
登錄 ssh 的命令:
代碼如下:
$ ssh -p vps 端口號(hào) root@vpsIP 地址
登錄上以后就相當(dāng)于在本地操作一樣了,你可以使用各種 Linux 命令來(lái)操作了。
配置防火墻
如果 SSH 無(wú)法登錄,那說(shuō)明防火墻關(guān)閉了 SSH 端口,需要通過(guò)在線(xiàn) SSH 登錄進(jìn)去關(guān)閉防火墻重新配置。
清除防火墻配置
代碼如下:
$ iptables -F
清除 iptabels 所有表項(xiàng),同時(shí) nat 設(shè)置也沒(méi)了,但是我們后續(xù)的腳本里會(huì)配置的,不用擔(dān)心。如果 SSH 登錄正常就不用管防火墻。
安裝 firewalld
代碼如下:
$ yum install firewalld firewall-config
$ systemctl start firewalld
P.S. 我在安裝完 firewalld 之后然后啟動(dòng)服務(wù)的時(shí)候一直顯示失敗,然后重啟了一遍服務(wù)器就可以正常的啟動(dòng) firewalld 服務(wù)了,有類(lèi)似情況的朋友可以重啟一下服務(wù)器。
修改 SSH 端口
代碼如下:
$ vi /usr/lib/firewalld/services/ssh.xml
會(huì)出現(xiàn)以下的內(nèi)容:
代碼如下:
SSH
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.
將 port=”22”,修改成搬瓦工提供給你的端口號(hào),然后重載 firewalld 就 OK。
vi 的命令: 按 “i” 是編輯模式,編輯后按 “esc” 退出編輯模式,然后按 Shift 輸入“:” 和 “wq” 保存退出 vi。
代碼如下:
$ firewall-cmd --permanent --add-service=ssh
$ firewall-cmd --reload
OK,現(xiàn)在準(zhǔn)備工作都已就緒,安裝了源,安裝配置了防火墻,下一步開(kāi)始搭建服務(wù)了。
搭建 Shadowsocks 服務(wù)
這個(gè)服務(wù)是最簡(jiǎn)單也是最常用的。
安裝組件
代碼如下:
$ yum install m2crypto python-setuptools
$ easy_install pip
$ pip install shadowsocks
安裝時(shí)部分組件需要輸入 Y 確認(rèn)。小內(nèi)存 VPS 可以分別安裝組件。
安裝完成后配置服務(wù)器參數(shù)
代碼如下:
$ vi /etc/shadowsocks.json
寫(xiě)入如下配置:
代碼如下:
{
"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 客戶(hù)端默認(rèn)的端口號(hào)。
如果需要修改端口,需要在防火墻里打開(kāi)響應(yīng)的端口,用 firewalld 操作就比較簡(jiǎn)單了:
代碼如下:
$ vi /usr/lib/firewalld/services/ss.xml
下面代碼粘貼到里面:
代碼如下:
SS
Shadowsocks port
保存退出,然后重啟 firewalld 服務(wù):
代碼如下:
$ firewall-cmd --permanent --add-service=ss
$ firewall-cmd --reload
運(yùn)行命令,啟動(dòng) Shadowsocks 服務(wù)
運(yùn)行下面的命令:
代碼如下:
$ ssserver -c /etc/shadowsocks.json
至此 shadowsocks 搭建完成,shadowsocks 已經(jīng)可以使用,如果你沒(méi)有過(guò)高的要求,下面的步驟可以省略,下面是后臺(tái)運(yùn)行 Shadowsocks 的步驟。
安裝 supervisor 實(shí)現(xiàn)后臺(tái)運(yùn)行
運(yùn)行以下命令下載 supervisor:
代碼如下:
$ yum install python-setuptools
$ easy_install supervisor
然后創(chuàng)建配置文件:
代碼如下:
$ echo_supervisord_conf > /etc/supervisord.conf
修改配置文件:
代碼如下:
$ vi /etc/supervisord.conf
在文件末尾添加:
代碼如下:
[program:ssserver]command = ssserver -c /etc/shadowsocks.json
autostart=true
autorestart=true
startsecs=3
設(shè)置 supervisord 開(kāi)機(jī)啟動(dòng),編輯啟動(dòng)文件:
代碼如下:
$ vi /etc/rc.local
在末尾另起一行添加:
代碼如下:
$ supervisord
保存退出(和上文類(lèi)似)。另 centOS7 還需要為 rc.local 添加執(zhí)行權(quán)限:
代碼如下:
$ chmod +x /etc/rc.local
至此運(yùn)用 supervisord 控制 Shadowsocks 開(kāi)機(jī)自啟和后臺(tái)運(yùn)行設(shè)置完成。重啟服務(wù)器即可。
搭建 Strongswan 實(shí)現(xiàn)在 iOS 上連接 VPN