Ssh
無論如何都會知道 ssh 進入伺服器的原始帳戶的使用者名嗎?
我最初 git 複製了一個 repo,當我推送我的工作時,在 post-receive 掛鉤中,我想檢索進行推送的原始帳戶的使用者名。
我知道
$SSH_CONNECTION
並$SSH_CLIENT
給了我原始 IP,但我找不到獲取原始帳戶使用者名的方法。資訊:使用公鑰/無密碼方法建立 ssh 連接
我假設每個人都在 git 伺服器上共享同一個使用者,並且他們每個人都有自己的登錄密鑰。
如果是這種情況,那麼您可以輕鬆辨識使用者用於登錄 git 伺服器的**公鑰,而不是辨識****遠端使用者。**為此,您應該允許在您的伺服器中,然後您可以通過在每個公鑰前面加上. 例如,git serve 使用者的文件可能如下所示:
PermitUserEnvironment``sshd_config``environment="GIT_USER=username"``authorized_keys
environment="GIT_USER=bob" ssh-rsa AAA.....abc== bob@somehost environment="GIT_USER=sam" ssh-rsa AAA.....def== sam@otherhost
您可以自由選擇環境變數名稱和使用者標識符。