User Tools

Site Tools


自作クラスタ計算機:sshの基本設定

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
自作クラスタ計算機:sshの基本設定 [2020/02/25 16:13]
koudai [概要]
自作クラスタ計算機:sshの基本設定 [2022/04/04 20:58] (current)
koudai [SSH鍵の作成]
Line 1: Line 1:
 ====== 概要 ====== ====== 概要 ======
  
-  * SSHを利用して、外部からクラスタ計算機接続できるようにします +  * SSHを利用して、ノード間の通信や外部からクラスタ計算機への接続できるようにします 
-  * セキュリティ上の安全のため、ログインは鍵認証のみで行うようにします +  * セキュリティ上の安全のため、外部からのログインは鍵認証のみで行うようにします 
-  * 固定IPアドレスが管理ノードに設定されてない場合は、外部からヘッドノードにSSH接続ができません+  * 管理ノードにグローバルIPアドレスが設定されてない場合は、外部から管理ノードにSSH接続ができません
   * このページでは、管理ノードの固定IPアドレスを xxx.xxx.xxx.xxx とします   * このページでは、管理ノードの固定IPアドレスを xxx.xxx.xxx.xxx とします
  
Line 11: Line 11:
 ===== SSHの導入 ===== ===== SSHの導入 =====
  
-  - ヘッドノードと計算ノードの両方でSSHをインストールします<code>+  - 管理ノードと計算ノードの両方でSSHをインストールします<code>
 $ sudo apt install ssh</code> $ sudo apt install ssh</code>
-  - ヘッドノードから計算ノードにSSHで接続できるか確認します。@の前は計算ノードのユーザー名、後ろは計算ノードのプライベートIPアドレスを入力します。 <code>+  - 管理ノードから計算ノードにSSHで接続できるか確認します。@の前は計算ノードのユーザー名、後ろは計算ノードのプライベートIPアドレスを入力します。 <code>
 $ ssh username_keisan11@192.168.0.11</code> $ ssh username_keisan11@192.168.0.11</code>
     * 計算ノードからログアウトしてヘッドノードに再び戻るには<code>$ exit</code>とします。     * 計算ノードからログアウトしてヘッドノードに再び戻るには<code>$ exit</code>とします。
-  - 別途インターネットに接続されたパソコンでターミナルを開き、外部からSSHでヘッドノードに接続できるか確認します。@の前はヘッドノードのユーザー名、後ろはIPアドレスまたはFQDNを入力します <code> +  - (管理ノードにグローバルIPアドレスを設定した場合)別途インターネットに接続されたパソコンでターミナルを開き、外部からSSHで管理ノードに接続できるか確認します。@の前は管理ノードのユーザー名、後ろはIPアドレスまたはFQDNを入力します <code> 
-$ ssh username_head@xxx.xxx.xxx.xxx+$ ssh username_kanri@xxx.xxx.xxx.xxx
 </code> </code>
  
-これで外部のパソコンからヘッドノードを操作できるようになったので、以後は手元のパソコンを使用して設定を行います+これで外部のパソコンから管理ノードを操作できるようになったので、以後は手元のパソコンを使用して設定を行います
  
 ===== 鍵認証の設定 ===== ===== 鍵認証の設定 =====
Line 26: Line 26:
 外部からヘッドノードに接続する際にSSH鍵認証のみを許可するようにします 外部からヘッドノードに接続する際にSSH鍵認証のみを許可するようにします
  
-==== 秘密鍵の作成 ====+==== SSH鍵の作成 ====
  
   - (SSHの秘密鍵/公開鍵を持っていない場合)手元のパソコンでSSH鍵を作成します<code>   - (SSHの秘密鍵/公開鍵を持っていない場合)手元のパソコンでSSH鍵を作成します<code>
-$ ssh-keygen -t rsa</code>+$ ssh-keygen</code>
     * このコマンドのあと、SSH秘密鍵のパスワードの設定が要求されるので入力します     * このコマンドのあと、SSH秘密鍵のパスワードの設定が要求されるので入力します
-    * 保存先は次のとおりです+    * SSH鍵の保存先は次のとおりです
       * 公開鍵: ~/.ssh/id_rsa.pub       * 公開鍵: ~/.ssh/id_rsa.pub
       * 秘密鍵: ~/.ssh/id_rsa       * 秘密鍵: ~/.ssh/id_rsa
Line 39: Line 39:
 </code> </code>
  
-==== ヘッドノードへ公開鍵を設置 ====+==== 管理ノードへ公開鍵を設置 ====
  
-  - 作成した公開鍵を、scpコマンドを使ってヘッドノードに送ります<code> +  - 作成した公開鍵を、scpコマンドを使って管理ノードに送ります<code> 
-$ scp ~/.ssh/id_rsa.pub username_head@xxx.xxx.xxx.xxx:/home/username_head/.ssh/authorized_keys+$ scp ~/.ssh/id_rsa.pub username_kanri@xxx.xxx.xxx.xxx:/home/username_kanri/.ssh/authorized_keys
 </code> </code>
-  - ヘッドノードにログインし、公開鍵とディレクトリのパーミッションを設定します<code> +  - 管理ノードにログインし、公開鍵とディレクトリのパーミッションを設定します<code> 
-$ ssh username_head@xxx.xxx.xxx.xxx+$ ssh username_kanri@xxx.xxx.xxx.xxx
 $ chmod 600 ~/.ssh/authorized_keys $ chmod 600 ~/.ssh/authorized_keys
 $ chmod 700 ~/.ssh/ $ chmod 700 ~/.ssh/
Line 52: Line 52:
 ==== ログインを鍵認証のみに設定 ==== ==== ログインを鍵認証のみに設定 ====
  
-SSH鍵認証のみでログインできるようにします+セキュリティ上、管理ノードへのログインはSSH鍵認証のみにします
  
-  - ヘッドノードにログインしたまま、次のようにSSHの設定ファイルを書き換えます<code>+  - 管理ノードにログインしたまま、次のようにSSHの設定ファイルを書き換えます<code>
 $ sudo vi /etc/ssh/sshd_config $ sudo vi /etc/ssh/sshd_config
 </code><file - sshd_config> </code><file - sshd_config>
Line 71: Line 71:
 $ sudo /etc/init.d/ssh restart $ sudo /etc/init.d/ssh restart
 </code> </code>
-  - ヘッドノードからログアウトします<code>+  - 管理ノードからログアウトします<code>
 $ exit $ exit
 </code> </code>
Line 81: Line 81:
  
 <code> <code>
-$ ssh -i ~/.ssh/id_rsa username_head@xxx.xxx.xxx.xxx+$ ssh -i ~/.ssh/id_rsa username_kanri@xxx.xxx.xxx.xxx
 </code> </code>
  
 ==== configファイルの設定 ==== ==== configファイルの設定 ====
  
-  * いちいち鍵のパスや接続先のアドレスを打ち込むのは面倒くさいので、 ~/.ssh/config というファイルに設定を書き込んでおくと便利です。 +  * 鍵のパスや接続先のアドレスをいちいち打ち込むのは面倒くさいので、 ~/.ssh/config というファイルに設定を書き込んでおくと便利です。 
-  * ProxyCommandを使えば直接計算ノードにログインできるようになります(多段SSH)。+  * ついでにProxyCommandを使って直接計算ノードにログインできるようにます(多段SSH)。
  
 <file - config> <file - config>
 #ヘッドノード #ヘッドノード
-Host head+Host kanri
   HostName      xxx.xxx.xxx.xxx   HostName      xxx.xxx.xxx.xxx
-  User          username_head+  User          username_kanri
   IdentityFile  ~/.ssh/id_rsa   IdentityFile  ~/.ssh/id_rsa
  
Line 100: Line 100:
   HostName      192.168.0.11   HostName      192.168.0.11
   User          username_keisan11   User          username_keisan11
-  ProxyCommand  ssh -W %h:%p head+  ProxyCommand  ssh -W %h:%p kanri
      
 Host keisan12 Host keisan12
   HostName      192.168.0.12   HostName      192.168.0.12
   User          username_keisan12   User          username_keisan12
-  ProxyCommand  ssh -W %h:%p head+  ProxyCommand  ssh -W %h:%p kanri
      
 #以下略 #以下略
Line 111: Line 111:
 次のようにHostを指定するだけでサーバーにログインできます 次のようにHostを指定するだけでサーバーにログインできます
 <code> <code>
-$ ssh head       ヘッドノードにつなぐ場合+$ ssh kanri      管理ノードにつなぐ場合
 $ ssh keisan11   # 計算ノードにつなぐ場合 $ ssh keisan11   # 計算ノードにつなぐ場合
 </code> </code>
  
-パソコンからヘッドノードにログインできるようになったら、あとは遠隔で作業ができます。サーバー室から自分の部屋に戻りましょう。+パソコンから管理ノードにログインできるようになったら、あとは遠隔で作業ができます。サーバー室から自分の部屋に戻りましょう。
自作クラスタ計算機/sshの基本設定.1582614795.txt.gz · Last modified: 2021/06/27 21:58 (external edit)