我有一个git服务器,人们在那里通过ssh建立远程仓库,还有一个git用户,他们都以这个用户的身份连接,这个用户拥有安全的权限等等。
我正在编辑repo中的pre-receive钩子,以便它查看环境变量$GIT_USER
是否与该repo的允许用户列表匹配,从而防止未经授权的用户推送。
这个环境变量在git用户的.ssh/authorized_keys
文件中单独设置。
但是,除了git之外,我不希望任何用户为ssh设置环境变量。
有没有办法编辑/etc/ssh/sshd_config
,使PermitUserEnvironment
只对git用户可用?
2条答案
按热度按时间eaf3rand1#
解决方法是:
PermitUserEnvironment
保留为“no”/usr/local/bin/git
替换为 Package 器脚本,该脚本将:git
二进制文件。l7wslrjt2#
您可以设置“PermitUserEnvironment no”,并在sshd_config的底部覆盖每个用户的设置:
那应该能达到你的目的。