1.bash-completion
調べてると、これがあるとそこそこ便利そうなので、入れてみる。 systemctl コマンドを使う際に、サービスの名前をTABで補完できるようになるらしい。
$ sudo yum -y install bash-completion
2.SSH関連の設定
2.1. root の直ログイン、空パスワードの禁止
$ sudo vi /etc/ssh/sshd_config ---- #PermitRootLogin yes ↓ PermitRootLogin no # コメント解除し、no に変更。 #PermitEmptyPasswords no ↓ PermitEmptyPasswords no # コメント解除。 ----
2.2.鍵ペアを使った認証に変更
2.2.1.クライアント側での鍵ペア生成(TeraTerm使用)
- 『設定』 > 「SSH鍵生成(N)…」 のメニューを選択。
- 「TTSSH: 鍵生成」ダイアログボックスで、『鍵の種類』を選択し、『生成』ボタン押下
- パスフレーズを入力
- 『公開鍵の保存』ボタン押下
- 『秘密鍵の保存』ボタン押下
画像は以前作ったときのもの。なぜか、種類を「ECDSA-521」にしていたが、今回はRSAを選びました。
2.2.2.公開鍵ファイルをサーバーにアップ
- 『ファイル』 > 「SSH SCP」メニューを選択
- 「TTSSH: Secure File Copy」ダイアログボックスで、保存した公開鍵ファイルをサーバーにアップ
$ mkdir .ssh && cat id_rsa.pub >> .ssh/authorized_keys
サーバー側で左記コマンドを実行し公開鍵情報を転記。
2.2.3.サーバー側での設定変更
$ sudo vi /etc/ssh/sshd_config ---- PasswordAuthentication yes ↓ PasswordAuthentication no PubkeyAuthentication yes # コメント解除 ---- $ chmod 700 .ssh $ chmod 600 .ssh/authorized_keys $ sudo systemctl restart sshd
これが出来たら、Teratermから接続確認。
- 『ファイル』 > 「新しい接続」 でTeratermの新規ターミナルを開く
- 「SSH認証」ダイアログボックスでユーザー名、パスワード、「プレインパスワードを使う」にチェックを入れて、「OK」ボタンを押下し、ログイン出来ないことを確認する。
- 『ファイル』 > 「新しい接続」 でTeratermの新規ターミナルを開く
- 「SSH認証」ダイアログボックスでユーザー名、秘密鍵生成時のパスフレーズを入力、「RSA/DSA/ECDSA/ED25519鍵を使う」にチェックを入れて、保存済みの秘密鍵ファイルを指定し、「OK」ボタン押下。
最初、.sshフォルダ等のパーミッションの設定を変えてない時に、認証が通らなかったのだが、パーミッションを変えるとうまく行った。一瞬、 SELinux を疑ったが、 SELinux は無実でした。 SELinux 様疑ってゴメンナサイ。
2.2.4.FileZillaに鍵ファイルの登録
- 「編集」>「設定」>「接続」>「SFTP」>「鍵ファイルの追加」
- 2.2.2の手順で作っていたファイルを選択して追加する。TeraTermで作ったRSA秘密鍵はそのままFilezillaでは使えないという情報もあったが、特に変換されることもなく、そのまま使えた。
- 「ファイル」>「サイトマネージャー」から新しいサイトを作成し、ユーザー名にCentOS側のユーザー名、鍵ファイルに上記で追加したファイルを選択し、接続。
タグ:
#SSH