Шифрування файлів і папок в linux
У сучасному світі кожен аспект нашого особистого життя записується на комп`ютери. Один із способів захисту найбільш важливої інформації - шифрування файлів і каталогів. Під час шифрування вміст файлів перемішується з надлишковими даними відповідно до встановленого алгоритму, таким чином, що розшифрувати його можна тільки маючи спеціальний пароль або ключ.
В операційній системі Linux є чудовий інструмент з відкритим вихідним кодом для шифрування файлів - GNU Privacy Guard або просто GPG, який може бути використаний для шифрування будь-якого файлу з командного рядка або в графічному режимі. Про нього і піде мова в сьогоднішній статті.
утиліта GPG
Перед тим як перейти до використання утиліти, давайте розглянемо її синтаксис:
$ gpg опції файл параметри
Опції вказує що необхідно зробити з файлом, як це зробити і які можливості використовувати. Давайте розглянемо основні опції, які ми будемо використовувати в цій статті:
- -h - вивести довідку по утиліті;
- -s, --sign - створити цифровий підпис, ця опція використовується разом з іншими опціями для шифрування;
- --clearsign - підписати незашифрований текст;
- -e, --encrypt - зашифрувати дані, за допомогою ключа;
- -с, --symmetric - зашифрувати дані, за допомогою пароля;
- -d, --decrypt - розшифрувати дані, зашифровані за допомогою ключа або пароля;
- --verify - перевірити підпис;
- -k, --list-keys - вивести доступні ключі;
- --list-sigs - вивести доступні підписи;
- --fingerprint - вивести всі ключі разом з їх відбитками;
- --delete-key - видалити ключ;
- --delete-secret-key - видалити секретний ключ;
- --export - експортувати всі ключі;
- --export-secret-keys - експортувати всі секретні ключі;
- --import - імпортувати ключі;
- --send-keys - відправити ключі на сервер, повинен бути вказаний сервер ключів;
- --recv-keys - отримати ключі від сервера ключів;
- --keyserver - вказати сервер ключів;
- --fetch-keys - скачати ключі;
- --gen-key - створити ключ;
- --sign-key - підписати ключ;
- --passwd - змінити пароль для ключа.
А тепер розглянемо по порядку, що нам потрібно для того, щоб виконувати шифрування файлів Linux.
Шифрування файлів за допомогою пароля
Симетричний шифр - найпростіший і в той же час надійний спосіб шифрування файлів linux. Розшифрувати файл зможе будь-який у кого є пароль. Для використання просто запустіть термінал і виконайте команду gpg з параметром -c:
$ Gpg імя_файла.gpgШифрування з використанням ключів
Асиметричний шифр надійніший так як для шифрування використовується два ключі - публічний, власне для шифрування, яким може скористатися будь-хто, і приватний - для розшифровки. Причому файл можна розшифрувати тільки за допомогою приватного ключа, навіть якщо ви зашифрували файл, без приватного ключа ви його не розшифруєте.
Спочатку необхідно налаштувати gpg, створити пару ключів, для цього наберіть:
$ Ls ~ / .gnupg /Також ви можете подивитися список доступних ключів:
$ Gpg -a -o gpgkey.asc --export імя_ключаПотім передаємо файл на цільове пристрій і імпортуємо ключ:
$ Gpg --edit-key UsernameДля вибору рівня довіри введіть команду trust:
$ Gpg -e -r ід_пользователя имя_файлаІд користувача потрібно вказувати той що ви використовували при створенні ключа. Для розшифровки використовуйте:
tar -cf - каталог | gpg -e -r ід_пользователяА для розшифровки:
$ Gpg --sign имя_файлаЯкщо ви не хочете змінити вихідний файл, то можна створити підпис в окремому файлі:
$ Gpg --verify textfile.sig textfileЯкщо файл був змінений, то ви побачите, що підпис не сходитися.
висновки
У цій статті ми розглянули як виконується шифрування файлу linux, а також настройка утиліти gpg. Шифрування gpg linux використовується людьми для зберігання важливих даних, а механізм підписів популярний серед розробників дистрибутивів. Якщо у вас залишилися питання, питайте в коментарях!
На завершення відмінне відео про те, як працює асиметричний алгоритм шифрування:
- Програми резервного копіювання linux
- Потужна програма для шифрування дисків - cybersafe
- Як відновити зашифровані за допомогою bitlocker файли?
- Як перейменувати файл linux
- Як користуватися curl
- Як завантажити файл linux
- Як розпакувати zip в linux
- Використання криптоконтейнера для приховування інформації
- Шифрування дисків в linux
- Копіювання файлів в linux
- Вимкнення linux з командного рядка
- Команда copy
- Rsync приклади синхронізації
- Команда find в linux
- Команда wget linux
- Архівування файлів в linux
- Копіювання файлів scp
- Команда cat linux
- Orwl перший безпечний мікрокомп`ютер з відкритим вихідним кодом
- Команда windiff - порівняння файлів.
- Hash api - новий підхід до шифрування паролів.