スマートカードのSSH認証を設定するにはどうすればよいですか?


9

認証方法としてGemalto .NETスマートカードを使用してマシンにSSH接続できるようにしたいのですが。これは、Fedora 13(または一般的なRed Hatスタイル)マシンでどのように実行できますか?

これらは私が必要だと思う大まかなステップです:

  1. スマートカードの証明書をプロビジョニングします(発行するCAも可能ですか?)
  2. スマートカードに証明書を取得する
  3. スマートカード認証を許可するようにSSHサーバーを構成し、特定の証明書/ CAを使用するように構成します
  4. スマートカードをサポートするSSHクライアント(無料のWindowsベースのクライアントの追加ポイント)

回答:


2

Gemaltoドライバーは今ではオープンソースだと思います。彼らは彼らのウェブサイトにソースコードを持っています。

pamモジュールを構成する必要があります(これを行う方法はわかりませんが、コードは確かにそこにあります)。このpam構成では、証明書の原則をローカルユーザーIDにマッピングする必要があると思います。

現在、GDMはスマートカードをサポートしていると思いますが、それがどのように検出されるかはわかりません。私はこれを後で調べようとします(おそらく最も簡単な方法は、gdmソースコードをのぞくだけです)。

もちろん、これはすべての必要とpcscdしてlibpcscliteインストールします。また、コピーする必要がありますlibgtop11dotnet.so/usr/lib


ありがとう!それで私は正しい軌道に乗った。RedHatベースのセットアップを見ている人にとって、本当に役立つ情報もいくつかあります:centos.org/docs/5/html/Deployment_Guide-en-US/sso-ov.html
Geoff Childs

libgtop11dotnet.soファイルはどこにありますか?
user568021

2

ケルベロスをお勧めします。MITはkrb5クライアントとサーバーを生成します。

vwduder、スマートカードリーダーとFIPS-201準拠のカードのソースを推奨できますか?

http://csrc.nist.gov/publications/fips/fips201-1/FIPS-201-1-chng1.pdf

私は自分のサーバーにコピーを持っていますが、現時点ではこのスタックトレースであなたと共有するほど人気が​​ありません。上記は私たちのサーバーよりも少しだけ信頼性が低いので、おそらくあなたはそれらからそれを得ることができるでしょう;)

[編集]私は今十分に人気があります!

http://www.colliertech.org/state/FIPS-201-1-chng1.pdf


@vwduderは返信しようとしましたが、彼はまだクローズドベータ版の一部ではありません
cjac



ありがとうcjac!vwduderの貢献と合わせて、私はこれをなめたと思います。
Geoff Childs、2010

涼しい!考えているうちにもう一度。私の父はこれらを見つけた功績を認められました。 smartcardworld.com
cjac

1

RSAキーを使用する場合、1)と2)は簡単です。これは、3)でわかるように、実際の証明書はこのコンテキストでは無関係であるためです。cacert.orgにアクセスするか、自己署名証明書を生成すれば、準備は完了です。

3)の場合は、公開鍵を抽出して$ HOME / .ssh / authorized_keysにインストールする必要があります。ファイルの所有権と権限に注意してください!(.sshの場合は700、authorized_keysの場合は600)。ホスト全体の公開鍵認証は推奨されていませんが、探究心の練習として残されています。

4)については、PuTTY SC(http://www.joebar.ch/puttysc/)または-preferably- PuTTY-CAC(http://www.risacher.org/putty-cac/)を調べる必要があります。より優れた公開鍵抽出アルゴリズムを備えたPuTTY SC、およびPuTTYの開発ブランチからのKerberos-GSSAPIサポートも含まれています。


0

PuttySCとSecureCRTを使用してLinuxサーバーでスマートカードを使用する方法を示すビデオを作成しました。あなたはそれをここで見ることができます:あなたのスマートカードでSSHする方法

カードに証明書をプロビジョニングする方法については説明しませんが、その場合は、カードの管理キーをカード管理システムを使用して変更する必要があることに注意してください。この部分について心配する必要がないように、会社がスマートカードを提供すれば、はるかに簡単になります。

カードをプロビジョニングしたら、公開鍵を抽出して、〜/ .sshd / authorized_keyに追加する必要があります。

サーバーに接続するには、PuttySCやSecureCRTなどのツールを使用できます。カードのPSKC#11ライブラリを取得する必要があります(スマートカードの製造元またはオープンソースバージョンのいずれかから)。ライブラリを使用してSSHツールを構成します。ライブラリを読み取って証明書を見つけることができるはずです。

認証すると、ツールはスマートカードのPINを要求します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.