問題タブ [authorized-keys]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
erlang - Erlang、SSH、およびauthorized_keys
Erlangでsshとpublic_keyアプリケーションをいじっていて、いい機能を発見しました。
実行中の Erlang SSH デーモンにrsa キーを使用して接続しようとしましたが、認証に失敗し、パスワードの入力を求められました。
いくつかのデバッグとトレース (および数回のコーヒー) の後、何らかの奇妙な理由で、ユーザーの無効なキーがそこにあることに気付きました。authorized_keysファイルには2 つのキーが含まれていました。間違ったものはファイルのどこかにありましたが、正しいものはファイルの最後に追加されました。
現在、Erlang SSH アプリケーションは、提供されたキーと、authorized_keys に含まれているキーを比較するときに、最初のエントリを見つけていました (2 番目のキーは完全に無視されます - 正しいキー)。次に、別の認証メカニズムに切り替えていました (最初はrsaではなくdsaを試行し、次にパスワードの入力を求めていました)。
問題は次のとおりです。この動作は意図されたものですか、それとも SSH サーバーは、 authorized_keysファイル内の同じユーザーの複数のエントリをチェックする必要がありますか? これは一般的な SSH の動作ですか、それとも Erlang の実装に固有のものですか?
git - git pushは「致命的:プロトコルエラー:行の長さが正しくない文字」を返します
所有している共有ホストアカウントにリモートGitリポジトリを設定しました。別の開発者がプッシュ/プルできるようにするために、共有ホストの.ssh / authorized_keysの末尾に彼の公開鍵(id_rsa.pub)を追加しました。その後、彼は「gitpush」を実行することができました。しかし、彼が私の共有ホストでgitにアクセスする以外に何もできないことを確認したいので、manauthorized_keysによるとこれをauthorized_keysのエントリの先頭に追加しました。
彼がgit-pushを実行すると、コマンドラインで「致命的:プロトコルエラー:行の長さが正しくない文字」と応答します。
Googleで検索したところ、この問題を抱えている他のユーザーを見つけましたが、この他のユーザーが私の共有ホストアカウントのシェルにアクセスできるようにしないと、これを解決する方法について適切な答えを見つけることができませんでした。
ssh - 公開鍵を〜/ .ssh / authorized_keysに追加しても、自動的にログインしません
公開SSHキーをauthorized_keysファイルに追加しました。 ssh localhost
パスワードを要求せずにログインする必要があります。
私はそれをして入力しようとしssh localhost
ましたが、それでもパスワードを入力するように求められます。それを機能させるために私が通過しなければならない別の設定はありますか?
権限を変更するための指示に従いました。
以下は私がした場合の結果ですssh -v localhost
。
次に、上記のログの後にパスフェーズを要求します。パスワードなしでログインしないのはなぜですか?
git - Git Remote:エラー:致命的:プロトコルエラー:行の長さが正しくありません:Unab
gitサーバーをセットアップし、最初にクライアントからリポジトリをプッシュしたいと思います。git push origin master
私はこのエラーメッセージを使用して受け取りました:
何が悪いのかわかりません。「ウナブ」って何なのかわかりません。シェルのサイズを変更しようとしましたが、まだ「Unab」です。このエラーメッセージの解決策が見つかりません。
「authorized_keys」とSSHを使用してサーバーをセットアップしました。(SSHを使用して接続できます。)
gitの問題のようですか?
ところで:サーバーはWindows7VMでセットアップされています
ssh - sshとauthorized_keysに問題がある
server1からserver2にSSH接続しています。id_rsaファイルとid_rsa.pubファイルを生成しました。ssh to mike @ server2の場合は正常に機能しますが、ssh to john@server2はパスワードなしでは機能しません。mikeとjohnの両方のホームディレクトリには、chmod 700である「.ssh」が含まれ、そのフォルダには、以前に生成されたid_rsa.pubファイル(およびchmod 600)の内容のみを含む「authorized_keys」が含まれます。両方の内容は同じです。
サーバー1:Linux x86_64 x86_64 x86_64 GNU / Linux
サーバー2:AIX5.3.0.064ビット
コマンド1、ユーザーマイク(パスワードなしで動作):
ssh -v -n -o StrictHostKeychecking=no -o NumberOfPasswordPrompts=0 mike@server2 echo Hello
〜drwx------ 7 mike mike 4096 Jan 19 2011 .
〜/ .sshdrwx------ 2 mike mike 256 Nov 28 16:39 .ssh
〜/ .ssh / authorized_keys-rw------- 1 mike mike 823 Apr 06 11:56 .ssh/authorized_keys
コマンド2、ユーザーJohn(パスワードが必要)
ssh -v -n -o StrictHostKeychecking=no -o NumberOfPasswordPrompts=0 john@server2 echo Hello
〜drwx------ 12 john jgroup 4096 Apr 06 23:13 .
〜/ .sshdrwx------ 2 john jgroup 256 Apr 06 23:56 .ssh
〜/ .ssh / authorized_keys-rw------- 1 john jgroup 414 Apr 06 11:55 .ssh/authorized_keys
上記のコマンド2からのssh-v出力
なぜそれが1人のユーザーで機能し、別のユーザーでは機能しないのか(両方が同じサーバー上にある)について誰かが考えていますか?
ssh - 複数のユーザーが許可されたキーを編集します
私のauthorized_keysファイルを編集できるように2人のユーザーが欲しいです。これは可能ですか?
元のユーザーなど/グループにユーザーを追加しようとしましたが、機能しませんでした。
例:user1:xx:user2
ubuntu-11.10 - RSAキーをauthorized_keysファイルに追加する方法は?
RSA 公開鍵を作成し、それをファイルに追加したいauthorized_keys
のですが、Ubuntu 11.10 マシンにそのようなファイルがありません。
にキーを追加するにはどうすればよいauthorized_keys
ですか?
git - authorized_keys ファイル内の Gitolite ユーザー名
私はできる限り私のシナリオを説明しようとします:
私は debian スクイーズ サーバーで gitolite を使用しており、リポジトリにアクセスして操作できるユーザーが 3 人います。
alex@workbox
alex@homebox
katy@workbox
上記は、3 つの Ubuntu ボックスの対応するユーザー名とホスト名です (Alex は 2 つの場所で作業しています)。
alex@workbox
私が最初にしたことは、ギトライトに追加することでした:
- Alex は ssh-keygen を使用して ssh キーを生成しました
- 彼の ssh キーを alex@workbox.pub として、ローカルの gitolite-admin クローン リポジトリの「keydir」フォルダにコピーしました。
- alex@workbox がリポジトリに RW アクセスできるように、ローカルの gitolite-admin クローン リポジトリの conf/gitolite.conf ファイルを変更しました。
repo project1
RW+ = alex@workbox
- いつものことをしました:
git add .
git commit -m "Added alex@workbox"
git push
Alex が project1 リポジトリのクローンを作成しようとすると、ユーザー " alex
" のアクセスが拒否されたことを示すエラーが表示されました。
そこで、サーバーにログインして を開きまし/var/lib/gitolite/.ssh/authorized_keys
た。
ファイルの最初の部分は次のとおりです。
そのため、手動で に置き換えalex
てalex@workbox
ファイルを保存したところ、今度は Alex がリポジトリのクローンを作成し、問題なく作業することができました。
次に、上記と同じ手順を実行して Katy を追加し、 にプッシュした後gitolite-admin
、ファイルを再度authorized_keys
開くと、gitolite が " user@hostname
" を " " に置き換えていることがわかりましたuser
。
したがって、のalex
代わりにalex@workbox
と同じでしkaty
た。
その後、手動で再度置き換えてファイルを保存する必要がありました。リポジトリに対してプッシュを行うたびに、すべての " " が " " にgitolite-admin
置き換えられ、ユーザーがリポジトリにアクセスできなくなることがわかりました。user@hostname
user
.ssh/authorized_keys
gitolite に " user@hostname
" を保持させるにはどうすればよいですか?
サーバー上で構成する必要があるか、ローカルのクローンgitolite-admin
リポジトリで構成を変更する必要がありますか?
linux - パスワードなしのsshログイン後にリモートユーザーのIDを確認しますか?
パスワードなしのssh-loginの後、LinuxでログインしたリモートユーザーのIDを取得する方法はありますか?
ssh-loginを実行するリモートホスト/ユーザーIDに応じて、login-scriptsでいくつかの異なるアクションを実行したいと思います。
java - localhost を使用する場合の Web サイトの暗黙的認証 (SSO)
これは漠然とした質問かもしれませんが (申し訳ありません)、ユーザー名/パスワードなしで Web アプリケーションに認証できるようにしたいと考えています。理想的には、秘密鍵と公開鍵の組み合わせを使用する SSH の「パスワードなしのログイン」のようなものです。
これを明確にするために、これは私のユースケースです
- Tomcat で実行されている「フォーム」ログインを行う標準の Java EE Web アプリケーションがあります。認証は OS に従います。したがって、webapp の user1 は、ホストに ssh 接続した場合、user1 と同じユーザーです。
- SSHのように機能するコマンドラインインターフェイスがあります(つまり、「cli user@host」でパスワードを要求します)
- ユーザーが信頼されていることを示すことができれば、CLI が自動的にログインするようにしたいと思います。
どうすればいいですか?
私が持っている 1 つのアイデアは、ssh-keygen メソッド (つまり、パスワードなしの ssh) を使用することです。正確な詳細はわかりませんが、このような動作になると思います。
- CLI ログインでは、ローカルの秘密鍵 (つまり ~/.ssh/id_dsa) を使用して既知の文字列を暗号化します。
- ログインでそれを投稿する
- サーバーはそれぞれの「authorized_keys」(おそらく ~/.ssh/ ではなく、私のアプリケーションの 1 つ) を調べて、文字列を解読しようとします。期待される文字列と等しい場合は、SUCCESS
コメント?