window下通過Xshell登入GCP計算機例項

Lauamoe發表於2019-02-26

由於Google雲服務對新註冊使用者提供為期一年的300美金贈金,就想著在GCP上玩一下。但是因為是新手,對伺服器的一些操作不是很熟悉,在GCP上新建立的Compute Engine無法在本地使用Xshell遠端登入,通過對比網上的一些資料,最後成功使用Xshell通過金鑰形式登入了伺服器,特此記錄一下,以防之後建立新機器的時候忘記。

  • 前提

擁有外幣信用卡,並且成功註冊了GCP獲得贈金,建立了一臺虛擬機器例項。

  • 實際操作

    1. 先通過瀏覽器登入伺服器,順手把伺服器的密碼改了(後面可以使用賬號密碼登入)。

    # 切換到root使用者
    sudo su root
    # 設定root使用者密碼
    passwd    
    # 設定預設登入使用者密碼(例:使用者lauasuka)
    passwd lauasuka
    複製程式碼

    此時的使用者lauasuka會無法使用sudo命令,修改sudoers檔案。

    # 當前使用者為root,切換目錄到root的home下
    cd ~
    # 編輯修改/etc/sudoers檔案
    visudo
    複製程式碼

    image

    修改sshd的配置檔案,啟用金鑰認證登入,同時關閉密碼認證,並重啟服務

    vim /etc/ssh/ssh_config
    ## 修改下面引數的值
    # PubkeyAuthentication  yes                    #啟用PublicKey認證
    # PasswordAuthentication  no                   #不適用密碼認證登入
    systemctl restart sshd                         #重啟sshd服務
    複製程式碼

    2. 金鑰生成

    首先切換回普通使用者,使用ssh-keygen生成金鑰對(金鑰密碼可選),此時會在當前使用者的家目錄生成.ssh目錄,並且目錄下會生成公鑰 id_rsa.pub 和私鑰檔案 id_rsa

    image

    將公鑰追加到authorized_keys檔案

    # 當前使用者為普通使用者
    sudo cat id_rsa.pub >> {當前使用者家目錄}/.ssh/authorized_keys
    # 更改authorized_keys檔案許可權為擁有者可讀寫
    sudo chmod 600 {當前使用者家目錄}/.ssh/authorized_keys
    複製程式碼

    3. 使用Xshell金鑰連線

    將當前使用者私鑰檔案 id_rsa 下載到本地。 開啟Xshell,點選 工具 > 使用者金鑰管理者,匯入剛剛下載的id_rsa私鑰

    image

    之後就可以像賬號密碼登入一樣登入伺服器了,新增連線的時候 使用者身份驗證

    image

  • 最後

    其實操作步驟可以反過來,金鑰對由本地Xshell生成,然後將本地生成的公鑰上傳到伺服器並追加到authorized_keys檔案中

相關文章