注:電子メールの第2部では、どのように私がこの問題に遭遇したか、つまりgitoliteを通して説明します。しかし、問題はgitolite
の問題ではなく、ssh
の問題です。それでも、特定のケースに対して誰かがアドホックな解決策を持っている場合に備えて、私はgitoliteタグを追加しました。別のユーザーによるトンネルssh
ここに一般的な問題があります。
私は2人のユーザー、alice
とbob
でサーバーを持っています。 alice
はの身元をsu - bob
とすることができますが、彼女はbob
のパスワードを知りません(何らかの理由で)。彼女のラップトップから、アリスはbob
とサーバーにsshしたいと思っていますが、パスワードがないのでできません。 bob
の身元を振る舞いを模倣する彼女の能力を利用する方法がありますか?ssh [email protected]
?ある意味では、私はトンネルにユーザIDの変更によるssh接続を希望します。私はこれが長いショットだと思う、私はsshがこれを許可しないと思います。しかし、私はとにかく尋ねると思った。私はgitoliteを使用しようとしていますgitolite
:問題から来るん
。サーバー管理者にgitolite
ユーザーを設定させてもらい、サーバーにsu - gitolite
という権限を与えました。しかし、彼は私にgitolite
のパスワードを与えておらず、その日の時刻が与えられて、サーバー管理者が帰ってきたので、明日までパスワードを尋ねる必要があります。一方、私は回避策を(可能であれば)、楽しみのためだけに見つけたいと思います。
ブリーフgitolite-sshの相互作用の要約(限り私は理解して):gitolite/.ssh
でauthorized_keys
ファイルが正規のキーがgitolite
にsshをしようとしたときに全体gitolite機械が作動し、この
# gitolite start
command="/usr/share/gitolite3/gitolite-shell some_user_name",no-portforwarding,
no-X11-forwarding,no-agent-forwarding,no-pty ssh-rsa SOME_USER_NAME_KEY
# gitolite end
のようなラインを持っていますのアカウント。実際に、許可されたキーsshs(どのように動詞 'をssh'に!?)をgitolite
のアカウントに入れると、gitolite-shell
が実行され、引き継ぎ、git
関連コマンドだけが許可されます。 gitolite
のパスワードが許可されているのであれば、なぜそれが必要なのですか?と尋ねることがありますか?嬉しいです。some_user_name
は、ギトライトの設定を変更するには、~gitolite/.ssh/authorized_keys
のような行を追加するだけでは不十分です。 Gitリポジトリの中に保存されているgitoliteの設定ファイルにsome_user_name
を追加する必要があります。この設定ファイルを変更するには、そのリポジトリを複製し、設定ファイルを変更して、repoをプッシュバックする必要があります。 gitolite-admin
レポに変更をプッシュするために許可されたユーザーは、gitolite-admin
レポ自体...冒頭に記載されています、gitoliteを初期化し、ユーザ(この場合には、利用者gitolite
は)だから私は必要があります。そのような設定ファイルに記載されている唯一のものです変更可能なユーザーの中に自分のユーザーを追加するために、confファイルにgitolite
としてアクセスできるようにする構成。私がそれをしたら、ユーザgitolite
を忘れて、自分自身としてGitoliteリポジトリを管理することができます。