楠木軒

高級Linux運維工程師養成記-如何遠程連接Linux

由 俎巧玲 發佈於 科技

如何遠程連接Linux

Linux用户

在安裝CentOS8.2時,設置過root用户的密碼,同時也創建了用户guanglei。其中root是Linux的管理員賬户,類似Windows的Administrator,在生產環境使用root賬號時需要小心操作,因為他有自殺的能力(rm -rf /),在高級Linux運維工程師養成記系列中,沒有特殊説明都是使用root用户操作,因為普通用户的權限忒小,可能在執行某些命令時沒有權限執行。

Linux系統會給每個用户一個ID,其中root用户的ID是0,而普通用户的ID是1000開始編號。

Linux終端

通常的終端指的是鼠標、鍵盤、顯示器的物理終端,而這裏的終端都是軟件提供的,一台服務器可以提供多個終端來提供給多個用户使用,每個終端都有不同的類型,可以通過tty命令查看當前登錄的終端類型

[guanglei@centos8 ~]$ tty/dev/pts/0

/dev/pts/0表示第一個偽終端,終端的編號從0開始,然後依次遞增,後面使用XShell遠程連接Linux時登錄的終端也是偽終端。

除了偽終端以外,Linux還提供了6個虛擬終端,可以使用Ctrl+Alt+F1-F6之間來切換。其中Ctrl+Alt+F2是圖形終端,其他的都是基於命令的字符終端。

當登錄到CentOS8.2上時,使用Ctrl+Alt+F5切換到第5個終端,然後輸入tty命令查看終端類型,/dev/tty5表示第5個虛擬終端。

終端登錄

[root@centos8 ~]#tty/dev/tty5

who命令可以查看當前登錄的終端信息

[guanglei@centos8 ~]$ whoguanglei tty2         2020-08-25 19:57 (tty2)guanglei pts/0        2020-08-25 17:59 (10.0.0.1)root     pts/1        2020-08-25 19:05 (10.0.0.1)root     pts/2        2020-08-25 19:10 (10.0.0.1)root     pts/3        2020-08-25 19:22 (10.0.0.1)guanglei pts/5        2020-08-25 19:59 (10.0.0.1)

這種終端的切換隻是臨時切換,如果想要從圖形界面切換到字符界面,可以在root用户登錄後使用命令init 3實現

[root@centos8 ~]# init 3 # 從圖形界面切換到字符界面[root@centos8 ~]# runlevel # 查看當前運行級別5 3

從字符界面切換到圖形界面使用命令init 5實現

[root@centos8 ~]# init 5[root@centos8 ~]# runlevel3 5

圖形界面相比字符界面更加佔用內存,使用free -h可以查看系統的內存使用情況

圖形界面內存佔用情況

[root@centos8 ~]# free -h #查看內存              total        used        free      shared  buff/cache   availableMem:          7.8Gi       844Mi       5.9Gi        10Mi       1.0Gi       6.7GiSwap:         4.0Gi          0B       4.0Gi[root@centos8 ~]# runlevel3 5

字符界面內存佔用情況

[root@centos8 ~]# free -h              total        used        free      shared  buff/cache   availableMem:          7.8Gi       426Mi       6.4Gi       9.0Mi       1.0Gi       7.1GiSwap:         4.0Gi          0B       4.0Gi

通過對比發現CentOS8.2的圖形界面內存使用844M,而字符界面只有426M。在生成環境通常會關閉圖形界面,只用字符界面。

遠程連接Linux遠程連接準備

目前在VMWare WorkStation中安裝了三台虛擬機,分別是CentOS7.8,CentOS8.2,Ubuntu Server20.04,在實際的工作場景中通常都是使用遠程連接工具來登錄服務器,然後進行日常的運維工作。目前主流的遠程工具有XShell,MobaXterm,但是遺憾的是它們目前(2020/08/25)都只支持Windows系統,macOS系統的同學可以使用SecureCRT

在連接服務器之前,首先需要獲取服務的IP地址,使用hostname -I命令就可以獲取服務器的IP地址

CentOS8獲取IP地址

[root@centos8 ~]# hostname -I10.0.0.100 192.168.122.1

CentOS7.8獲取IP地址

[root@centos7 ~]# hostname -I10.0.0.102 192.168.122.1

Ubuntu Server 20.04獲取IP地址

guanglei@ubuntu-server:~$ hostname -I10.0.0.101 

獲取到IP地址之後,在XShell所在的物理機(Windows)上打開終端,然後使用ping命令來ping剛剛所獲取到的三台服務器的ip,如果ping不通是無法使用XShell連接的。

ping 10.0.0.100ping 10.0.0.101ping 10.0.0.102

ping

如果網絡都是通的,還要檢測端口是否通暢,因為SSH服務默認開啓的是22端口,檢測端口可以使用telnet命令

telnet 10.0.0.100 22

這裏以10.0.0.100的機器為例,如果telnet 10.0.0.100 22能夠返回SSH服務的版本,表示端口通暢。

如果服務器的SSH端口通暢,那麼此時就可以使用XShell或者是MobaXterm來遠程連接三台服務器了。

使用XShell遠程連接LinuxXShell7 遠程連接Linux

我這裏已經提前安裝了XSHell 7Beta版,XShell是收費的軟件,但是目前使用的XShell Beta 7版本可以免費使用,並且連接了3台服務器,根據會話名稱就可以辨別出來連接的用户、IP和服務器版本。

那麼XShell是如何配置連接?XShell連接服務器,首先新建會話

新建

設置會話的名稱、主機以及端口

設置用户賬號信息,然後點擊連接

此時會以普通用户賬號guanglei登錄10.0.0.100服務器

XShell個性化定製

設置每秒自動重連

鍵盤設置

外觀設置

會話設置總覽

使用 MobaXtrem遠程連接LinuxMobaXtrem下載

除了XShell以外,還可以使用MobaXtrem來遠程連接Linux

首先去官網下載MobaXtrem

MobaXtrem分為免費版和收費版,免費版只支持12個會話

選擇MobaXtrem Home Edition v20.3

下載成功後會得到一個壓縮包,該壓縮包包含安裝程序MobaXtrem_installer_20_3.msi和數據文件

因為MobaXtrem的產商在國外,下載時選擇複製下載鏈接到迅雷下載

MobaXtrem安裝

MobaXtrem_installer_20_3.msi是Windows下的安裝程序,雙擊就可以進行安裝

1.開始安裝

2.同意許可協議

3.選擇安裝路徑

4.準備安裝

5.安裝狀態

6.安裝完成

MobaXtrem遠程連接linux

1.選擇會話

2.設置會話

3.輸入賬號的密碼

4.保存密碼

5.輸入主密碼

該密碼在下次啓動MobaXterm時會提示需要輸入

輸入master password

登錄成功

MobaXtrem基本使用

MobaXtrem提供了Remote Monitoring,可以用於監控遠程服務器的硬件信息。

SFTP視圖可以實現文件的上傳和下載,默認展示的是當前登錄用户的家目錄

MobaXtrem個性化設置
  1. 開啓MobaXtrem右鍵黏貼如果你使用過SecureCRT(另一款遠程SSH連接工具),它默認是支持鼠標左鍵選中文本,右鍵粘貼文本。MobaXtrem中也支持,不過默認是關閉的,這裏可以在菜單欄settings開啓MobaXtrem的右鍵粘貼功能

2.定製字體