ssh用のRSAキーを使うときの基本的な設定

ssh用のRSAキーを使用して、TeraTerm などの sshクライアントからログインするようにする際の基本的な設定をまとめておきます。

設定ファイルは、/etc/ssh/sshd_config です。

基本的な設定箇所は下表の通りです。

設定パラメータ デフォルト値 設定変更値 考え方 Port 22 使用可能な(予約されていない)任意のポート番号 22は知られているので、攻撃を受けやすい。変更することが賢明です。 ListenAddress 無指定 指定 受け付けるIPアドレスを限定した方がいいでしょう。 AuthorizedKeysFile .ssh/authorized_keys 任意 公開キーのファイル名です。ファイル名をデフォルトの設定に合わせればいいと思います。もちろん、変更しても問題はありません。 PasswordAuthentication yes no パスワードログインの許可/不許可の設定です。RSAキーでのログインしかできなくしておくのが、より良いと考えます。

パスワードログイン許可/不許可設定だけは、RSAキーでのログインが確実に行えることを確認してからにしてください。特にVPSなどのクラウド環境を使用している場合には注意が必要です。

ssh用のRSAキーの作成方法

ssh用のRSAキーを作成する方法をまとめておきます。

ここでは、あえてアクセス先のサーバ上で作成する方法を紹介しますが、本来は、ssh クライアント側で作成するのが最善です。 ※サーバ上で作成すると、秘密鍵の移動が発生しますので、そこで漏洩などということも考えられるわけです。

CentOS 上でのRSAキーの作成は下記のようにします。

[root ~]# cd /root/.ssh [root ~]# ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): ←そのままENTER Enter passphrase (empty for no passphrase): ←そのままENTER Enter same passphrase again: ←そのままENTER Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved 続きを読む »

無料のSSLサーバ証明書発行サイト

SSLサーバ証明書というと、どうしてもベリサインなどの有料のものを考えてしまいがちですが、無料でサーバ証明書を発行してくれるサイトもあります。 そんな中の典型的なサイトが、

『CAcert』

だと思います。

CAcertを利用して、サーバ証明書を取得する手順を紹介しますが、注意点があります。

★証明する対象のフルドメイン(例えば、www.goofoo.jp)の有効な管理者Eメールアドレスが必要になります。手順の最後に下記の中から選択するように言われます。

root@www.goofoo.jp hostmaster@www.goofoo.jp postmaster@www.goofoo.jp admin@www.goofoo.jp webmaster@www.goofoo.jp

さて、それでは実際の手順に行きます。

1.参加(Join)

まずTOPページ右サイドバー上部にある「参加」(英語表記では「Join」)をクリックして、”本人登録”を行う必要があります。 姓名はローマ字にした方が文字化けしなくて済みます。 ここで、メールアドレスには自分が通常利用するEメールアドレスを入力してください。CAcertから登録や変更の通知メールが届きます。証明対象の管理者Eメールアドレスでする必要はないようです。単にログインIDとしてのものです。

2.ログイン

TOPページ右サイドバーの「パスワードログイン」から入って、”本人登録”したメールアドレスとパスフレーズを指定してログインします。

3.サーバ証明書の新規作成

ログイン後のページの右サイドバーで[サーバ証明書]→[新規作成]をクリックします。

4.CSR内容入力

表示された画面の下部の大きなテキストボックスに、CSR(作成については別記事を参照)の内容をコピー&ペーストします。

5.新規作成実行

[送信]ボタンをクリックします。

6.管理者Eメールアドレス選択

管理者のメールアドレスを”選べ”という画面に移ります。 これが、先ほどの注意事項に記述したドメイン管理者Eメールアドレスです。

7.サーバ証明書コピー

管理者Eメールアドレスの有効性が確認されると、サーバ証明書の内容が画面に表示されます。それをコピーして、server.crt などのファイルにペーストして保存すれば完了です。

※ちなみに、『CAcert』はFirefoxでは通常は文字化けすると思いますので、文字エンコーディングをEUC-JPに設定してみてください。また、IE8では日本語表示ができず、英語にしかならないようです。

SSLサーバ証明書取得のための秘密鍵作成とCSR作成

Webサーバを立ち上げると、どうしてもセキュア化を意識します。 そこで、SSLサーバ証明書による通信の暗号化を行う場合のサーバ証明書取得までの流れのうち、CSRの作成までをまとめておきたいと思います。

ちなみに、下記2点を前提で話を進めます。

opensslがインストールされていること 管理者のEメールアドレスが有効であること(CSRの作成までは有効でなくても問題ありませんが、実際にサーバ証明書取得申請時には有効であることが必要になります)

【CSRを作成するまでの流れ】

1.作業ディレクトリに移動 [root ~]# cd /etc/pki [root ~]# mkdir server [root ~]# cd /etc/pki/server 2.秘密鍵の作成 [root ~]# openssl genrsa -out server.key -des3 2048 Generating RSA private key, 2048 bit long modulus ……………………………………………………………………………+++ ……………………………………………………………………………+++ e is 65537 (0x10001) Enter pass phrase for server.key: ←パスフレーズを入力 Verifying – Enter pass phrase for server.key: 続きを読む »

lokkitが入ってないのでインストール

ServersMan@VPSには、lokkit がインストールされていませんので、iptables および ip6tables の設定のために、lokkit をインストールして、設定まで行いたいと思います。

1.yumでパッケージ検索 [root ~]# yum provides */lokkit ←これで検索 Loaded plugins: downloadonly, fastestmirror Repository ‘vz-base’ is missing name in configuration, using id Repository ‘vz-updates’ is missing name in configuration, using id Loading mirror speeds from cached hostfile * addons: www.ftp.ne.jp * base: www.ftp.ne.jp * extras: www.ftp.ne.jp * updates: www.ftp.ne.jp system-config-securitylevel-tui-1.6.29.1-5.el5.i386 : 続きを読む »