首先呢,你的先有一臺自己的伺服器把,這個就不多贅述了,我自己買了一臺國外的VPS. 一、docker的安裝 首先我們來看下伺服器的版本信息: 1、docker安裝 安裝完之後查看是否安裝成功: 啟動docker服務 查看docker是否啟動成功 看到那個綠色的字體了嘛,OK,啟動成功 查看docke ...
首先呢,你的先有一臺自己的伺服器把,這個就不多贅述了,我自己買了一臺國外的VPS.
- 一、docker的安裝
首先我們來看下伺服器的版本信息:
cat /etc/redhat-release
//CentOS Linux release 7.6.1810 (Core)
1、docker安裝
yum install -y docker
安裝完之後查看是否安裝成功:
yum list installed | grep docker
啟動docker服務
systemclt start docker
查看docker是否啟動成功
systemctl status docker
看到那個綠色的字體了嘛,OK,啟動成功
查看docker中的所有容器:
docker ps
預設應該是空的,但是我這裡已經新增了一個容器。
- 二、在docker中安裝ss服務端
直接上命令:
docker run -dt --name ss-server -p 6445:6445 mritd/shadowsocks -s "-s 0.0.0.0 -p 6445 -m aes-256-cfb -k 123456test --fast-open" --restart=always
註意,-k後面是你後面再客戶端使用的時候的密碼。
參考文獻:https://hub.docker.com/r/mritd/shadowsocks/
安裝成功後,就已經啟動了這個容器,可以再次使用`docker ps`來查看已經啟動的容器
- 三、配置客戶端
下載ss客戶端,打開之後就是這樣滴:沒錯,就是桌面右下角的小飛機圖標
、
在圖標上右鍵->伺服器-》編輯伺服器,輸入配置信息:伺服器地址即你的伺服器的IP,埠,我上面安裝的時候指定的是6445,也可以自己指定,密碼也是安裝ss的時候就設置的,加密選 aes-256-cfb,確定。
這樣,就配置好了,再次右鍵小飛機,選擇啟動系統代理,就可以了
- 四、google一下,不能訪問?
這一切好像太順利了,google一下,發現的確不能訪問,這種時候就很容易想到一件事,那就是防火牆,這裡就用到文章最開始要去看看系統版本的原因了,因為centos7系統開始,使用firewalld服務替代了iptables服務
查看防火牆狀態:
systemctl status firewalld
發現時開著的,關了再試試呢?
systemctl stop firewalld
再試試發現還是不能訪問google...
重啟下docker呢?
systemctl restart docker
docker start ss-server
這裡的ss-server是你之前安裝的時候--name後面的東西哦
再試試,bingo!!!成功了
現在知道問題所在了,如果我們需要打開防火牆仍然可以使用怎麼辦呢?那就開放埠咯
首先打開防火牆
systemctl start firewalld
查看已經開放的埠:
firewall-cmd --list-ports
發現沒有6445,OK,開啟埠:
firewall-cmd --zone=public --add-port=6445/tcp --permanent
命令含義:
–zone #作用域
–add-port=80/tcp #添加埠,格式為:埠/通訊協議
–permanent #永久生效,沒有此參數重啟後失效
重啟防火牆:
firewall-cmd --reload #重啟firewall
重啟docker:
systemctl restart docker
docker start ss-server
再試試google一下,成功了吧
- 五、其他
關閉docker中的容器:
docker stop ss-server
刪除docker中的容器:
docker rm ss-server
如果您想臨時關閉防火牆,輸入命令
systemctl stop firewalld
如果您想永久關閉防火牆,輸入命令
systemctl disable firewalld