web-dev-qa-db-ja.com

FHSに準拠するには、SSHキーファイルをどこに保存する必要がありますか?

http://www.pathname.com/fhs/pub/fhs-2.3.html でFHS仕様を読んで、(プライベート)SSHキーファイルを保存する場所を見つけました。私が現在取り組んでいるVPS管理パネルに使用されます。このキーファイルは、マスターサーバー(配置されているサーバー)でのみ使用可能であり、SSHを介したlibvirt通信のトンネリングに使用されます。

私の理解では、これはキーファイルが静的でホスト固有であるため、/etcのサブディレクトリに保存する必要があることを意味します。これは正しいです?

4
Sven Slootweg

私が使用しているシステムは、証明書に/etc/ssl/certsを使用し、キーに/etc/ssl/privateを使用しています。 /etc/ssl/privateディレクトリの保護は710です。ルートはディレクトリを所有し、グループは名前を知っている場合にのみキーにアクセスできます。グループと権限を注意深く使用すると、root以外のユーザーがキーにきめ細かくアクセスできるようになります。

編集:@UtahJarheadが指摘したように、SSHはSSL(TLS)ではありません。 SSHは通常、ツールによって配置されるため、キーの配置に関して問題はありません。どちらの方法も、アクセスを保護するために使用できます。 SSL/TLSは、上記のように保存されたCA(Certficate Authority)署名付き証明書を使用します。

SSHは署名されていない証明書を使用します。サーバー(ホスト)のキーは/ etc/sshに保存され、キーには600のアクセス許可があり、ルート読み取りアクセスのみが許可されます。これらは、デーモンのインストール時に生成およびインストールされます。クライアント/ユーザーキーは〜/ ssh(別名$ HOME/ssh)に保存され、すべての標準ツールがそれに応じて配置します。パスワードなしでアクセスするために公開鍵がコピーされると、ターゲットシステムのターゲットユーザーの〜/ sshにも保存されます。

1
BillThor

[〜#〜] imho [〜#〜]

/etcキーの場所を教えてくれます。

/usr/local または /varツリーがより良いアプローチかもしれませんまたは~/.ssh対応するユーザー。

1
Tabakhase

秘密のsshキーはホスト固有ではない場合があります。単一のsshキーペアを使用して、ユーザーを無制限の数のホストに接続できます。 sshキーは、ログインごとに参照できる必要があります。 sshd_configには、秘密鍵が保存される場所を設定するAuthorizedKeysFileがあります。 /etcに保持することに関心がある場合、これは実行可能ですが、FHSガイドラインによる「ホスト固有のシステム構成」ではありません。 /home/${USER}/.ssh/authorized_keysのデフォルトの場所に最適であるように見えます。これは、各ユーザーに固有である必要があるためです。

1
UtahJarhead