По сути, я запускаю эту команду: useradd -d /var/www/website.com/Pirate -ou 10003 -g psacln -s / bin / bash Pirate
Я хочу, чтобы у пользователя Pirate был доступ только к /var/www/website.com/*, чтобы отправлять и загружать в наш репозиторий Git, /var/www/website.com/production.git— Что я делаю неправильно?
Если вы предоставляете пользователю доступ только к /var/www/website.com/, тогда любые инструменты, которые им нужны для управления репозиторием git, также должны быть где-то в этом каталоге ... этот пользователь не будет иметь доступа к /usr/bin/git
.
Лучшим способом решения вашей проблемы может быть установка чего-то вроде гитолит. gitolite немного поработал для установки (особенно для одного пользователя), но вместо того, чтобы давать каждому человеку полную системную учетную запись, каждый входит в систему как один конкретный пользователь с помощью магии ключей ssh, и эти пользовательские ключи git являются ограничен запуском только сервера gitolite, поэтому они не могут войти в систему с помощью общей оболочки или доступа по SFTP.