Jump to content

KMail/PGP MIME

From KDE Wiki Sandbox
Revision as of 16:32, 17 January 2011 by Yurchor (talk | contribs)

Налаштування підписування повідомлень за допомогою GPG у KMail

© Fajar Priyanto, 2004

Створення, збереження та оприлюднення вашого ключа

1. Вам знадобиться програма gpg. Ця програма є частиною типового комплекту програм дистрибутива.

2. Створіть ваш власний ключ (виконайте команду від вашого користувача, не від користувача root):

gpg --gen-key

Виконайте настанови програми: вони очевидні і прості.


3. Перевірте, чи створено ключ:

gpg --list-key

Ви маєте побачити щось подібне до наведеного нижче (ви бачите реєстраційні дані автора статті):

:pub 1024D/85EEC6A5 2004-03-15 Fajar Priyanto (Knowledge is power! http://linux.arinet.org) sub 1024g/BBBB57F3 2004-03-15


4. Зверніть увагу на наведені вище дані. 85EEC6A5 — ідентифікатор ключа. Тепер експортуйте ваш відкритий ключ:

:gpg -ao fajar-pub.key --export 85EEC6A5


У відповідь у поточному каталозі має бути створено файл з назвою fajar-pub.key. У цьому файлі зберігаються дані копії вашого відкритого ключа. Цей файл мають імпортувати отримувачі вашої кореспонденції для перевірки ваших підписаних повідомлень. Ви можете оприлюднити цей ключ на серверах ключів, надіслати його отримувачам за запитом або розмістити його на вашому веб-сайті для звантаження.

Якщо ви зазирнете до файла ви побачите щось таке:

-- --BEGIN PGP PUBLIC KEY BLOCK-- --

Version: GnuPG v1.2.3 (GNU/Linux)

mQGiBEBVTw8RBACaYvnDkgqNWyktg3urdE9mrpv63x3Iux2zVkuZk8pIRp5HeR/V

[пропущено...]

B394acuU4FdGN/EynYUAn1aRvNmgs0/IU2MDzYQpbHIaqpkE

=B0cy

-- --END PGP PUBLIC KEY BLOCK-- --

Крім того, вам варто створити резервну копію вашого закритого ключа на якомусь безпечному носії даних (однієї дискети для цього замало: її може бути пошкоджено). Скористайтеся такою командою:

$ gpg -ao secret.asc --export-secret-keys 85EEC6A5

У відповідь буде створено текстовий файл з даними вашого закритого ключа та назвою secret.asc. Доступ до цього файла не слід надавати нікому. Сховайте файл у безпечному місці (або, краще, у декількох місцях).

Нарешті, радимо вам створити сертифікат відкликання і зберегти його у безпечному місці, подалі від закритого ключа. Якщо ваш закритий ключ потрапить не у ті руки, ви зможете відкликати його, щоб ним не могли скористатися зловмисники. Для цього віддайте команду

$ gpg -a -o revoker.asc --gen-revoke 85EEC6A5

У відповідь буде створено текстовий файл з назвою revoker.asc, у якому міститиметься сертифікат відкликання.


Налаштування KMail на підписування повідомлень вашим ключем gpg

  1. Запустіть Kmail і скористайтеся пунктом меню Параметри -> Налаштувати KMail -> Профілі.
  2. Виберіть пункт вашого профілю.
  3. Натисніть кнопки Змінити -> Криптографія -> Ключ OpenPGP для підписів
  4. Програма автоматично покаже ваш ключ gpg, у нашому прикладі 85EEC6A5
  5. Якщо цього не сталося, натисніть кнопку Змінити..., виберіть ідентифікатор ключа і натисніть кнопку Гаразд
  6. Тепер налаштуйте Kmail на автоматичне підписування всіх ваших повідомлень за допомогою вашого ключа.
  7. У вікні налаштування Kmail перейдіть на сторінку Безпека -> Створення
  8. Позначте такі пункти:
    1. Зберігати надіслані повідомлення зашифрованими,
    2. Завжди показувати ключі шифрування для схвалення,
    3. Автоматично підписувати повідомлення.
  9. Закрийте вікно налаштування натисканням кнопки Гаразд.


Перевірка підписування створенням повідомлення

  1. Поряд з піктограмою закріпки (долучення) має з’явитися піктограма підписування повідомлень. Підписування буде задіяно.
  2. Створіть повідомлення і після завершення введення тексту надішліть його.
  3. Kmail попросить вас ввести пароль, який ви вказали на кроці створення ключа командою gpg --gen-key. Введіть пароль, Kmail покаже вікно підтвердження підписання повідомлення. Натисніть кнопку Гаразд, щоб надіслати повідомлення.
  4. Якщо ви надіслали тестове повідомлення собі, ви побачите, що Kmail показує заголовок повідомлення зеленим кольором, з повідомленням, схожим на це: Повідомлення підписано Fajar Priyanto (Knowledge is power! http://linux.arinet.org) (ІД ключа: 0x85EEC6A5). Підпис є чинним, надійність ключа не обмежено.
  5. Ті, хто встановив у системі ваш відкритий ключ, теж побачать це повідомлення. Ті, у кого ключ не встановлено, побачать жовтий заголовок з повідомленням: Повідомлення було підписано невідомим ключем 0xBFE7357F. Чинність підпису не вдалося перевірити.

ВІТАЄМО!

Тепер ви можете вести обмін повідомленнями у безпечніший спосіб, якщо хочете. Звичайно ж, ці настанови дуже короткі і, можливо, не дуже зрозумілі. Гаразд, це вікі і ви можете покращити пояснення. Автор мав намір написати другу частину цих настанов, присвячену шифруванню повідомлень, імпортування відкритих ключів та встановленню додатків шифрування. Особливі подяки у створенні цих настанов автор хоче висловити Tim Sawchuck і Philip Cronje, а також всім друзям зі списку листування Mandrake.


Вади

  • Повідомлення підписані вже відомим програмі ключем показуються у KMail належним чином, але нові ключі не імпортуються, і ви не можете підписувати повідомлення. Причиною є невстановлений пакунок. Встановлення пакунка pinentry-qt (можливою назвою є pinentry-qt4) вирішить обидві проблеми.
  • Нові версії KMail не мають вбудованих інструментів створення підписів. Для роботи з підписами у цих версіях використовується OpenGPG. Керувати вашими підписами та імпортованими підписами можна за допомогою KGpg.
  • У разі належної роботи OpenGPG вам доведеться вводити пароль кожного разу, коли ви надсилатимете документ, який слід підписати. Введення пароля є доволі набридливою процедурою. Набагато простіше налаштувати gpg-agent, який є частиною пакунка kdebase-common. На жаль, під час встановлення цього пакунка може бути не встановлено пакунок pinentry-qt(4) або pinentry-gtk (KDE або GNOME), отже його доведеться встановити окремо. У файл налаштувань gpg-agent буде записано налаштування KMail.

Зауваження

Що забезпечити запуск «агента паролів» (gpg-agent) відкрийте файл ~/.gnupg/gpg.conf і зніміть символ коментування з рядка з "use-agent".
У KMail Параметри -> Налаштувати KMail -> Безпека -> Сервери шифрування виберіть OpenGPG, потім натисніть Налаштувати. На сторінці агента GPG, вкажіть адресу файла журналу, куди записуватимуться повідомлення про можливі негаразди. З журналом можна ознайомитис за допомогою пункту меню KMail Інструменти -> Переглядач журналу GnuPG. Непогано також збільшити час кешування, наприклад, до 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

Збережіть його і надайте файлу права для виконання.


Підказки з усування проблем

 grep gpg-agent 

покаже список всіх запущених екземплярів gpg-agent.

killall gpg-agent

завершить роботу всіх екземплярів програми

eval "$(gpg-agent --daemon)"

перезапустить агент

gpg-agent status

повідомить вам, чи запущено агент.