mac,windows使用終端連接Linux服務器

0. 開啓服務器遠程密碼登錄

# 在服務器root用戶下
vim /etc/ssh/sshd_config

修改這兩項並保存:
PermitRootLogin yes
PasswordAuthentication yes

重啓ssh服務:
service sshd restart  
# 或者
/etc/initd.d/sshd restart

1. 使用命令

ssh [email protected]

提示輸入祕密,輸入服務器連接密碼,連接成功!

如果忘記密碼,可以在:雲服務器ECS?實例?更多?密碼/密鑰裏修改密碼。

2. 使用快捷命令

# 進入.ssh目錄
cd .ssh

# 創建config配置文件
vim config

# 配置信息
Host fxx
    HostName 10.152.66.168
    User root

現在就可以使用ssh fxx快捷命令登錄了。
提示輸入祕密,輸入服務器連接密碼,連接成功!

3. 使用密鑰連接服務器(推薦)

通過使用證書登錄可以不用輸入密碼,方便快捷。

  1. 生成密鑰文件

    ssh-keygen -t rsa -b 2048 -v -f dataAutoProcess
    

    注: 其連接方式與Git的連接方式基本一致,如果你之前Git生成過用於認證的公鑰、密鑰,切使用默認路徑~/.ssh/id_rsa,注意切換切換路徑、名字,以免覆蓋。
    -f 指定文件名,未指定路徑的情況下默認是當前路徑生成。如上爲在.ssh目錄下生成密鑰名爲dataAutoProcess,公鑰名爲dataAutoProcess.pub。
    剩下的一路回車就OK。

  2. 進入到你生成公鑰的目錄,將公鑰推送到遠程服務器

    ssh-copy-id -i dataAutoProcess.pub [email protected]
    

    將dataAutoProcess.pub換成你的公鑰名字,[email protected]分別換成你的服務器用戶名和地址,然後輸入密碼即可。

  3. 測試

    # 將你的密鑰修改名字,當然不改也行
    mv dataAutoProcess fxx.pem 
    
    # 使用證書免密登錄
    ssh -i fxx.pem [email protected]
    

    或者:
    配置config,使用快捷命令登錄?推薦使用

    # 修改之前配置的.ssh/config文件,添加生成的證書,如下:
    Host fxx
        HostName 10.152.66.168
        User root
        IdentityFile /Users/fxx/.ssh/fxx.pem
    
     #使用快捷命令一鍵登錄
     ssh fxx
     連接成功!
    
  4. 取消密碼登錄

    當你測試你的密鑰可以登錄後,一定要確定可以連接,可以取消密碼登錄方式。

    vim /etc/ssh/sshd_config
    

    進入vim編輯器後按/進入查找模式,然後粘貼PasswordAuthentication,回車後定位到此處,按i進入insert 模式,放開註釋,並修改爲no。

    # 修改前:
    # PasswordAuthentication yes
    # 修改後:
    PasswordAuthentication no
    
    # 重啓ssh:
    sudo service ssh restart
    

4. 保持連接,防止長時間未操作而斷開

通過發送“心跳”信號來維持持續連接,有如下4種方式,任意一種都行

  1. 服務端修改配置
    在/etc/ssh/sshd_config文件最後增加兩個參數後重啓ssh

    # Server 每隔 60 秒發送一次請求給 Client,然後 Client響應,從而保持連接
    ClientAliveInterval 60
    # Server發出請求後,客戶端沒有響應得次數達到10,就自動斷開連接
    ClientAliveCountMax 10
    

    SSH Server 每 60 秒就會自動發送一個信號給 Client,而等待 Client 迴應,如果客戶端沒有迴應,會記錄下來直到記錄數超過 ClientAliveCountMax 的值時,纔會斷開連接。

  2. 客戶端修改配置
    在/etc/ssh/ssh_config文件最後增加下面的參數

    TCPKeepAlive yes
    # Client每隔 60 秒發送一次請求給 Server,然後 Server響應,從而保持連接
    ServerAliveInterval 60
    # Client發出請求後,服務器端沒有響應得次數達到3,就自動斷開連接
    ServerAliveCountMax 3
    
  3. 客戶端單獨修改某一臺連接
    在~/ssh/config的配置中增加參數

    Host fxx
        HostName <your server ip>
        User root
        IdentityFile /Users/fxx/.ssh/id_rsa
        # 以下是需添加的配置
        ServerAliveInterval 60
        ServerAliveCountMax 3
    
  4. 直接用命令

    ssh -o TCPKeepAlive=yes -o ServerAliveInterval=300 -o ServerAliveCountMax=3 fxx
    
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章