linuxサーバでsshインタフェースを構成する方法(パスワードなしでsshログイン)


環境:
node1:192.168.3.20 node2:192.168.3.21
使用するコマンド
  • ssh-keygen:公開鍵と鍵を作成し、id_を生成します.rsaとid_rsa.pub 2ファイル
  • ssh-copy-id:ローカルの公開鍵をリモートホストのauthorized_にコピーkeysファイル(ファイルを上書きせず、ファイルの末尾に追加)は、リモートホストのユーザディレクトリが設定.ssh和ssh/authorized_keys権限は:chmod 700~/.ssh chmod 600 ~/.ssh/authorized_keys

  • これから
    1.2台のマシンでそれぞれのキーファイルを生成する
     [[email protected]]#ssh-keygen -t rsa       #         
     [[email protected]]#ssh-keygen -t rsa
    

    2.ssh-copy-idで公開鍵をリモートホストにコピーし、コマンドも
    [[email protected]]#ssh-copy-id -i  .ssh/id_rsa.pub [email protected]
    [[email protected]]#ssh-copy-id -i  .ssh/id_rsa.pub [email protected]
    

    注:デフォルトのポートでない場合は、ssh-copy-id-i~/と書くことができます.ssh/id_rsa.pub “-p 2022 [email protected]
    今すぐログインできます
    [[email protected]]#ssh [email protected]ああ、やってみよう
    説明:
  • はrootユーザで相互信頼を構成するものであり、他のユーザが望む場合は、対応するユーザに切り取ってコマンドを実行すればよい
  • である.
  • 単純に一方向の信頼だけが必要なら、1台のマシンでコマンドを実行すればよい、例えばnode 1にnode 2を接続し、パスワードを使わずにnode 1でコマンドを実行すればよい
  • .
  • 3.IPアドレスとホスト名の対応関係を/etc/hostsに追加することもできます.このように直接sshホスト名を追加すればいいです(eg:192.168.3.21 node 2をhostsに追加すれば
  • です.