RTX830のSSHに公開鍵認証で接続しよう RTX830で遊ぼう その4


# セキュリティ上、問題ありの平文での通信であるTELNETから卒業し公開鍵認証のSSHを使おう

前回の記事

https://qiita.com/Motoki_Wada/items/597ab114e16f3ab1979b

## TELNETやHTTPのような暗号化されていない通信経路を使うのは危ない
RTX830のTELNETは、なんの設定もしなくても使えるので便利ではあるのですが、通信が暗号化されない古い仕組み。通信を傍受されないようにSSHを利用することにしました。
RTX830も現行機種であるとはいえ、5年立っている代物。次世代機種ではコンソール接続がSSHが標準で、WEB_GUIもSSLがデフォルトになるかな？
## まずはSSHサーバーのホスト鍵の生成をしよう
`administrator`で管理者としてログイン
![WS000003.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/8473ba74-8cf4-2ecb-dbad-dbcc1cfd88ef.jpeg)
コンソールで`sshd host key generate`と打ち込みます。設定が終了するのに少し時間がかかります。
![WS000004.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/f69b79fc-5bce-1390-6b53-adc13d4baf47.jpeg)
以下の画面になれば設定が反映されている状態です。
![WS000005.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/24885340-7eb6-1578-b380-8a25f5bf6f65.jpeg)
## PuTTY Key Generatorで秘密鍵・公開鍵のペアを作る
Yamahaの公式サイトによると、RTX830のSSHサーバー機能の公開鍵暗号アルゴリズムのなかで一番暗号強度が高いものは、`ecdsa-sha2-nistp521`とのことなので、暗号アルゴリズムにはこちらを採用しました。
`PuTTY Key Generator`の`ParametersのECDSAのnitp521`を選択。
![WS000007.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/97aefc1a-40be-b31f-9dbf-dc55001ffa07.jpeg)
Generateをクリック
![WS000009.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/da3e20ab-33a4-5ee9-7a57-58902bb22e02.jpeg)
プログレスバーの下辺りの何もない部分でマウスを動かし続けると鍵のペアが生成されます。
![WS000010.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/a7878991-f93f-6a8d-f09e-c55ae1899265.jpeg)
`Key passphrase`は任意のようですが、セキュリティを考慮して今回は設定しました。モザイク部分は接続に必要なデーターですのでマスキングさせていただきました。
![WS000011.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/4952001f-6e2c-8e82-d5a4-e32f774bff77.jpeg)
`Save Public key`で公開鍵　`Save private key`で秘密鍵が保存できます。
任意の場所に保存してください。
![WS000013.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/9fc7f838-38ac-5c4e-9142-736d5e68eab5.jpeg)
## 作った公開鍵をRTX830に登録する
次にRTX830のコンソール上で`public key for pasting into OpenSSH authorized_keys file:`の下にある`ecdsaを含めた文字列すべて`を利用しますのでコピーしておきます。
`import sshd authorized-keys`と入力し、先ほどコピーした文字列をコンソールに貼り付けます
![WS000015.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/9f638578-73a3-41e7-6701-aa0890abb469.jpeg)
![WS000016.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/4596b390-27bc-06df-0eb1-07a19018b451.jpeg)
公開鍵のインポートを促されますので、Yを入力し、適用後、ConfigをSaveします。これでRTXでの作業は終了です。
![WS000020.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/d61425a1-2f05-9a9e-210d-ce03aa293621.jpeg)
## PuTTYでSSH接続の設定をする
Host Name欄に、ルーターのIPアドレスを入力し、SSHにチェックを入れる
![WS000022.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/64132505-2e53-9e7d-d9c8-e19d36681ed3.jpeg)
先程保存しておいた秘密鍵をAuth→ Authentication parameters→　Private key file for authentication:のBrowseをおして選択する。
![WS000026.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/61bc3402-e1b7-3976-5c4a-c1ace264b619.jpeg)
任意の名前をSaved Sessionsに入力しSaveで保存したあとOpenを押す。
![WS000022.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/64132505-2e53-9e7d-d9c8-e19d36681ed3.jpeg)
設定が正しければ、下記の画面がでてきますので、login asは空欄、Passphraseには、公開鍵、秘密鍵を作ったときに入力したPassphraseを入力するとログインすることが出来ます。
![WS000024.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/a28f333c-25ce-6830-46af-9b2a12fce2e0.jpeg)
![WS000023.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/06b2a14e-409a-eb8d-7e31-a27be0d1e773.jpeg)
以上で終了です。

なお、このSSHの設定に問題がなく、今後TELNETを使わないのであればTELNETサーバー機能を停止することをおすすめします。
コマンドは`telnetd service off`です。

※　参考にしたサイト

http://www.rtpro.yamaha.co.jp/RT/docs/sshd/