TinyCAで独自の認証局を作成する

公衆がアクセスできるサーバーを実行している場合は、認証局(CA)の重要性を知っています。これらの証明書は、サイトが実際に主張しているとおりであり、データを取得したり、疑わしいユーザーのマシンに小さなペイロードをドロップしたりするのを待っているサイトのなりすましバージョンではないことを、ユーザーに少し保証します。

CAの問題は、特に無料のサービスを実行している管理者や、CAを購入する予算のない中小企業でさえ、少し高くつく可能性があることです。幸い、CAの費用を払う必要はありません。これは、使いやすいアプリケーションと呼ばれるアプリケーションを使用して、Linuxマシンで無料で作成できるためです。 TinyCA

特徴

  • 必要な数のCAとサブCAを作成します。
  • x509 S / MIME証明書の作成と取り消し。
  • PKCS#10リクエストをインポートして署名できます。
  • サーバーCAとクライアントCAの両方を複数の形式でエクスポートできます。

TinyCAはopensslの使いやすいフロントエンドとして機能するため、CAを作成および管理するために必要なすべてのコマンドを発行する必要はありません。

TinyCAのインストール

ディストリビューションのリポジトリにTinyCAはありません。必要なリポジトリを /etc/apt/sources.list ファイルまたはメインページにあるバイナリの1つからインストールできます。インストールの例としてUbuntuとDebianを使用してみましょう。

apt-getを使用してインストールする場合は、最初にリポジトリファイルをsources.listファイルに追加する必要があります。だから開いて /etc/apt/sources.list お気に入りのエディターでファイルを作成し、次の行を追加します。
deb http://ftp.de.debian.org/debian sid main

注:「sid」を使用しているバージョンに置き換えます。 Ubuntu 9.04を使用している場合、上記の例は機能します。

次のコマンドを実行します。

sudo apt-get update

apt-getがgpgキーの欠如について文句を言うことに気づくでしょう。コマンドラインを使用してインストールするため、これで問題ありません。次のコマンドを発行します。

sudo apt-get install tinyca

これで文句なしにTinyCAがインストールされます。一部の依存関係のインストールを許可する必要がある場合があります。

TinyCAの使用

Figure 1
図1

TinyCAを実行するには、次のコマンドを発行します tinyca2 メインウィンドウが開きます。最初の実行時に、[Create CA]ウィンドウが表示されます(図1を参照)。 CAがすでにある場合、このウィンドウは自動的には開きません。このウィンドウでは、新しいCAを作成します。

Figure 2
図2

入力する必要のある情報は、かなり明確で、ニーズに固有のものでなければなりません。情報を入力したら、[OK]をクリックして新しいウィンドウを開きます(図2を参照)。この新しいウィンドウには、証明書の作成中にSSLに渡される構成が含まれます。最初のウィンドウと同様に、これらの構成はニーズに固有のものになります。

この情報を入力したら、[OK]ボタンをクリックすると、CAが作成されます。マシンの速度によっては、プロセスに少し時間がかかる場合があります。ほとんどの場合、プロセスは30〜60秒以内に完了します。

CAの管理

Figure 3
図3

CAが完了すると、管理ウィンドウに戻ります(図3を参照)。このウィンドウでは、メインCAのサブCAを作成したり、CAをインポートしたり、CAを開いたり、新しいCAを作成したり、(最も重要な)CAをエクスポートしたりできます。図3では[エクスポート]ボタンは表示されていませんが、ウィンドウの右上部分にある下向き矢印をクリックすると、別のボタンが表示され、クリックしてCAをエクスポートできます。

もちろん、これでルート証明書が作成されました。この証明書は次の場合にのみ使用されます。

  • 新しいサブCAを作成:
  • サブCAを取り消す:s
  • サブCAの更新:s
  • ルートCA:証明書をエクスポートする

上記以外の場合は、SubCAを作成します。次の記事では、実際にWebサイトで使用できるSubCAの作成について説明します。

最終的な考え

TinyCAは、認証局の作成と管理から多くの作業を取り除きます。複数のWebサイトまたはサーバーを管理するユーザーにとって、このツールは必ず必要です。