Linux系統(tǒng)如何修改遠(yuǎn)程連接22端口
Linux系統(tǒng)修改遠(yuǎn)程連接22端口
1、檢查Linux系統(tǒng)是否安裝SSH軟件包
rpm -qa| grep ssh

如果沒有安裝使用yum安裝ssh服務(wù) :
yum install -y openssh-server
查看安裝的 ssh服務(wù)包 :
# yum list installed | grep ssh

2、找到SSh服務(wù)配置文件路徑
一般都是在 /etc/ssh這個目錄下面 sshd_config 這個文件

3、將端口修改為66
以root身份編輯文件 /etc/ssh/sshd_config文件,
找到 #Port 22 ,將井號去掉,然后將22改為66。后保存。
最好是在#Port 22 下面添加一個新的端口。以免新的端口和22端口都連不上。

4、修改iptables 防火墻
/etc/sysconfig/iptables
開放特定端口
#vi /etc/sysconfig/iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 66 -j ACCEPT -A INPUT -m state –state NEW -m tcp -p tcp –dport 66 -j ACCEPT #66端口是添加的添加此端口號至防火墻,允許端口號通過防火墻 或者 #firewall-cmd --zone=pulic --add-port=77/tcp --permanent

注意末尾的success,表示添加成功!
重新加載防火墻,并重啟防火墻服務(wù)

并沒有報錯,我們也可以查看一下防火墻運行狀態(tài).

檢查SELinux服務(wù)是否運行

如上圖顯示enabled表示SELinux已啟用
修改/etc/sysconfig/iptables文件,增加如下一行:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
iptables防火墻
systemctl stop iptables systemctl start iptables
查看防火墻開機(jī)啟動狀態(tài):
chkconfig iptables --list systemctl status iptables
關(guān)閉開機(jī)啟動:
chkconfig iptables off
firewalld防火墻:
關(guān)閉firewalld服務(wù):
systemctl stop firewalld.service
查看防護(hù)墻狀態(tài):
systemctl status firewalld.servicee
在開機(jī)時禁用:
systemctl disable firewalld.service
查看服務(wù)是否開機(jī)啟動:
systemctl is-enabled firewalld.service
查看已啟動的服務(wù)列表:
systemctl list-unit-files|grep enabled
重啟sshd
systemctl status sshd.service systemctl enable sshd.service systemctl restart sshd.service
5、在向SELinux中添加端口之前需要先安裝SELinux的管理工具 semanage
(如果已經(jīng)安裝了就直接到下一步) : yum provides semanage。
在這里我們看到運行 semanage 需要先安裝其依賴工具包 policycoreutils-python : yum install policycoreutils-python

安裝好之后,可以直接使用 semanage 命令:
查詢當(dāng)前 ssh 服務(wù)端口: semanage port -l | grep ssh
向 SELinux 中添加 ssh 端口: semanage port -a -t ssh_port_t -p tcp 66
驗證 ssh 端口是否添加成功: semanage port -l | grep ssh
添加成功之后就可以重啟 ssh 服務(wù)了: systemctl restart sshd.service

6、查看ssh服務(wù)狀態(tài)和端口占用情況

netstat -antulp | grep ssh #端口占用情況

測試是否能本機(jī)聯(lián)通
ssh localhost -p 77

查看新配置的端口是否生效。

7、使用新的端口遠(yuǎn)程連接服務(wù)器
#ssh root@x.x.x.x -p66



查看并修改 防火墻配置文件中 遠(yuǎn)程連接的端口

重新載入配置,配置生效
firewall-cmd --complete-reload
備注:
默認(rèn)firewalld會優(yōu)先讀取/etc/firewalld/services/ssh.xml配置文件,當(dāng)該配置文件不存在時,將會讀取配置庫中的配置/lib/firewalld/services/ssh.xml作為生效配置
注意 :
1、在 /etc/ssh/sshd_config 配置文件 中,不能修改將UseDNS yes 改為 no,保持默認(rèn)值。

2、在工作中,可以在22端口下面添加一個端口,以免22端口斷了連不上,又要到機(jī)房修改回22或者找機(jī)房人員遠(yuǎn)程協(xié)助了。
常見問題
1、端口沒有權(quán)限
Linux修改ssh Port端口后,無法啟動ssh訪問。
具體修改 /etc/ssh/sshd_config 里的 Port 端口,然后查日志后出現(xiàn):
error: Bind to port 77 on 0.0.0.0 failed: Permission denied.


最后發(fā)現(xiàn)是SELinux的問題,關(guān)閉SELinux的兩種方法
然后重啟ssh訪問即可。
2、SSH登陸其他主機(jī)時報錯:ssh: connect to host 192.168.46.190 port 22: No route to host。新的端口已經(jīng)存在。


解決辦法 :
查看防火墻狀態(tài)
firewalld:
關(guān)閉firewalld服務(wù):
systemctl stop firewalld.service
查看防護(hù)墻狀態(tài):
systemctl status firewalld.servicee
在開機(jī)時禁用:
systemctl disable firewalld.service
查看服務(wù)是否開機(jī)啟動:
systemctl is-enabled firewalld.service
查看已啟動的服務(wù)列表:
systemctl list-unit-files|grep enabled
重啟sshd服務(wù)
#systemctl enable sshd.service #netstat -anp | grep 77 #查看77端口是否已經(jīng)存在 #netstat -anput #77端口已經(jīng)存在/打開 #ssh root@192.168.163.130 #在另一臺機(jī)器上測試,連接新的端口。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
linux部署NFS和autofs自動掛載實現(xiàn)過程
文章介紹了NFS(網(wǎng)絡(luò)文件系統(tǒng))和Autofs的原理與配置,NFS通過RPC實現(xiàn)跨系統(tǒng)文件共享,需配置/etc/exports和nfs.conf,部署涉及安裝、防火墻設(shè)置及掛載,Autofs按需動態(tài)掛載文件系統(tǒng),節(jié)省資源,通過主子配置文件定義規(guī)則,支持超時卸載和錯誤處理,適用于網(wǎng)絡(luò)存儲場景2025-09-09
Ubuntu16.04 ext4格式硬盤掛載普通用戶權(quán)限控制的操作方法
這篇文章主要介紹了Ubuntu16.04 ext4格式硬盤掛載普通用戶權(quán)限控制的操作方法,需要的朋友可以參考下2018-06-06

