プロジェクト

全般

プロフィール

遠隔利用サーバの利用 » 履歴 » バージョン 12

バージョン 11 (愛 江戸, 2022/04/18 16:41) → バージョン 12/13 (愛 江戸, 2022/04/18 16:42)

{{>toc}}

h1. 遠隔利用サーバの利用

h2. 概要

IEDでは演習室外および学外から VPN を介さずに直接 SSH 接続(遠隔利用)できる遠隔利用サーバを用意しています。
SSH接続先のIED環境は Linux (CUI) 環境のみです。
学外へ公開しているサーバのため、セキュリティ上の理由から、SSH接続での利用者認証にはパスワードとは別のパスフレーズを利用する公開カギ認証方式に限定しています。利用開始前に1度だけ、公開カギの作成と設定が必要です。

遠隔利用できる計算機名は次のとおりです。

remote.ied.inf.uec.ac.jp

利用にあたっては、 *[[長時間実行プロセスについて]]* も確認してください。
inf.uec.ac.jp ドメインからは FTP による利用も可能です。

%{color:red} なお、このサーバは同時利用者が数名程度であると想定したリソースしか持っていません。
授業で大人数が同時ログインするような利用は避けて下さい。%

h2. SSHによるIED端末へのアクセス

SSHでは通信路でのデータ通信を暗号化して盗聴、情報の漏洩などへの
防御をおこなっています。
SSHではパスワードの他、長文のパスフレーズが設定された公開カギを
利用する方法(公開カギ認証)が選択できます。
遠隔利用サーバでは、学外からのアクセス方式を公開カギ認証に限定しています。

利用を開始するための準備として、アクセス元計算機側でパスフレーズの
設定された公開カギを用意しなければなりません。パスフレーズの文字列は
20文字程度を利用してください。
単純な単語は使用せず、いくつかの文節を利用した文字列等を組み合わせると
良いでしょう。

h2. macOS または Linux が稼働している計算機からの接続

h3. macOSの場合

事前準備として、公開カギの作成と設定をします。

# ユーティリティから「"ターミナル":https://techacademy.jp/magazine/5155 」を起動します
 
# 公開カギ用のディレクトリを作成します。 *(先頭の$はコマンドプロンプトを示しています)*
<pre>
$ install -m 700 -d ~/.ssh
$ cd ~/.ssh
</pre>
 
# 次のコマンドを入力し、パスフレーズの設定された公開カギを作成します。
<pre>
$ ssh-keygen -t rsa -b 4096 -C "koukai-kagi setup" -f ~/.ssh/id_rsa
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase): <-- パスフレーズを入力(20文字程度) %
Enter same passphrase again: <-- もう一度、パスフレーズを入力(20文字程度)
Your identification has been saved in id_rsa.
Your public key has been saved in id_rsa.pub.
... <-- fingerprint などが表示される
$ ls ~/.ssh
id_rsa id_rsa.pub
</pre>
注:"koukai-kagi setup"はコメントなので何でも良い、わかりやすいように "jitaku-PC 1"
"username@Lab303-p21"などと付けるとあとでキー変更のときに便利
 
# 上記のうち、 id_rsa.pub をIEDのホームディレクトリにSCPでコピーします。
IEDのホームディレクトリへは、演習室端末を介してアクセスできます。
[[演習室端末(Linux)の遠隔利用]] ページを参考に、まずは利用可能な
演習室端末を用意して下さい。
<pre>

$ scp ~/.ssh/id_rsa.pub a2210???@aXX.ied.inf.uec.ac.jp:~/ <-- @の左側はUECアカウントのユーザ名
The authenticity of host 'aXX.ied.inf.uec.ac.jp (172.21.166.YY)' can't be established.
ED25519 key fingerprint is SHA256:H71B37iV2kwn5Nb1J4yRXYOLcixgaoqxkWMZFvBDhp0.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[ringerprint])? yes <-- yes/no と表示されたら yes と入力
Warning: Permanently added 'aXX.ied.inf.uec.ac.jp' (ED25519) to the list of known hosts.
a2210???@aXX.ied.inf.uec.ac.jp's password: <-- パスワード入力(内容は非表示)

id_rsa.pub 100% 7 0.0KB/s 00:00
</pre>
 
# SSH用ディレクトリに、パスフレーズの設定された公開カギを設定します。
ファイルを転送した端末にUECアカウントでSSH接続して設定します。
<pre>
$ ssh a2210???@aXX.ied.inf.uec.ac.jp
a2210???@aXX.ied.inf.uec.ac.jp's password: <-- UECアカウントのパスワードを入力

--- 以降 aXX.ied.inf.uec.ac.jp での遠隔操作
$ mkdir ~/.ssh
$ chmod 700 ~/.ssh
$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 600 ~/.ssh/authorized_keys
$ exit

</pre>
 
# 上記の準備が完了したら、ターミナルから次のコマンドで、IEDの端末にSSH接続
できるようになります。
<pre>
$ ssh a2210???@remote.ied.inf.uec.ac.jp
The authenticity of host 'remote.ied.inf.uec.ac.jp (130.153.173.13)' can't be established.
ED25519 key fingerprint is SHA256:+RNZCHCr8QtnoTftKnvmuDhTMGdIxYd+x6324UcMx20.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'remote.ied.inf.uec.ac.jp,130.153.173.13' (ED25519) to the list of known hosts.
Enter passphrase for key '/Users/XXXXXX/.ssh/id_rsa': <-- パスフレーズを入力
Welcome to Ubuntu 20.04.3 LTS (GNU/Linux 5.13.0-28-generic x86_64)
Last login: Wed Apr 6 11:40:55 2022 from 172.21.2.144
remote:~>
</pre>

h3. Linuxの場合

# ターミナルを起動します
# 公開カギ用のディレクトリを作成します。
<pre>
$ mkdir ~/.ssh
$ chmod 700 ~/.ssh
$ cd ~/.ssh
</pre>
# 以降は、macOSの手順3以降と同じ手順で、IEDの端末にSSH接続できるように
なります。

h2. Windowsが稼働している計算機からの接続(PuTTYによる利用)

接続元のPCがWindowsの場合の設定例を示します。
ソフトウェアは "PuTTY":https://www.chiark.greenend.org.uk/~sgtatham/putty/index.html を利用します。
WindowsからSSH接続する場合も、macOS/Linuxと同様に公開カギファイルを作成しなければなりません。

# ソフトウェアのダウンロードと展開
## "PuTTY":https://www.chiark.greenend.org.uk/~sgtatham/putty/index.html のサイトから「Download it here. 」のリンクをクリック
## 「Alternative binary files」の欄から、次のファイルをダウンロードする
*** putty.zip (a .ZIP archive of all the above)
- *64-bit x86: putty.zip*
 
## 上記ファイルを展開(解凍)して現れる 「PUTTYGEN.EXE」 を実行する(下図)
!puttygen_01.PNG!
 
# 下段 Parameters欄で *RSA* 方式、 *2048* ビットが指定されていることを確認する(指定が正しくない場合は、 *RSA* 方式、 *2048* ビットを指定する)
 
# 中段の *「Generate」* ボタンをクリックしてキー作成に入る
 
# 画面上段の Key部にある「Please generate some randomness by ... 」の領域内でマウスのポインタを上下左右に動かして、進捗バーを進める
!puttygen_02.PNG!
 
# 進捗バーが最大値まですすむと、「Please wait while a key is generated..」というウィンドウを経て、Key欄が表示されたウィンドウが表示される(下図)
!puttygen_03.PNG!
 
# *「Key comment」* を「ログイン名@場所・計算機名」に書き換え、 *「Key passphrase」* および *「Confirm passphrase」* に、
パスフレーズを間違えないように入力する。パスフレーズの長さは 20文字程度以上を用意したほうが良いでしょう。
!puttygen_04.PNG!
 
# それぞれ入力が終わったら、 *「Save private key」* で秘密カギを保存する。ファイル名は例えば 「id_rsa_2048」などとする(何でも良いが、分かりやすい内容にする)
 
# 続いて公開カギを保存する。
## ウィンドウ上段に表示されている「Public key for pasting into Open SSH authorized_keys file:」欄のにある「ssh-rsa」から始まる文字列をマウスですべて選択し、右クリック → 「コピー」を選択する
!puttygen_05.PNG!
 
## 先の秘密カギと同じフォルダに「id_rsa_2048.pub」というファイルを作成し、先にコピーした文字列をテキストデータとして保存する(ファイル名は何でも良いが、先の秘密カギと対になるようにすると良い)
 
# [[演習室端末(Linux)の遠隔利用]] ページを参考にして、IEDのPC端末にログインする
 
# 次のコマンドで ~/.ssh/authorized_keys に 公開カギを追記する。
echo コマンドには、先に公開カギとしてコピーした文字列を指定する。putty には、右クリックで貼り付けができる
<pre>
$ echo "ssh-rsa AAAA...r x2210XXX@remote.ied.inf.uec.ac.jp" >> ~/.ssh/authorized_keys
$ exit
</pre>
 
# 以降、次の内容を指定することで、SSHログインができるようになる。
## 左枠の「Session」にある「Host Name」 -> *remote.ied.inf.uec.ac.up*
!puttygen_06_1.PNG!
 
## 左枠の「Connection -> SSH -> Auth」にある「Private key file for authentication」 -> 先に保存した秘密カギ
!puttygen_06_2.PNG!
 
## 「Open」ボタンをクリックする
 
# 以上で、Windowsによる公開カギによるSSHログインができるようになる
!puttygen_07.PNG!