SSHの公開鍵をログイン用としてLinuxサーバーに設定する手順を紹介します。
手順
RSAキーペアの作成
認証に用いるSSHのキーペアをさ作成します。Windows では"PuTTYgen"というソフトウェアを利用して作成できます。
PuTTYのインストール手順は
こちらの記事を参照してください。
標準インストールでPuTTYをインストールするとPuTTYgenもインストールされます。
PuTTYgenでのキーペアの作成手順は
こちらの記事を参照してください。
公開鍵をLinuxサーバーにアップロード
作成したキーペアファイルのうち公開鍵をLinuxサーバーにアップロードします。
最近のLinuxはSSHがデフォルトでインストールされていることが多いため、sshdを起動し、SCPまたはSFTPでファイルをアップロードするのが簡単です。
Windowsからは"WinSCP"というソフトウェアを利用するとSCP,SFTPでのファイル転送ができます。
WinSCPのインストール手順は
こちらの記事を参照してください。
WinSCPでのLinuxサーバーへの接続手順は
こちらの記事を参照してください。
公開鍵の変換
PuTTYgenで作成した公開鍵はそのままでは、OpenSSHの公開鍵としては使えません。ssh-keygen コマンドを実行して公開鍵を変換します。以下のコマンドを実行します。
ssh-keygen -i -f (PuTTYgenで生成した公開鍵) > (変換先ファイル名)
例
ssh-keygen -i -f mykey.pub > mykey-os.pub
.sshディレクトリの確認と作成
ここからは、Linuxサーバー側の端末で作業します。
SSHで接続するユーザーに切り替えます。rootアカウントを持っていない場合はSSHで接続するユーザーでLinuxにログインします。
SSHで接続するユーザーのホームディレクトリで下記のコマンドを実行します。
ファイル一覧が表示されますので ".ssh"ディレクトリが存在するか確認します。
ディレクトリがなければ
コマンドを実行しディレクトリを作成します。
公開鍵の取り込み
OpenSSH形式の公開鍵をauthorized_keysファイルに追記します。
下記のコマンドを実行するか、geditやvi,emacsなどでコピーペーストします。
cat (OepnSSH形式の公開鍵ファイル名) >> (.sshディレクトリ内のauthorized_keysファイルのパス)
例
cat mykey-ssh.pub >> .ssh/authorized_keys
または
cat /home/penguin/mykey-ssh.pub >> /home/penguin/.ssh/authorized_keys
動作確認
動作確認をします。
PuTTYでキーペアを使った接続で確認する
こちらのページの"RSAキーペアを用いた認証で接続する場合"の接続手順で接続ができるかを確認します。
WinSCPでキーペアを使った接続で確認する
こちらのページの"接続手順 (RSA公開鍵認証を用いる場合)"の接続手順で接続ができるかを確認します。
著者
かつて日本を代表したスーパーエンジニア (自称)
ハードウェア、電気設備、ガーデニング関係の記事を担当。
最終更新日: 2024-01-24
作成日: 2013-02-08