SSH

基本情報

教育用サーバ sol を経由することで,学外から学内のネットワークに SSH (Secure SHell) による暗号化された通信路で接続することができます.

サーバ名

sol.edu.cc.uec.ac.jp

アカウント

UEC アカウント

ログイン(認証)の種類

SSH によるログイン(認証)方法には,

の2つがあります.鍵ペアによる方法がより安全です.

注釈

今後,学外から学内へのアクセスは,段階的に鍵ペアによる認証のみとする計画です.

必要なソフトウェア

Windows 用の SSH クライアントソフトウェアとして,

があります.

多くの UNIX, macOS では,

  • OpenSSH の ssh コマンド

が標準インストールされており,これを使用します.

パスワードによるログイン

ここでは,パスワードによるログイン方法として

  • OpenSSH の ssh コマンドによる方法 (UNIX, macOS)

  • PuTTY による方法 (Windows)

  • Tera Term による方法 (Windows)

の 3 つを紹介します

OpenSSH の ssh コマンド (UNIX, macOS)

  1. 端末プログラム (xterm, kterm, gnome-terminal, ターミナル など) を起動します.

  2. サーバ接続と認証を行います.

  • 以下のように ssh コマンドを入力してください.

    %ssh UECアカウント名@sol.edu.cc.uec.ac.jp
    
  1. UEC アカウントのパスワードを要求されるので入力して下さい.

注釈

ログアウト(接続を解除)をするには exit コマンドを実行して下さい. ウインドウが閉じない場合は、右上の「x」をクリックするなどしてください.

PuTTY (Windows)

  1. SSH のチェック欄をクリックしてプロトコルとして SSH を指定して下さい.

  2. 「Host Name(or IP address)」欄に sol.edu.cc.uec.ac.jp と入力して下さい. 「port」欄 は 22 を入力してください。

../../_images/putty_01.png
  1. 右下の 「Open」 ボタンをクリックしてください。問題がなければ接続が開始されます。

  2. 「login as:」 の後にユーザ名を入力を入力してください。

  3. 「password:」 のあとにパスワードもしくはパスフレーズを入力してください。入力したパスワード文字は表示されません。

注釈

ログアウト(接続を解除)をするには exit コマンドを実行して下さい. ウインドウが閉じない場合は、右上の「x」をクリックするなどしてください.

Tera Term (Windows)

  1. 起動すると「新しい接続」ウインドウが表示されます. 「ホスト」欄には sol.edu.cc.uec.ac.jp , 「TCPポート」欄には 22 を入力して「OK」ボタンを押して下さい

../../_images/teraterm_01.png
  1. セキュリティウィンドウが表示されますが,「続行」ボタンをクリックしてください.

  2. サーバ名に誤りがなければ「SSH認証」画面が表示されます. ユーザ名とパスワードをそれぞれ入力してください.

警告

セキュリティの観点から「パスワードをメモリ上に記憶する」のチェックは外しておくことを推奨します.

../../_images/teraterm_02.png
  1. 「OK」ボタンをクリックすると,対象のサーバへログインすることが出来ます.

注釈

ログアウト(接続を解除)をするには exit コマンドを実行して下さい. ウインドウが閉じない場合は、右上の「x」をクリックするなどしてください.

鍵ペア(公開鍵と秘密鍵)によるログイン

基本的な流れ

公開鍵秘密鍵 の組(鍵ペア)を生成します. 公開鍵 をログイン先のシステム(Sol)に登録した上で,認証時に 秘密鍵 をログイン元の PC で参照することで鍵の照合が行われます.

警告

秘密鍵 は絶対に他者に知られないように厳重に管理してください. 秘密鍵を他者に知られた恐れがある場合は,本手順で鍵ペアを再生成,再登録して下さい. 公開鍵 は他者に知られても鍵ペアの仕組み上問題はありませんが,信頼できるサーバにのみ登録することをおすすめします.

鍵ペアの生成と登録

Putty (Windows)

  1. 「PuTTYgen」を起動します.

  2. 「Generate」ボタンをクリックし,乱数生成のためウインドウ上でマウスをランダムに動かしてください.

../../_images/puttyKeygen_01.png
  1. 「Public key for ~~~」の下部のテキストボックスの欄に記載されている文字列が 公開鍵 です.

../../_images/puttyKeygen_02.png
  1. 上記の画像のように,「Key passphrase」と「Confirm passphrase」に パスフレーズ を入力して下さい. 本学規定基づき,12 文字以上を推奨します. パスフレーズ はログインに利用します.

    注釈

    パスフレーズは,鍵ペアに設定されるパスワードです.UECアカウントのパスワードとは異なります.

  2. 「Save public key」と「Save private key」をそれぞれクリックし, 公開鍵秘密鍵 を保存して下さい. ここでは,公開鍵sol_rsa.pub秘密鍵sol_rsa.ppk とします.

  3. 公開鍵 をログイン先サーバ (sol.edu.cc.uec.ac.jp) に登録します. 保存した 公開鍵 をクリップボードにコピーしてください. パスワードによるログイン の手順にしたがい,PuTTY もしくは Tera Term ログイン先サーバに パスワードでログインし, ~/.ssh/authorized_keys にコピーした公開鍵を貼り付けて下さい.

Tera Term (Windows)

注釈

現在準備中です.

OpenSSH の ssh-keygen コマンド (UNIX, macOS)

  1. 端末プログラム(xterm,kterm,gnome-terminal, ターミナル など)から ssh-keygen コマンドを使って,鍵のペアを作ります.

% ssh-keygen (Enter)
Generating public/private rsa key pair.
Enter file in which to save the key (/homedir/.ssh/id_rsa): (キーの保存場所.通常はそのまま Enter)
Enter passphrase (empty for no passphrase): (パスフレーズを入力)
Enter same passphrase again: (パスフレーズを再入力)
Your identification has been saved in /homedir/.ssh/id_rsa.
<略>
  1. ~/.ssh/ フォルダに id_rsa (秘密鍵)と id_rsa.pub (公開鍵)がそれぞれ作成されていることを確認します.

    % ls ~/.ssh/
    id_rsa  id_rsa.pub
    
  2. 公開鍵を対象サーバに登録します. 以下のように, ssh-copy-id コマンドで,先程作成した公開鍵 ( id_rsa.pub ) を ログイン先サーバ上の ~/.ssh/authorized_keys に登録できます.

% ssh-copy-id <UECアカウント名>@sol.edu.cc.uec.ac.jp

ログイン

注釈

以下の方法は,鍵ペアによるログイン方法です.事前に 鍵ペアの生成と登録 をする必要があります. パスワードによるログインは パスワードによるログイン を参照してください.

Tera Term による方法 (Windows)

Tera Term で公開鍵認証を行う場合は,以下の画像の「パスフレーズ(P):」欄に 鍵の生成時に入力したパスフレーズを入力し,「RSA/DSA/ECDSA鍵を使う」に チェックを付け「秘密鍵」のボタンを押し秘密鍵を選択します.

../../_images/teraterm_02.png

PuTTY による方法 (Windows)

PuTTYで公開鍵認証を行う場合は,接続する際の画面のサイドバーから 以下の画像のように Connection -> SSH -> Auth のページを開き, 「Browse...」ボタンを押して保存した秘密鍵を選択して下さい.

../../_images/puttyKeygen_03.png

OpenSSH の ssh コマンドによる方法 (UNIX, macOS)

  1. 端末プログラム(xterm,kterm,gnome-terminal, ターミナル など) から ssh-keygen コマンドを使って,鍵のペアを作ります.

% ssh-keygen (Enter)
Generating public/private rsa key pair.
Enter file in which to save the key (/homedir/.ssh/id_rsa): (キーの保存場所.通常はそのまま Enter)
Enter passphrase (empty for no passphrase): (パスフレーズを入力)
Enter same passphrase again: (パスフレーズを再入力)
Your identification has been saved in /homedir/.ssh/id_rsa.
<略>
  1. ~/.ssh/ というフォルダに id_rsa (秘密鍵)と id_rsa.pub (公開鍵)がそれぞれ作成されていることを確認します.

% ls ~/.ssh/
id_rsa  id_rsa.pub
  1. 公開鍵を対象のサーバに登録する.

公開鍵をサーバに登録するためには,サーバ上の ~/.ssh/authorized_keys に先程作成した公開鍵の 中身を コピーする必要があります。(ファイルではなく中身をコピーします.)

% ssh-copy-id <UECアカウント名>@sol.edu.cc.uec.ac.jp
  1. パスフレーズでログインする

正しく鍵交換が出来ていれば, ssh コマンドによるログイン時に UEC アカウントのパスワードではなく 1. で設定したパスフレーズの入力を要求されます.


% ssh <UECアカウント名>@sol.edu.cc.uec.ac.jp Enter passphrase for key '/homedir/.ssh/id_rsa': (パスフレーズを入力)

SSH トンネルによる学内 Web の閲覧

SSH トンネルについて

UEC アカウントで sol.edu.cc.uec.ac.jp(教育系計算サーバ)にログインできる方なら, VPN 事前共有鍵を取得したり,申請を行うことなく学外から学内のウェブページをみることができます. 緊急で一時的に学内ページアクセスしたい場合に便利です.

下に示すように,上で紹介した SSH には,SSH トンネルにより, 学外の PC から学内に設置されたサーバなどに sol を介して一部の通信を中継する機能を持ちます. 以下に,各コマンドおよびソフトを通じてこれを行うための手順を紹介します.

../../_images/ssh_tunnel600.png

設定方法

基本的な設定の流れは,

  1. SSH クライアントでトンネルを生成する

  2. トンネル経由ウェブにアクセスするようにブラウザを設定する

です.以下に SSH クライアントごとの具体的な設定方法をまとめます.

PuTTY による方法(Windows)

  1. PuTTY を起動し,画面左の Session (セッション) を選び, 画面右の Host Name (or IP address)(ホスト名または IP アドレス) の欄に sol.edu.cc.uec.ac.jp と入力します.

../../_images/ssh_tunneling_putty01.PNG
  1. 画面左側ツリーを Connection (接続) \(\Rightarrow\) SSH \(\Rightarrow\) Tunnels (トンネル) の順にクリックしてたどります.

../../_images/ssh_tunneling_putty02.PNG
  1. 画面右の Source port (源ポート)1080 と入力し, その下の Dynamic (ダイナミック) をクリックします. 最後に Add (追加) ボタンを押すと, その直上の欄に D1080 が表示されるので確認します.

../../_images/ssh_tunneling_putty03.PNG
  1. 画面下の Open (開く) をクリックすると,以下の黒いウィンドウが表示されます. ここで,UEC アカウント名パスワード を入力します. ログインが成功すると,画面例のように表示されます.

    ログイン中 (ウィンドウを開いている間) のみ, お使いの PC の 1080 ポートから教育系サーバ sol.edu.cc.uec.ac.jp に繋がる SSH トンネルが生成されています.

../../_images/ssh_tunneling_putty04.PNG
  1. プロキシ・サーバとして,Socksサーバのアドレスに localhost , ポートの欄に 1080 と設定して下さい. 設定方法については Socks サーバ のページを確認して下さい.

警告

プロキシ・サーバではなく,Socks サーバのアドレスのみを指定する点に注意してください. 自動設定は使用せず,HTTP,Secure,FTP の項目は空にしてください.

ssh コマンドによる方法(macOS, UNIX)

  1. ssh -D 1080 UECアカウント名@sol.edu.cc.uec.ac.jp を入力し,トンネルを生成します. このコマンドにより,ログイン中のみ,お使いの PC の 1080 ポートから 教育系サーバ sol.edu.cc.uec.ac.jp に繋がる SSH トンネルを生成されます.

  2. プロキシ・サーバとして,Socks5 サーバのアドレスに localhost , ポートの欄に 1080 と設定して下さい. 設定方法については Socks サーバ のページを確認して下さい.

警告

プロキシ・サーバではなく,Socks サーバのアドレスのみを指定する点に注意してください. 自動設定は使用せず,HTTP,Secure,FTPの項目は空にしてください.