
Я хочу настроить простой файловый сервер Ubuntu и зашифровать общий ресурс Samba. Хитрость в том, что я хочу иметь возможность просто включить сервер и иметь доступ к общим файлам Samba в сети с разрешениями.
Я знаю, что могу просто сказать Ubuntu зашифровать мою домашнюю папку, а затем создать общий ресурс в папке под моей домашней папкой. Это зашифрует файлы, но расшифровка произойдет только при входе в систему. Если отключится питание и сервер перезагрузится при его включении, никто не сможет получить доступ к общим файлам, пока я не войду в систему.
Должен быть лучший, более безопасный способ.
решение1
Это невозможно в самой системе. Если ключ для расшифровки данных хранится локально, он должен храниться незашифрованным. Таким образом, система фактически не зашифрована.
Лучшее предложение — хранить ключ где-то в сети, в месте, которое вы считаете безопасным, а затем заставить коробку извлечь его и расшифровать файлы при загрузке. Все еще плохая идея, но немного более безопасная.
решение2
Интересно, вы на самом деле имеете в виду «шифровать свой файлообменник». Если это так, то вы, вероятно, не сможете этого сделать (кроме шифрования файлов поверх общего ресурса) и/или резервного устройства — ни то, ни другое не связано с SAMBA. Однако вы можете защитить паролем общие ресурсы, чтобы пользователям для доступа к файлам требовался пароль (или доступ к серверу). (См.эта ссылкана security.stackexchange)
Эта ссылкаговорит о защите паролем. По сути, вам нужно задать список пользователей и паролей, которые может обрабатывать SAMBA, а затем задать "допустимых пользователей" для этого ресурса. Например, соответствующие фрагменты кода могут быть такими:
[global]
security = user
encrypt passwords = yes
smb passwd file = /usr/local/samba/private/smbpasswd
[sales]
path = /home/sales
comment = Sedona Real Estate Sales Data
writable = yes
valid users = sofie shelby adilia
admin users = mike
Для ведения базы данных паролей можно использовать smbpasswd.