Каким образом можно зашифровать несколько bash-файлов и автоматически расшифровывать их при каждой сессии пользователя?

Как можно зашифровать файлы ~/.ssh_aliases и ~/.wlfreerdp_functions, так чтобы при входе в систему автоматически запрашивался пароль для их расшифровки и чтобы все алиасы и функции начинали работать session-wide? Если такое невозможно, каким инструментом можно зашифровать и расшифровать эти файлы?
  • 29 сентября 2023 г. 18:37
Ответы на вопрос 2
Для зашифровки и расшифровки файлов можно использовать утилиту GPG (GNU Privacy Guard). GPG позволяет создавать ключи шифрования и подписи, а также зашифровывать, расшифровывать и проверять цифровые подписи файлов.

1. Установите GPG, если он ещё не установлен, с помощью команды:
```
sudo apt-get install gnupg
```

2. Создайте ключи шифрования командой:
```
gpg --gen-key
```
Следуйте инструкциям для создания ключей (включая пароль). Обратите внимание на ID ключа, он понадобится далее.

3. Зашифруйте файлы `~/.ssh_aliases` и `~/.wlfreerdp_functions` с помощью команды:
```
gpg -e -r <ID ключа> ~/.ssh_aliases
```
```
gpg -e -r <ID ключа> ~/.wlfreerdp_functions
```
Где `<ID ключа>` - это ID вашего созданного ключа.

4. При обращении к закрытым файлам вам будет запрашиваться пароль для их расшифровки. Для автоматической расшифровки файлов при каждой сессии пользователя, вы можете добавить следующий код в ваш конфигурационный файл `~/.bashrc`:
```
gpg -d ~/.ssh_aliases.gpg > ~/.ssh_aliases
gpg -d ~/.wlfreerdp_functions.gpg > ~/.wlfreerdp_functions
```
В этом случае вам будет запрашиваться пароль для расшифровки каждый раз при входе в систему.

5. После расшифровки файлов, вы можете использовать их содержимое в вашей сессии.
Зашифруйте свою домашнюю директорию с помощью инструмента Encryptfs. Вы можете найти информацию о том, как это сделать, на первой ссылке в результатах поиска в Google. Кроме того, не забудьте заблокировать консоль на вашем компьютере, когда вы отходите от него. Таким образом, без доступа к паролю или резервной копии ключей шифрования никто не сможет получить доступ к вашим зашифрованным файлам. Кстати, при установке Linux по умолчанию вам будет предложено зашифровать вашу домашнюю директорию.
Похожие вопросы