安裝SSH、配置SSH無密碼登錄 ssh localhost


集群、單節點模式都需要用到 SSH 登陸(類似於遠程登陸,你可以登錄某台 Linux 主機,並且在上面運行命令),Ubuntu 默認已安裝了 SSH client,此外還需要安裝 SSH server:

  1. sudo apt-get install openssh-server
Shell 命令

安裝后,可以使用如下命令登陸本機:

  1. ssh localhost

此時會有如下提示(SSH首次登陸提示),輸入 yes 。然后按提示輸入密碼 hadoop,這樣就登陸到本機了。

但這樣登陸是需要每次輸入密碼的,我們需要配置成SSH無密碼登陸比較方便。

有以下兩種實現方法:

  一、首先退出剛才的 ssh,就回到了我們原先的終端窗口,然后利用 ssh-keygen 生成密鑰,並將密鑰加入到授權中:

    1. exit # 退出剛才的 ssh localhost
    2. cd ~/.ssh/ # 若沒有該目錄,請先執行一次ssh localhost
    3. ssh-keygen -t rsa # 會有提示,都按回車就可以
    4. cat ./id_rsa.pub >> ./authorized_keys # 加入授權

  二、 

    1,登錄ssh localhost
    2,ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
       cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
    3,再次執行ssh localhost

    4,要保證:
    ~/.ssh需要是700權限
    authorized_keys需要是644權限

    chmod 700 ~/.ssh
    chmod 644 ~/.ssh/authorized_keys

    5,此時進入到~/.ssh目錄下,會看到多了一個文件know_hosts文件,如下圖所示:

    6,退出exit
    重新打開shell

    7,最后ssh localhost驗證一下

注:~的含義:在 Linux 系統中,~ 代表的是用戶的主文件夾,即 “/home/用戶名” 這個目錄,如你的用戶名為 hadoop,則 ~ 就代表 “/home/hadoop/”。 此外,命令中的 # 后面的文字是注釋。

此時再用 ssh localhost 命令,無需輸入密碼就可以直接登陸了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM