通過xshell連線CentOS(6.8/7)問題彙總
阿新 • • 發佈:2019-01-25
一. 前言
寫在前面:如果你安裝的cent6.8映象是live版,請儘快換成bin版本,live版重啟所有配置都會恢復預設,謹記謹記,這可是血的教訓啊!!!
我用的cent映象檔案 ==> “CentOS-6.8-x86_64-bin-DVD1.iso” && “CentOS-7-x86_64-Everything-1611.iso”
如果你注意到了上面我寫的,你可能不會遇到這個問題,但我還是記錄一下,需要的童鞋可以參考。
進入正題==> 要用xshell遠端連線我們的Cent伺服器,需要滿足兩個條件:
1. 關閉Cent防火牆/放行22埠(shell預設通過22埠進行訪問);
2. 啟動Cent服務端的ssh服務。
注:所有指令是在root使用者下進行的;“關閉防火牆”和“放行22埠”二選一
二. CentOS6.8設定
-
-
關閉防火牆
- 檢視防火牆狀態:
service iptables status
- 關閉防火牆:
service iptables stop
- 永久關閉防火牆(不建議,關閉後可在需要時開啟):
chkconfig iptables off
- 檢視防火牆狀態:
-
放行22埠
- 檢查iptables檔案是否存在:
cd /etc/sysconfig/
ls
- 如果不存在:
①. 任意執行一條iptables防火牆規則配置命令:iptables -P OUTPUT ACCEPT
②. 對iptables服務進行儲存:service iptables save
③. 重啟iptables服務:service iptables restart
- 如果不存在:
- 放行22埠:
編輯iptables檔案:vi /etc/sysconfig/iptables
增加這條規則,儲存退出:-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
重啟iptables服務:service iptables restart
設定iptables自啟動:chkconfig iptables on
- 檢查iptables檔案是否存在:
-
啟動Cent的ssh服務
- 檢視ssh狀態:
service sshd status
- 如果ssh服務未啟動,執行啟動ssh服務:
service sshd start
- 設定sshd服務開機啟動:
chkconfig sshd on
- 檢視ssh狀態:
-
關閉防火牆並啟動ssh服務後
-
通過
ssh localhost
命令測試一下本機通過ssh方式登入 -
利用xshell遠端登入
三. CentOS7設定
注:1.cent7的服務啟停相關指令有所改變;
2.CentOS 7.0預設使用的是firewall作為防火牆,使用iptables必須重新設定一下-
關閉防火牆
- 停止firewall:
systemctl stop firewalld.service
- 遮蔽firewall:
systemctl mask firewalld.service
- 禁止firewall開機啟動:
systemctl disable firewalld.service
- 停止firewall:
-
放行22埠
- 安裝iptables服務:
yum -y install iptables-services
- 編輯iptables檔案:
vi /etc/sysconfig/iptables
增加這條規則,儲存退出:-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
- 重啟iptables服務:
systemctl restart iptables.service
- 設定iptables自啟動:
systemctl enable iptables.service
- 安裝iptables服務:
-
啟動Cent的ssh服務
- 檢視ssh狀態:
systemctl status sshd.service
- 如果ssh服務未啟動,執行啟動ssh服務:
systemctl start sshd.service
注:這個命令開啟ssh服務是暫時的,下次系統重啟,不會啟動ssh服務 - 設定sshd服務開機啟動:
systemctl enable sshd.service
- 檢視ssh狀態:
-
關閉防火牆並啟動ssh服務後
通過ssh localhost
命令測試一下本機通過ssh方式登入 -
利用xshell遠端登入
-
-