プロジェクト

全般

プロフィール

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

バージョン 5 (愛 江戸, 2022/04/08 15:09) → バージョン 6/13 (愛 江戸, 2022/04/08 16:21)

{{>toc}}

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

%{color:red} 説明画像準備中%

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による利用) PuTTYによる利用(Windows 計算機)

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

# ソフトウェアのダウンロードと展開
ソースコードが公開されていますが、一般的には Windows計算機用の
## "PuTTY":https://www.chiark.greenend.org.uk/~sgtatham/putty/index.html のサイトから「Download it here. 」のリンクをクリック バイナリプログラムとして、多くの利用者がその恩恵を受けています。
## 「Alternative binary files」の欄から、次のファイルをダウンロードする Windows上で PuTTYを利用して IEDへSSH接続する場合もmacOS/Linuxと
*** putty.zip (a .ZIP archive of all the above)
- *64-bit x86: putty.zip*
同様に公開カギファイルを作成しなければなりません。

## 上記ファイルを展開(解凍)して現れる 「PUTTYGEN.EXE」 を実行する(下図) puttygen.exeで PuTTYで使用するための秘密カギ、公開カギを
!puttygen_01.PNG! 作成することができます。手順を以下に示します。

# puttygen.exeを起動すると次の起動画面になります。
!puttygen0.jpg!
#
下段 Parameters欄で *RSA*方式、 *2048* ビットが指定されていることを確認し、中段の *「Generate」* ボタンをクリックしてキー作成に入る(指定が正しくない場合は、 *RSA* 方式、 *2048* ビットを指定する)

#
Parametersで SSH-2 RSA方式の 2048ビットを選択します。
次に中段の [Generate]を選択してキー作成に入ります。
画面上段の Key部にある「Please Key部にある[Please generate some randomness by ... 」の領域内でマウスのポインタを上下左右に動かして、進捗バーを進める ]と
!puttygen_02.PNG!

あるように、上段領域内でマウスのポインタを上下左右に動かしていきます。
!puttygen1.jpg!
# 進捗バーが最大値まですすむと、「Please カラーバーがキー作成の進捗を表し、[Please wait while a key is generated..」というウィンドウを経て、Key欄が表示されたウィンドウが表示される(下図) generated..]の後に
!puttygen_03.PNG!

# *「Key comment」* を「ログイン名@場所・計算機名」に書き換え、 *「Key passphrase」* および *「Confirm passphrase」* に、
!puttygen2.jpg!
パスフレーズを間違えないように入力する。パスフレーズの長さは 20文字程度以上を用意したほうが良いでしょう。 という画面にかわります。[Key comment]部をたとえば
!puttygen_04.PNG!

# それぞれ入力が終わったら、 *「Save
「ログイン名@場所・計算機名」に書き換え[Key passphrase][Confirm passphrase]で
パスフレーズを間違えないように書き込みます。文字列の長さは 20文字程度以上を
用意したほうが良いでしょう。

IEDで使用するためには、この状態で[Save
private key」* で秘密カギを保存する。ファイル名は例えば 「id_rsa_2048」などとする(何でも良いが、分かりやすい内容にする)

# 続いて公開カギを保存する。
key]として、現在の
## ウィンドウ上段に表示されている「Public 秘密カギを保存します。ファイル名は例えば id_rsa_2048 などとします。
このファイルは厳重に保管しておきます。公開カギもいっしょに作成して、
例えば id_rsa_2048.pub として保存しておきます。
IEDで使用する公開カギは、上段に表示されている
[Public
key for pasting into Open SSH authorized_keys file:」欄のにある「ssh-rsa」から始まる文字列をマウスですべて選択し、右クリック → 「コピー」を選択する file:]欄に
!puttygen_05.PNG! 表示されている[ssh-rsa]から始まる文字列です。
## 先の秘密カギと同じフォルダに「id_rsa_2048.pub」というファイルを作成し、先にコピーした文字列をテキストデータとして保存する(ファイル名は何でも良いが、先の秘密カギと対になるようにすると良い)

# [[演習室端末(Linux)の遠隔利用]] ページを参考にして、IEDのPC端末にログインする

# 次のコマンドで ~/.ssh/authorized_keys に 公開カギを追記する。
この文字列をマウスですべて選択して、他のファイルへペーストします。
echo コマンドには、先に公開カギとしてコピーした文字列を指定する。putty には、右クリックで貼り付けができる このファイルを USBメモリなどを利用して IEDへコピーします。
<pre>
$ echo "ssh-rsa AAAA...r x2210XXX@remote.ied.inf.uec.ac.jp" >>
IEDに持ってきたファイルは ~/.ssh/authorized_keys
$ exit
に追記します。
</pre>

# 以降、次の内容を指定することで、SSHログインができるようになる。
[[演習室端末(Linux)の遠隔利用]] ページを参考に、演習室端末に
## 左枠の「Session」にある「Host Name」 -> *remote.ied.inf.uec.ac.up* SSH でログインし、公開鍵のファイルの内容を authorized_keys に
!puttygen_06_1.PNG! 追記しても良いです。
## 左枠の「Connection -> SSH -> Auth」にある「Private key file for authentication」 -> 先に保存した秘密カギ Linux 上での authorized_keys の作成については、MacOS の説明の
!puttygen_06_2.PNG!

# 以上で、Windowsによる公開カギによるSSHログインができるようになる
後半を参照して下さい。
!puttygen_07.PNG!
この設定を終えると学外からIEDへのSSH接続ができるようになります。