目次
- 1.SSH接続とは
- 2.SSHの認証方式
- 3.SSHクライアントソフト
- 4.サーバにSSHで公開鍵認証方式によりログイン
- 4.1 実行環境
- 4.2 サーバにユーザ・パスワードでログインする
- 4.3 公開鍵と秘密鍵を作成する
- 4.4 作成されたキー、ディレクトリのパーミッション
- 4.5 公開鍵ファイルのリネーム
- 4.6 秘密鍵をPCへ転送する
- 4.7 Teratermでサーバに接続
- 4.8 Windows10のコマンドプロンプトからサーバに接続
1.SSH接続とは
SSH(Secure Shell)は遠隔でコンピューター機器を操作するときに通信データを暗号化するプロトコルである。また、通信データを暗号化する意味では同じあるSSL(Secure Socket Layer)はインターネット上での端末とサーバ間の通信データを暗号化するプロトコルである。
SSHでは認証方式として、公開鍵認証方式(「公開鍵」と「秘密鍵」を照合して認証する方法)が使われ、SSLではサーバ証明書、又はクライアント証明書による認証方法が使われ、用途が異なる。ここではSSH接続について扱う。
2.SSHの認証方式
(1)公開鍵認証方式
秘密鍵(データに電子署名を行うもの)と公開鍵(電子署名されたデータが正しいか検証できるもの)の2つの鍵(キーペア)を使って認証する方法である。秘密鍵を持っている人(パソコン)からのみログインを許可することができる。
(2)パスワード認証方式
サーバ側にユーザー名とパスワードのアカウント情報を設定しておき、パソコンから一致するパスワードが入力されたときログインできるようするもの。
3.SSHクライアントソフト
・OpenSSH
OpenSSH (OpenBSD Secure Shell) とは、SSHプロトコルを利用するためのソフトウェアで、SSHサーバおよびSSHクライアントの両方の機能を含む。OpenBSDプロジェクトにより開発が行われ、BSDライセンスで公開されている。
https://www.openssh.com/
・Putty
Simon TathamがMIT Licenceで開発·公開しているリモートログオンクライアント。
対応している通信プロトコルはSSH、Telnetやrloginなどがある。また、PuTTYを複数起動して複数の端末に同時に接続することができる。
・Teraterm
Tera Termは、Windowsプラットフォームで動作するリモートログオンクライアント。
対応している通信プロトコルはSSH、Telnet、シリアルなどある。
4.サーバにSSHで公開鍵認証方式によりログイン
4.1 実行環境
・Windows10にVirtualBoxの仮想マシンがインストールされている
・仮想マシンのOSはCentOS8
4.2 サーバにユーザ・パスワードでログインする
4.3 公開鍵と秘密鍵を作成する
$ ssh-keygen -t rsa
入力は全て、空欄としてEnter
4.4 作成されたキー、ディレクトリのパーミッション
4.5 公開鍵ファイルのリネーム
公開鍵のファイル名はsshd_configファイルでデフォルトで「authorized_keys」となっているため、公開鍵ファイル名をこれに合わせる。
(設定ファイル:/etc/ssh/sshd_config)
# mv id_rsa.pub authorized_keys
4.6 秘密鍵をPCへ転送する
ファイル>「SSH SCP…」を選択
From:作成された秘密鍵ファイルを指定
To:PCの転送先ディレクトリを指定
「Receive」をクリックすると転送開始
4.7 Teratermでサーバに接続
4.6項の転送先ディレクトリの秘密鍵を指定して「OK」をクリックする。
4.8 Windows10のコマンドプロンプトからサーバに接続
>ssh (user name)@127.0.0.1 -p 2222
The end