SSH(Secure Shell)は、暗号や認証の技術を利用して、
リモートコンピュータと通信するためのプロトコル。
公開鍵認証方式
公開鍵認証方式でログインするには鍵が2つ必要。
クライアント側に置く秘密鍵ファイルと、サーバー側に置く公開鍵ファイル。
パスフレーズは秘密鍵にアクセスするための秘密の文字列。
公開鍵と秘密鍵(RSA)の生成
パスフレーズによるセキュリティ設定は行わない。
公開鍵・秘密鍵ペアでセキュリティの設定を行います。
Teraterm
ターミナルエミュレーターです。

「設定(S)」「SSH鍵生成(N)…」と進んで、
鍵の種類は「RSA」を選んで①「作成」ボタンをクリック。

・パスフレーズは、空白。
・「公開鍵の保存(I)」、「秘密鍵の保存(P)」ボタンを
クリックして鍵を保存します。

「秘密鍵の保存(P)」を警告が出るが、「はい」をクリック。

秘密鍵(ppk)の生成
WinSCP
SSH対応のFTPクライアントです。



WinSCPではppk形式の秘密鍵を使用します。
Teratermで作成したRSA秘密鍵をPPKに変換します。
「ログイン」ダイアログ左下にある「ツール」をクリックして
「PuTTYgenを実行(G)」をクリック。
①「Load」をクリックしてRSA秘密鍵を読込み、
②「Save private key」をクリックして変換した
ppk形式の秘密鍵を保存します。
Rocky Linux
ユーザ「rockylinux」は実際の運用に合わせて変更。
wheelグループに対するsudo設定の有効化
ユーザ「rockylinux」を、グループ wheelに追加します。
# usermod -aG wheel rockylinux
ファイアウォールのポート開ける
# firewall-cmd --permanent --add-service=ssh
# firewall-cmd --reload
公開鍵を登録する
Teratermを使って作業用一般ユーザでログインします。
そして、公開鍵(id_rsa.pub)をTeratermの
まっ黒ウインドウにドラッグ&ドロップします。

「ファイル転送を行いますか?」ダイアログが出てくるので
「OK」ボタンをクリックして、ファイルを転送します。
$ mkdir .ssh
$ chmod 700 .ssh
$ mv id_rsa.pub .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys
sshd設定ファイルの修正
以降の操作を行うと、
通常のログインが出来なくなります。
# nano /etc/ssh/sshd_config
#PermitRootLogin prohibit-password
PermitRootLogin no # 許可しない
#PasswordAuthentication yes
PasswordAuthentication no # パスワード認証しない
sshd 再起動
# reboot
動作確認!
Visual Studio Code (Remote Development)
Visual Studio Codeから、SSH接続します。
自分のホームディレクトリ/.sshに秘密鍵ファイルを入れておく。
インストール、設定




Host localserver.local
HostName localserver.local
User ログインユーザ名
接続


WinSCP
ホスト名のサーバにログインするには、
ポート番号、ユーザ名、パスワード(パスフレーズ)、
秘密鍵が必要になります。


Teraterm
2022/11/13
Rocky Linux 9のOpenSSLですけど、3系がデフォルトになっています。
セキュリティが強化されていますけど、従来のSSHツールでログインできない場合があります。TeraTermは、現状、私の環境ではダメ。
昔に帰ることになるので、sshd_configを触る対策はやめておきます。
ホスト名のサーバにログインするには、
ポート番号、ユーザ名、(パスフレーズ)、
秘密鍵が必要になります。



設定(D)…をクリック
