Ubuntu(18.04)にTera TermからSSH接続する方法

#初めに
今回はUbuntuにTera TermからSSH接続する方法をまとめました。
パスワード認証、鍵認証の2パターン試しています。
では、始めます。



#環境、ツール
■OS
Ubuntu（18.04）
■仮想マシーン
VirtualBox
■SSH接続する端末
Tera Term

#VirtualBoxのネットワークアダプターを変更
今回は、VirtualBoxを用いてUbuntuをゲストOSとして起動させています。
VirtualBoxのデフォルト設定では、ネットワークの割り当てがNATになっています。
NATのままでは、外部からアクセスできないため、割り当てをブリッジアダプターに変更します。
![SnapCrab_Ubunts18 - 設定_2021-4-5_13-46-0_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1229062/b711ecb3-9c08-2cdc-25cc-e0d9c70f1d51.png)


パスワード認証、鍵認証の２つともブリッジアダプターで作業を行うので、先に設定を済ませておきます。

# SSH接続(パスワード認証)

次に、openssh-serverをインストールします。
Ubuntu18.04の初期設定ではSSHのサーバーパッケージがインストールされていません。
そのため、apt(パッケージ管理ツール)を使用してインストールします。

```
$ sudo apt install openssh-server
```

openssh-serverがインストール出来たらパスワード認証を可能にします。
sshd_configのPasswordAuthenticationをyesに変更します。

```:/etc/ssh/sshd_config
$ vi sshd_config

# To disable tunneled clear text passwords, change to no here!
PasswordAuthentication yes 　　・・・yesのコメントアウトを外します
#PermitEmptyPasswords no
```

これで、Tera Termからパスワード認証でSSH接続出るようになりました。

# SSH接続（鍵認証)

鍵認証では下記サイトを参照させていただいております。
併せてご確認いただけると分かりやすいと思います。

https://webkaru.net/linux/tera-term-ssh-login-public-key/
https://deep-blog.jp/engineer/15248/

鍵認証では、初めに秘密鍵と公開鍵を生成します。
Tera Term上部バーの「設定」から「SSH鍵生成」をクリックして以下の画面に移動します。
![SnapCrab_NoName_2021-4-2_12-53-58_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1229062/b25fb437-92fc-11d7-6304-1999e3a3748c.png)

次に、そのまま生成をクリックし、公開鍵と秘密鍵を任意の場所に保存します。
「鍵のパスフレーズ」は、実際にSSH接続する際に必要になるので、メモを取っておきましょう。
[id_rsa]が秘密鍵、[id_rsa.pub]が公開鍵になります。
また、秘密鍵と公開鍵はセットで使用します。
もしセットでない別の鍵同士だと接続が出来ないので注意が必要です。
![SnapCrab_NoName_2021-4-2_11-42-19_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1229062/71b28afd-8e96-464b-82d4-788df51175ff.png)

次に、Tera Term上部の「ファイル」の中のSSH SCPをクリックします。
すると下記の画像が表示されますので、「From」に公開鍵を添付して送付します。

![SnapCrab_NoName_2021-4-2_13-4-28_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1229062/e97f6c73-0f99-db7f-7001-52b3d30567b8.png)

公開鍵を送付したら「home/ユーザー名」ディレクトリの直下に公開鍵が配置されます。
先ほど設定したパスワード認証でSSH接続をして確認します。

```:/home/ユーザー名
$ ls -l | grep id
-rw-r--r-- 1 ubuntu-practice ubuntu-practice  406  4月  2 12:04 id_rsa.pub
```

配置されたら.sshディレクトリを作成します。

```:/home/ユーザー名
$ mkdir .ssh
$ mv rsa.pub authorized_keys
$ mv rsa.pub .ssh
```

ちなみに、.sshディレクトリとauthorized_keysという名前でないと接続ができませんでした。（.testなど名前を変えても接続に失敗しました。）
必ず.sshの配下にauthorized_keys（公開鍵）を入れる必要があるようです。

また、.sshディレクトリのパーミッションに実行権限(x)がないとSSH接続ができません。
デフォルトでは下記のように実行権限が付与されていました。
もし、接続できない場合はパーミッションの確認が必要です。

```:/home/ユーザー名/.ssh
# cd /home/USER/.ssh
# ls -la
drwxrwxr-x  2 ubunts-practice ubunts-practice 4096  4月  2 12:49 .
drwxr-xr-x 22 ubunts-practice ubunts-practice 4096  4月  5 19:47 ..
-rw-r--r--  1 ubunts-practice ubunts-practice  406  4月  2 12:04 authorized_keys
```

「.」はカレントディレクトリのことなので、今回確認したい「.shh」ディレクトリになります。


最後にTera Termから秘密鍵を利用して接続します。
認証方式は秘密鍵をクリックします。

![SnapCrab_NoName_2021-4-2_13-11-55_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1229062/a79aacac-2648-479e-9107-7e0b92335d57.png)

これで、無事にSSH接続されています。

#Tera Term Menuの活用

毎回ログインする際に、ユーザー名やパスフレーズを入用するのは面倒なので、Tera Term Menuを使用します。

Tera Term Menuは、ユーザー名等のログインに必要な情報を登録すればワンクリックでSSH接続することができます。

Tera Termのインストール時にインストールするかどうか聞かれるので、インストールして活用しましょう。
今回は、鍵認証でのログインを行います。
パスワードには鍵を生成した時に入力した「鍵のパスフレーズ」を設定します。

使用方法は、下記画像のように
・登録名（ご自身で分かるような名前）
・ホスト名（接続先のIPアドレス）
・パスワード（鍵を生成した際に生成した「鍵のパスフレーズ」）
・鍵ファイル（先ほど生成した秘密鍵）

上記４つを設定して、真ん中にある、左矢印ボタンの「Regist」を押すと登録することができます。
左矢印ボタンにマウスをホバーすると「Regist」がでてきます。
![SnapCrab_リスト編集_2021-4-6_10-2-31_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1229062/617c26da-3d5d-50f1-9b1f-d989ea439145.png)

登録が完了すると、下記画像のように先ほど登録したリストをクリックするとSSH接続できるようになります。

![SnapCrab_NoName_2021-4-5_16-15-6_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1229062/3f927d46-bedd-fcca-317f-a5a7c75737d0.png)




以上になります。
ありがとうございました。