centos7設置sshd端口,firewall,selinux設置

以前服務器上用的是ubuntu系統,修改ssh端口的時候很簡單,直接在配置文件修改就好了,但是在centos7上修改的時候發現修改端口之後sshd服務不能啓動了,如果設置兩個端口22和1122的話只能監聽到22端口,最後到處查找,最後找到了解決辦法:

流程如下

1、修改sshd配置文件
2、設置防火牆firewall,允許新添加的端口被監聽
3、設置selinux,在selinux添加要添加的端口
4、重啓sshd服務

詳細步驟

系統環境:centos7

step1——修改配置文件

在centos7中,sshd的配置文件路徑:/etc/ssh/sshd_config
打開文件:sudo vim /etc/ssh/sshd_config,修改配置文件需要使用root權限
假設我們要設置1122爲sshd端口
在文件中添加如下內容:

Port 1122

然後保存文件,如果現在重啓sshd服務,就會發現啓動失敗,原因就是firewall和semanage都沒有配置

step2——設置firewall

設置防火牆的命令如下:
添加想要修改的端口:
firewall-cmd --zone=public --add-port=1122/tcp --permanent 後面的permanent參數是保存配置,如果沒有這個參數,重啓之後配置就無效了
重啓防火牆
firewall-cmd --reload
查看添加端口是否成功,如果添加成功就顯示yes,否則就顯示no
firewall-cmd --zone=public --query-port=1122/tcp
這樣防火牆就設置好了,進行下一步

step3——設置selinux

selinux是一種安全保護機制,很多帖子在這一步的時候建議關閉selinux,如果是在測試服務器上,這樣的話比較方便,但是如果在生產服務器上,這樣的做法是不可取的
查看selinux允許的ssh端口
semanage port -l | grep ssh
添加1122端口到selinux
semanage port -a -t ssh_port_t -p tcp 1122
查看是否添加成功
semanage port -l | grep ssh
到這一步,所有需要設置的東西都完成了,重啓服務就好了

setp4——重啓服務

現在就可以重啓服務了,
命令:systemctl restart sshd.service

done,現在就完成了配置

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章