前言
最近碰到一個問題,某客戶需要從我們的阿里云服務(wù)器上下載文件,我們阿里云服務(wù)器上提供下載的服務(wù)是ftp,端口是默認(rèn)的21端口,但是客戶那邊死活下不下來。測試一通后發(fā)現(xiàn),客戶那邊似乎是禁止了對外網(wǎng)21端口的訪問,但是可以訪問外網(wǎng)的其他端口。于是想到了用端口轉(zhuǎn)發(fā)的方式,嘗試在云端做11121端口轉(zhuǎn)發(fā)到21端口,該客戶訪問云端的11121端口下載文件,不影響正在使用ftp服務(wù)的其他人。
其實Linux系統(tǒng)的iptables和firewalld防火墻都具備端口轉(zhuǎn)發(fā)的功能,但是由于阿里云本來就有安全組的配置,我們服務(wù)器上的防火墻就沒有啟動了。
第一步 配置阿里云安全組
通過阿里云控制臺,把11121端口加到安全組中,這一步的作用是允許訪問云端的11121端口。沒有這一步的話,其他機器是連接不到云端的11121端口的。只配11121是因為其他正在用的端口是以前就已經(jīng)配置過了。
控制臺–>實例–>安全組,然后選擇具體的安全組進(jìn)去,
進(jìn)去之后手動添加–>添加端口–>添加源–>保存
這樣,阿里云的安全組就配置完成了。
第二步 打開防火墻
云服務(wù)器操作系統(tǒng)是CentOS7,自帶的防火墻服務(wù)是firewalld,直接用
命令就可以了,當(dāng)然,得有超級用戶權(quán)限,用root用戶操作。
使用 systemctl status firewalld 查看防火墻狀態(tài),上圖中綠字active (running)就是防火墻正在運行了。
第三步 配置防火墻開放端口
我這里防火墻打開的時候默認(rèn)ssh服務(wù)是允許的,還需要將云服務(wù)器對外提供服務(wù)的端口都開放,我們對外開放的端口只有21、80、8080和8090。使用命令:
依次將用到的端口開放,–permanent的作用是使策略永久生效,沒有此參數(shù)重啟后失效。
第四步 配置防火墻端口轉(zhuǎn)發(fā)
以下命令將11121端口的流量轉(zhuǎn)到21端口:
第五步 防火墻重新加載配置
以下命令重新加載防火墻配置:
當(dāng)然也可以systemctl restart firewall,直接重啟防火墻。
至此全部配置完成,以下命令
海外服務(wù)器免費測試:http://hbjsdrq.com/