Назад | Перейти на главную страницу

Зашифровать репозиторий git на сервере (безопасно от кражи физического оборудования)

У меня есть производственный сервер (Ubuntu, работающий круглосуточно и без выходных) с репозиторием git и несколько клиентских компьютеров, каждый из которых имеет рабочую копию этого репозитория. На клиентских компьютерах простое использование шифрования домашней папки, похоже, решает проблему, заключающуюся в том, что в случае кражи оборудования никто не может получить доступ к файлам в git.

Как я могу зашифровать удаленную сторону репозитория git, чтобы убедиться, что в случае кражи оборудования никто не сможет перенастроить и клонировать репозиторий git?

Сначала я думал о шифровании домашнего каталога пользователя git, но потом понял, что в этом нет никакого смысла, ведь когда и кем он должен быть расшифрован?

Могу ли я поместить репозиторий git в свой домашний каталог / ссылку на него, чтобы он был доступен только тогда, когда я вошел на сервер через SSH? Или есть подобное решение этой проблемы?

Заранее спасибо за любые советы!

Вы можете использовать зашифрованный домашний каталог. Вам нужно будет войти в систему, вручную смонтировать зашифрованный диск и предоставить ключ дешифрования при перезагрузке сервера. Вы не можете установить диск автоматически по очевидным причинам.

Вы можете использовать фильтр smudge / clean для шифрования содержимого репозитория в удаленной файловой системе: https://gist.github.com/873637

Вы могли бы использовать git-remote-gcrypt к git push и git fetch с клиентских компьютеров на сервер (или куда-нибудь еще). Не только содержимое, но и имена файлов и другие (все?) Метаданные репозитория также зашифрованы.