У меня есть производственный сервер (Ubuntu, работающий круглосуточно и без выходных) с репозиторием git и несколько клиентских компьютеров, каждый из которых имеет рабочую копию этого репозитория. На клиентских компьютерах простое использование шифрования домашней папки, похоже, решает проблему, заключающуюся в том, что в случае кражи оборудования никто не может получить доступ к файлам в git.
Как я могу зашифровать удаленную сторону репозитория git, чтобы убедиться, что в случае кражи оборудования никто не сможет перенастроить и клонировать репозиторий git?
Сначала я думал о шифровании домашнего каталога пользователя git, но потом понял, что в этом нет никакого смысла, ведь когда и кем он должен быть расшифрован?
Могу ли я поместить репозиторий git в свой домашний каталог / ссылку на него, чтобы он был доступен только тогда, когда я вошел на сервер через SSH? Или есть подобное решение этой проблемы?
Заранее спасибо за любые советы!
Вы можете использовать зашифрованный домашний каталог. Вам нужно будет войти в систему, вручную смонтировать зашифрованный диск и предоставить ключ дешифрования при перезагрузке сервера. Вы не можете установить диск автоматически по очевидным причинам.
Вы можете использовать фильтр smudge / clean для шифрования содержимого репозитория в удаленной файловой системе: https://gist.github.com/873637
Вы могли бы использовать git-remote-gcrypt к git push
и git fetch
с клиентских компьютеров на сервер (или куда-нибудь еще). Не только содержимое, но и имена файлов и другие (все?) Метаданные репозитория также зашифрованы.