KMail/PGP MIME

From KDE Wiki Sandbox
Revision as of 16:59, 31 December 2010 by Yurchor (talk | contribs) (Created page with "# Поряд з піктограмою закріпки (долучення) має з’явитися піктограма підписування повідомлень. Пі...")
Other languages:

Налаштування підписування повідомлень за допомогою 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. Чинність підпису не вдалося перевірити.

CONGRATULATIONS!

You now can communicate in a more secure way if you want to. I know this how-to is very short and might not be very clear. Well, please give me suggestions and I will improve it when the time comes. Also I intend to write the second part of this topic which covers how to ENCRYPT messages, import other public keys, and install Crypto Plug-ins. Special thanks to Tim Sawchuck and Philip Cronje and all my friends in the Mandrake List.


Issues

  • Messages signed by a key already known display correctly in KMail, but new keys were not being imported, and you can't sign messages. The culprit is a missing package. Installing pinentry-qt (you may need pinentry-qt4) appears to solve both problems.
  • KMail no longer does in-line signatures. OpenGPG has to be used instead. KGpg is a useful applet that helps in the management of signatures, both your own and those collected.
  • If OpenGPG is functioning correctly you will have to give the pass-phrase every time you send a document that is to be signed. This soon becomes a pain, and the way out of that is to configure gpg-agent, which comes with kdebase-common package. Unfortunately, the install does not pick up the need for pinentry-qt(4) or pinentry-gtk (KDE or GNOME), so that has to be installed separately. The config file for gpg-agent is written to by KMail's settings.
Note
To be sure the "passphrase agent" (gpg-agent) is enabled, check your ~/.gnupg/gpg.conf and eventually uncomment the line containing "use-agent".
In KMail's Settings -> Configure KMail -> Security tab -> Crypto Backends, select OpenGPG, then Configure. On the GPG Agent page, give a path to which logs can be written, in case of problems. You can check the log in KMail's Tools -> GnuPG Log Viewer. It's probably a good idea, too, to increase the cache time - I use 3600.


Warning
The following startup and shutdown scripts may be already in use from your distro, but not written in this path. Do not install these scripts unless you have problems with startup and shutdown


  • If you do not have it already, in ~/.kde create a directory called env. In there, create a file called gpgagent.sh containing
#!/bin/bash
killall gpg-agent
eval `gpg-agent --daemon`

Save it and make it executable.

In the same way you would clean up gpg-agent on shutdown, so if you do not have it already, create another directory called shutdown into ~/.kde and create in it another script file called stop_gpgagent.sh containing

#!/bin/bash
killall gpg-agent

Save it and make it executable.


Troubleshooting Tips

 grep gpg-agent 

will list any running instances of gpg-agent.

killall gpg-agent

stops all instances

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

will restart the agent

{Input|1=gpg-agent status}}should tell you if the agent is running.