Как настроить linux так, чтобы на нем было несколько пользователей и у каждого свои права на проекты?
Как вариант - не пускать их на сервер вовсе.
Настроить выгрузку проектов через GitLab, например, и уже его средствами разруливать доступ.
Что вы называете "танцами с бубном"?
Я бы сделал по группе на каждый проект и указал их группами владельцев  каталогов соответствующих проектов. Потом, по необходимости, добавлял пользователей в эти группы