前言:開啟某服務(wù)或軟件的端口,要從該服務(wù)或軟件監(jiān)聽的端口(多以修改配置文件為主),SeLinux和防火墻(FireWall)的安全策略下手。如果使用阿里云,騰訊等第三方服務(wù)器還需要對管理控制臺的安全組下手。
下面進(jìn)入主題,如果有什么問題請查看下面的補充欄:
第一步:修改SSH配置文件(注意是sshd_config而不是ssh_config,多了個d)
找到“#Port 22”,這一行直接鍵入“yyp”復(fù)制該行到下一行,然后把兩行的“#”號即注釋去掉,修改成:
SSH默認(rèn)監(jiān)聽端口是22,如果你不強制說明別的端口,”Port 22”注不注釋都是開放22訪問端口。上面我保留了22端口,防止之后因為各種權(quán)限和配置問題,導(dǎo)致連22端口都不能訪問了,那就尷尬了。等一切都o(jì)k了,再關(guān)閉22端口。
Ok,繼續(xù),我增加了10086端口,大家修改端口時候最好挑10000~65535之間的端口號,10000以下容易被系統(tǒng)或一些特殊軟件占用,或是以后新應(yīng)用準(zhǔn)備占用該端口的時候,卻被你先占用了,導(dǎo)致軟件無法運行。
第二步:如果你關(guān)閉了SELinux,可以忽略第二步。
先查看SELinux開放給ssh使用的端口
semanage port -l|grep ssh
我的系統(tǒng)打印如下:
ssh_port_t tcp 22
可知,SELinux沒有給SSH開放10086端口,那么我們來添加該端口:
semanage port -a -t ssh_port_t -p tcp 10086
完成后,再次查看
semanage port -l|grep ssh
ssh_port_t tcp 22,10086
第三步:如果你關(guān)閉了防火墻,可以忽略第三步,話說防火墻不開啟太危險了,建議開啟。
先查看防火墻是否開啟了10086端口:
firewall-cmd --permanent --query-port=10086/tcp
打印結(jié)果如下:
no
表示沒有開放10086端口,那么添加下該端口:
firewall-cmd --permanent --add-port=10086/tcp
打印結(jié)果如下:
success
重新加載防火墻策略:
執(zhí)行成功后,查看10086端口是否被開啟:
firewall-cmd --permanent --query-port=10086/tcp
打印結(jié)果如下:
yes
第四步:重啟SSH服務(wù)和防火墻,最好也重啟下服務(wù)器
systemctl restart sshd
systemctl restart firewalld.service
shutdown -r now
第五步:嘗試通過10086端口登錄SSH,或者進(jìn)入該服務(wù)器直接本地訪問SSH如下:
ssh root@localhost -p 10086
如果成功,說明10086已經(jīng)完全可以使用了,接下來你就可以根據(jù)上述步驟把sshd_config的Port22注釋掉,SELinux和防火墻(Firewalld)關(guān)閉22端口就OK,大工造成!
以下2017.11.27 補充更新--------->
第六步:修改第三方服務(wù)器安全組策略。如果沒有第三方服務(wù)器,上述已經(jīng)完成了本文的目標(biāo),可以忽略第六步。下面直接上阿里云的示例圖:
![](http://img.jbzj.com/file_images/article/201807/2018727144935165.png?2018627144948)
補充欄-----------------------------------------------------------------------------
1.查看某端口是否被占用,以10086為例:
如果沒有任何打印,說明沒有被占用。有打印的話,說明被占用了,一般會列出哪個進(jìn)程占用。
2.查看是否開啟了SELinux
如果輸出結(jié)果為:
SELinux status: disabled
說明有打開,可以通過修改SELinux的配置開啟或關(guān)閉它:
找到:
修改成:
重啟一下,就OK。
3.semanage命令無法使用,或說找不到該命令。說明沒有配置該命令,可以進(jìn)行以下命令進(jìn)行安裝:
yum -y installpolicycoreutils-python-2.5-9.el7.x86_64
關(guān)于它的依賴庫我就不作贅述,可以百度下更全面的安裝semanage教程。
4.CentOS7防火墻改為firewalld了,而不是iptables,對應(yīng)的命令也請百度下,這里不作贅述。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。