KMail/PGP MIME
Налаштування підписування повідомлень за допомогою GPG у KMail
© Fajar Priyanto, 2004 (останнє оновлення у 2019 році)
Створення, збереження та оприлюднення вашого ключа
1. Вам знадобиться програма gpg. Ця програма є частиною типового комплекту програм дистрибутива.
2. Створіть ваш власний ключ (виконайте команду від вашого користувача, не від користувача root):
gpg --gen-key
Виконайте настанови програми: вони очевидні і прості.
3. Перевірте, чи створено ключ:
gpg --list-key
Ви маєте побачити щось подібне до наведеного нижче (ви бачите реєстраційні дані автора статті):
pub rsa4096 2004-03-15 [SC] D9C687FBA8DB7AB93E06E737931BC29844664E2D uid [ultimate] Fajar Priyanto <mail@example.com> sub rsa4096 2004-03-15 [E]
4. Зверніть увагу на наведені вище дані. 85EEC6A5 — ідентифікатор ключа. Тепер експортуйте ваш відкритий ключ:
gpg --armor --output fajar-pub.key --export mail@example.com
У відповідь у поточному каталозі має бути створено файл з назвою fajar-pub.key. У цьому файлі зберігаються дані копії вашого відкритого ключа. Цей файл мають імпортувати отримувачі вашої кореспонденції для перевірки ваших підписаних повідомлень. Ви можете оприлюднити цей ключ на серверах ключів, надіслати його отримувачам за запитом або розмістити його на вашому веб-сайті для звантаження.
Якщо ви зазирнете до файла ви побачите щось таке:
-- --BEGIN PGP PUBLIC KEY BLOCK-- -- mQGiBEBVTw8RBACaYvnDkgqNWyktg3urdE9mrpv63x3Iux2zVkuZk8pIRp5HeR/V [пропущено...] B394acuU4FdGN/EynYUAn1aRvNmgs0/IU2MDzYQpbHIaqpkE =RIZC -- --END PGP PUBLIC KEY BLOCK-- --
Крім того, вам варто створити резервну копію вашого закритого ключа на якомусь безпечному носії даних (однієї дискети для цього замало: її може бути пошкоджено). Скористайтеся такою командою:
$ gpg --armor --output secret.asc --export-secret-keys mail@example.com
У відповідь буде створено текстовий файл з даними вашого закритого ключа та назвою secret.asc. Доступ до цього файла не слід надавати нікому. Сховайте файл у безпечному місці (або, краще, у декількох місцях).
Нарешті, радимо вам створити сертифікат відкликання і зберегти його у безпечному місці, подалі від закритого ключа. Якщо ваш закритий ключ потрапить не у ті руки, ви зможете відкликати його, щоб ним не могли скористатися зловмисники. Для цього віддайте команду
$ gpg --armor --output revoker.asc --gen-revoke mail@example.com
У відповідь буде створено текстовий файл з назвою revoker.asc, у якому міститиметься сертифікат відкликання.
Налаштування KMail на підписування повідомлень вашим ключем gpg
- Запустіть Kmail і скористайтеся пунктом меню .
- Виберіть пункт вашого профілю.
- Натисніть кнопки
- Програма автоматично покаже ваш ключ gpg.
- Якщо цього не сталося, натисніть кнопку , виберіть ідентифікатор ключа і натисніть кнопку
- Тепер налаштуйте Kmail на автоматичне підписування всіх ваших повідомлень за допомогою вашого ключа.
- У вікні налаштування Kmail перейдіть на сторінку
- Позначте такі пункти:
- Зберігати надіслані повідомлення зашифрованими,
- Завжди показувати ключі шифрування для схвалення,
- Автоматично підписувати повідомлення.
- Закрийте вікно налаштування натисканням кнопки .
Перевірка підписування створенням повідомлення
- Ви побачите банер підписування повідомлення. Його буде активовано.
- Поряд з піктограмою закріпки (долучення) має з’явитися піктограма підписування повідомлень. Підписування буде задіяно.
- Створіть повідомлення і після завершення введення тексту надішліть його.
- Kmail попросить вас ввести пароль, який ви вказали на кроці створення ключа командою gpg --gen-key. Введіть пароль, Kmail покаже вікно підтвердження підписання повідомлення. Натисніть кнопку , щоб надіслати повідомлення.
- Якщо ви надіслали тестове повідомлення собі, ви побачите, що Kmail показує заголовок повідомлення зеленим кольором, з повідомленням, схожим на це: Повідомлення підписано Fajar Priyanto (Knowledge is power! http://linux.arinet.org) (ІД ключа: 0x85EEC6A5). Підпис є чинним, надійність ключа не обмежено.
- Ті, хто встановив у системі ваш відкритий ключ, теж побачать це повідомлення. Ті, у кого ключ не встановлено, побачать жовтий заголовок з повідомленням: Повідомлення було підписано невідомим ключем 0xBFE7357F. Чинність підпису не вдалося перевірити.
ВІТАЄМО!
Тепер ви можете вести обмін повідомленнями у безпечніший спосіб, якщо хочете. Звичайно ж, ці настанови дуже короткі і, можливо, не дуже зрозумілі. Гаразд, це вікі і ви можете покращити пояснення. Автор мав намір написати другу частину цих настанов, присвячену шифруванню повідомлень, імпортування відкритих ключів та встановленню додатків шифрування. Особливі подяки у створенні цих настанов автор хоче висловити Tim Sawchuck і Philip Cronje, а також всім друзям зі списку листування Mandrake.
Вади
- Повідомлення підписані вже відомим програмі ключем показуються у KMail належним чином, але нові ключі не імпортуються, і ви не можете підписувати повідомлення. Причиною є невстановлений пакунок. Встановлення пакунка pinentry-qt (можливою назвою є pinentry-qt4) вирішить обидві проблеми.
- Нові версії KMail не мають вбудованих інструментів створення підписів. Для роботи з підписами у цих версіях використовується OpenGPG. Керувати вашими підписами та імпортованими підписами можна за допомогою KGpg.
У KMail виберіть , потім натисніть . На сторінці агента GPG, вкажіть адресу файла журналу, куди записуватимуться повідомлення про можливі негаразди. З журналом можна ознайомитис за допомогою пункту меню KMail . Непогано також збільшити час кешування, наприклад, до 3600.
- Якщо цього каталогу ще немає у ~/.kde, створіть каталог з назвою env. У цьому каталозі створіть файл з назвою gpgagent.sh і вмістом
#!/bin/bash killall gpg-agent eval `gpg-agent --daemon`
Збережіть файл і надайте йому права доступу для виконання.
У такий самий спосіб ви можете наказати вилучати дані gpg-agent під час завершення роботи. Отже, якщо ви ще цього не зробити, створіть каталог з назвою shutdown у ~/.kde і ще один файл скрипту з назвою stop_gpgagent.sh і вмістом
#!/bin/bash killall gpg-agent
Збережіть його і надайте файлу права для виконання.
Підказки з усування проблем
ps -edalf | grep gpg-agent
покаже список всіх запущених екземплярів gpg-agent.
killall gpg-agent
завершить роботу всіх екземплярів програми
eval "$(gpg-agent --daemon)"
перезапустить агент
gpg-agent status
повідомить вам, чи запущено агент.
Додаткові відомості
Оглядова сторінка з підказками і настановами.