小規模なチーム用の開発ツールをインストールしようとしていますが、認証を正しく取得できません。
私たちは分散型チームなので、サーバーはインターネット上にあります。また、SSO + zeroクライアント構成が必要です。
つまり、基本的にhttps + webdavを介したgitは実用的ではありません。gitクライアントは基本認証しか使用できず、パスワードを保存せず、一部のIDEプラグインはパスワードの質問をUIに転送しません。 。
私はsshではなくgitを使用する必要があります。私はgitosisをインストールしましたが、基本的に非対称キーで動作します。私は各開発者に彼らのキーをインストールするように頼む必要があります、私はそれをすることができます、ゼロ設定を忘れます。
次に、開発者にhttps上のWebツール(Wiki、チケットなど)にアクセスしてもらいたいのですが、SSH間で形式が互換性がないため、今回はログイン/パスワードまたは別の秘密鍵を指定する必要がありますそしてSSLとそれをOSに保存する場所は同じではありません。さて、私はSSOを忘れなければなりませんか?
私は間違っていますか?
TL; DRサマリー: SSL/X.509証明書+キーがある場合は、秘密キーファイルをssh
に指定します。 Or、id_rsa
にSSHキーが既にある場合は、CSRに署名するときにOpenSSLで使用するだけです。 それだけです
joeuser.pem
にユーザーのSSL証明書があり、joeuser.key
にその秘密鍵があるとします。
X.509は標準のRSA鍵を使用し、SSHも使用するため、SSHクライアントにjoeuser.key
を使用するように指示できるはずです。唯一の要件は、それが理解可能な形式であることです。
joeuser.key
の内部を見て、次のようになっているかどうかを確認します。
----- BEGIN RSA PRIVATE KEY ----- MGECAQACEQCxQaFwijLYlXTOlwqnSW9PAgMBAAECEETwgqpzhX0IVhUa0OK0tgkC CQDXPo7HDY3axQLIQUQIQIQAQIQIQQAQIQIQGQIQIQGQIQIQIQGQIQGQIQIQIQGQIQGQIQGQIQGQIQGQQQGQGQAQGQAQGQAQGQQQGQGQAQG ---
オープンSSL、この形式は "PEM"(-outform pem
など)と呼ばれ、デフォルトで使用されます。 Openでも同じ形式が使用されますSSH、およびssh -i joeuser.key
を使用して接続できます。
publicキーをOpenSSH id_rsa.pub
形式で抽出できます(authorized_keys
に入れる場合):
ssh-keygen -y -f joeuser.key> joeuser-ssh.pub
(PEM形式の同じ公開鍵はopenssl rsa -pubout
で抽出できますが、ほとんど役に立ちません。)
DSAキーがある場合、それはRSAとまったく同じように機能します。
OpenSSHは、ここでx509証明書を試験的にサポートしています。
http://roumenpetrov.info/openssh
ユーザーごとに1つのx509証明書を発行し、両方に使用できます。
ユーザーpubkeyをauthorized_keysに入れる代わりに、ユーザー証明書の許可されたDNを指定できます。また、DNがユーザー名に変換されるように、webserver/webアプリケーションを構成する必要があります。
SSHキーとSSL証明書は別の動物であり、私が知る限り、それらは交換可能ではありません。
あなたの最善の策は、おそらくシングルサインオン/共有パスワードストア/ Webツールのために何でも設定し、git/gitosisを認証アイランドのままにすることです。