Я заинтересован в отслеживании локального каталога /etc
локально на моем сервере FreeBSD с git
, но без ущерба для локальной безопасности моей системы.Ограничение доступа к локальному репозиторию
Например, файл /etc/master.passwd
доступен только для чтения root
, и я хочу, чтобы он был таким.
По этому способу, однако, безопасность была нарушена:
Как корень, я создал репозиторий в /etc
:
/etc# git init .
/etc# git add .
/etc# git commit -am "Initial commit"
Проблема:
Поскольку /etc
доступен для чтения someuser
, someuser
может скопировать репозиторий в его собственную директорию, пригодную для записи, и проверить конфиденциальный файл (ы), тем самым получив доступ для чтения:
/etc$ cp -Rpv .git /home/someuser/sandbox/.git
/etc$ cd /home/someuser/sandbox
~/sandbox$ git checkout master.passwd
~/sandbox$ cat master.passwd
....
Что лучше всего предотвратить это?
Не позволяйте git отслеживать файл, например. игнорируй это? –
@TimCastelijns Я надеялся, что есть способ сделать это, не игнорируя каждый секретный файл. – poplitea
Ну, вам нужно «скрыть» их, почему бы не использовать инструменты, которые вы уже используете? –