Бруй В.В., Карлов С.В. - Linux-сервер - пошаговые инструкции - инсталляции и настройки (1077321), страница 47
Текст из файла (страница 47)
Файл может быть выложен на Web -сервере пользователя или разослан по электронной почте.Шаг 6Зарегистрируйтесь в системе в качестве другого пользователя, например valentine и повторитешаги 1…5.Шаг 7Поместите открытый ключ пользователя sergey в домашний каталог пользователя valentine, аоткрытый ключ пользователя valentine в домашний каталог пользователя sergey.Шаг 8Подпишите открытые ключи.Для пользователя sergey:[sergey@drwalbr sergey]$ gpg --sign valentine.ascYou need a passphrase to unlock the secret key foruser: "Sergey Karlov <sergey@drwalbr.und>"1024-bit DSA key, ID 5BC241B3, created 2003-03-19Введите пароль, который использовался для защиты закрытого ключа в шаге 4:Enter passphrase: $ecretnoe_$lovo_SergeyaДля пользователя valentine:[valentine@drwalbr valentine]$ gpg --sign sergey.ascYou need a passphrase to unlock the secret key foruser: "Valentine Bruy <valentine@drwalbr.und>"1024-bit DSA key, ID F3238EE5, created 2003-03-19Введите пароль, который использовался для защиты закрытого ключа в шаге 4:Enter passphrase: $ecretnoe_$lovo_ValentineШаг 9От имени пользователя valentine создайте сообщение для пользователя sergey:[valentine@drwalbr valentine]$ echo Привет, Сергей ! = Валентин > message_to_sergeyШаг 10Зашифруйте сообщение:[valentine@drwalbr valentine]$ gpg -sear sergey@drwalbr.und message_to_sergeyYou need a passphrase to unlock the secret key forГлава 11.
GnuPG – утилита для безопасного хранения и передачи данных177user: "Valentine Bruy <valentine@drwalbr.und>"1024-bit DSA key, ID F3238EE5, created 2003-03-19Введите пароль для секретного ключа:Enter passphrase: $ecretnoe_$lovo_Valentinegpg: checking the trustdbgpg: checking at depth 0 signed=0 ot(-/q/n/m/f/u)=0/0/0/0/0/1gpg: next trustdb check due at 2004-03-18gpg: 69CADC7B: There is no indication that this key really belongs to theowner1024g/69CADC7B 2003-03-19 "Sergey Karlov <sergey@drwalbr.und>"Primary key fingerprint: D155 D3C4 F19A 5859 3A66 910899E5 5EBA 5BC2 41B3Subkey fingerprint: 456F C70F 8F64 38B3 B6F4 E90070C3 B3B8 69CA DC7BIt is NOT certain that the key belongs to the person namedin the user ID.
If you *really* know what you are doing,you may answer the next question with yesПодтвердите использования ключа:Use this key anyway? yesВ результате в домашнем каталоге появился файл message_to_sergey.asc. Следует отметить,что вместо указания адреса электронной почты, используемого при шифровании сообщения, можно использовать имя пользователя (первую часть идентификатора пользователя), т. е. команды:[valentine@drwalbr valentine]$ gpg -sear sergey@drwalbr.und message_to_sergeyи[valentine@drwalbr valentine]$ gpg -sear "Sergey Karlov" message_to_sergeyприводят к одинаковым результатам.
Переместите файл message_to_sergey в домашний каталог пользователя sergey.Шаг 11Файл message_to_sergey содержит зашифрованное сообщение. Если бы вы передавали его по сетям общего пользования, то в случае перехвата сообщения третьими лицами, они смогли бы ознакомится соследующим текстом:[sergey@drwalbr sergey]$ cat message_to_sergey.asc-----BEGIN PGP MESSAGE----Version: GnuPG v1.2.1 (GNU/Linux)hQEOA3DDs7hpytx7EAQA3+zuXyc4ckZhS3fbKsV+vcPp9wJmbYE0BF8qFYP8KQAolRlbl1tz7l2HlAKqGrbnyTtuVqRw1RPz/vMo4IQCqL1/YHVz6KhYYbXsFIqFYXGbvB9PqgEMfRCpAJK63WFj3oyX2EL1Q9qAc9v/9Ru5SY2D1bqM3dHdneWbjJvhBcAD/iF5qWnlpex3FTTwtmvrobrKuuFzZQNIZl3AQpOL7b5EWyM5RfjKPqaG4+FVaAyddSRvKNpeTNA4s+OgShTp8bRpNcwZ72Fy35pkwxTTRqcD7QWVaisn/Q3EnC78T3Md0ESCEHT/tkZmGhnQHBN3vA0PvC32SXTHFRoa+aiO09Ou0rYBc2D9KJPu7VMWUuSqMZ4YYkF5GUOKivURAkWbrOBztHunipgbbG6QxdeaL1eSJPkq58Ob4rtgErD8tL2MnrPbhBnUYOFoW+t+UzfFQ28eJo+jQOoFtxcQu2hpLpipBaGjbl8owXSHEVkSWmb1/8oW1uq+wBrTP0sghYxchr/7ByBeAMirvBuwkVIUrQr5S+XP6CAXnKNLfyxakMrE4T5NAuAteSlZwUj6fvo2Ba67aQBdDO7FvA===C5As-----END PGP MESSAGE----Для расшифровки сообщения в файле message_to_sergey:[sergey@drwalbr sergey]$ gpg -d message_to_sergey.asc > message_to_sergeyYou need a passphrase to unlock the secret key foruser: "Sergey Karlov <sergey@drwalbr.und>"178Часть 3.
Криптографическое программное обеспечение...1024-bit ELG-E key, ID 69CADC7B, created 2003-03-19 (mainkey ID 5BC241B3)введите пароль:Enter passphrase: $ecretnoe_$lovo_Sergeyagpg: encrypted with 1024-bit ELG-E key, ID 69CADC7B,created 2003-03-19"Sergey Karlov <sergey@drwalbr.und>"gpg: Signature made Срд 19 Мар 2003 16:05:22 MSK using DSAkey ID F3238EE5gpg: Good signature from "Valentine Bruy<valentine@drwalbr.und>"gpg: checking the trustdbgpg: checking at depth 0 signed=0ot(-/q/n/m/f/u)=0/0/0/0/0/1gpg: next trustdb check due at 2004-03-18gpg: WARNING: This key is not certified with a trustedsignature!gpg: There is no indication that the signaturebelongs to the owner.Primary key fingerprint: BAD5 B986 F5AC 89E7 99A4 92CE4678 9056 F323 8EE5В результате в домашнем каталоге пользователя sergey появится файл message_to_sergey, содержащий исходное сообщение:[sergey@drwalbr sergey]$ cat message_to_sergeyПривет, Сергей ! = ВалентинГлава 12.
OpenSSL – программное обеспечение для безопасной передачи данныхГлава 12OpenSSL – программное обеспечение для безопасной передачи данныхВ этой главе:1. Ограничения и допущения2. Пакеты3. Инсталляция с помощью rpm-пакетов4. Компиляция, оптимизация и инсталляция OpenSSL5. Конфигурирование OpenSSL6. Тестирование OpenSSL179180Часть 3.
Криптографическое программное обеспечение...Большинство сетевых протоколов, используемых в Интернете, например, IMAP, POP, SQL, SMTP,SMB, HTTP, FTP и LDAP, обеспечивают поддержку шифрования информации по протоколу SSL. Обычношифрование используется для скрытия от злоумышленников передаваемых по сетям общего пользованиялогинов и паролей доступа к различным ресурсам, например, средствам администрирования через Webинтерфейс акаунтов для предоставления различных услуг (хостинг, электронная почта, управление мобильным телефоном и т.
п.), почтовым ящикам, закрытым каталогам на FTP и Web-серверах для передачи различных конфиденциальных сообщений (например, ЦРУ имеет на своем сервере http://www.cia.govформу, предназначенную для приема информации, которая при передаче будет зашифрована).При передаче аутентификационной информации в виде обычного текста она может быть перехваченатретьими лицами с использованием программ-сниферов и использована для получения несанкционированного доступа к вашим ресурсам.
Например, одна неверная супруга, ведущая переписку с любовником черезпочтовый ящик на http://www.mail.com, где логин и пароль передаются в виде обычного текста, былапоймана с поличным (в полученном ей письме содержалась информация о месте и времени встречи). Аутентификационные параметры для доступа к почтовому ящику были получены мужем с помощью снифера, установленного на системе в локальной сети офиса, где работала беспечная дама.В настоящее время протокол SSL практически незаметно для пользователя взаимодействует с остальными протоколами Интернет и обеспечивает передачу конфиденциальной информации по сетям общегопользования в зашифрованном виде.Программное обеспечение OpenSSL поддерживает протоколы SSL v2/v3 (Secure Sockets Layer) и TLSv1 (Transport Layer Security).
Большинство программ, описанных в этой книге, требует установки OpenSSL.Группа разработчиков предупреждает, что использование алгоритмов RC5 и IDEA, также реализованных вOpenSSL, требует получения соответствующих лицензий, и рекомендует проконсультироваться на эту темус вашим юристом. Для исключения из OpenSSL этих алгоритмов при установке на вашем компьютере исходные коды необходимо сконфигурировать с опциями no-rc5 и no-idea.В этой главе описаны процедуры установки, настройки и тестирования OpenSSL, включая операциипо генерации и подписи ключей, применяемых для шифрования передаваемой по сетям общего пользованияинформации с использованием протоколов Интернет, поддерживающих OpenSSL.Ограничения и допущенияИсходные коды находятся в каталоге /var/tmp.Все операции выполняются пользователем с учетной записью root.Используется дистрибутив ASPLinux 7.3 (Vostok).Перекомпиляция ядра не требуется.Процедуры, описанные в этой главе, могут оказаться применимыми для других версий ядра и дистрибутивов Linux, но авторы это не проверяли.ЗАМЕЧАНИЕ В некоторых странах ввоз, распространение и использование программного обеспечениядля криптографии запрещено.ПакетыПоследующие рекомендации основаны на информации, полученной с домашней страницы проектаOpenSSL по состоянию на 22.03.2003.
Регулярно посещайте домашнюю страницу проектаhttp://www.openssl.org/ и отслеживайте обновления.Исходные коды OpenSSL содержатся в архиве openssl-version.tar.gz (последняя доступнаяна момент написания главы стабильная версия openssl-0.9.7a.tar.gz).Инсталляция с помощью rpm-пакетовЕсли вы предпочитаете использование системы со стандартным ядром и программным обеспечением,установленным из rpm-пакетов, для установки или обновления пакета необходимо выполнить следующиеоперации.ЗАМЕЧАНИЕ Авторы настоятельно рекомендуют устанавливать программное обеспечение из исходных кодов.Шаг 1Проверьте, установлен ли пакет openssl с помощью следующей команды:[root@dymatel /]# rpm –iq opensslШаг 2181Глава 12.
OpenSSL – программное обеспечение для безопасной передачи данныхЕсли пакет не установлен, перейдите в каталог, где находится пакет openssl-0.9.6b24asp.i686.rpm. Если вы в соответствии с рекомендациями главы 2 скопировали все пакеты, входящие вдистрибутив, в каталог /home/distrib, то выполните команду:[root@dymatel /]# cd /home/distribи установите:[root@dymatel distrib]# rpm –ihv openssl-0.9.6b-24asp.i686.rpmили обновите пакет:[root@dymatel distrib]# rpm –Uhv openssl-0.9.6b-24asp.i686.rpmПосле установки пакета перейдите к настройке OpenSSL, описанной ниже.Компиляция, оптимизация и инсталляция OpenSSLШаг 1Проверьте целостность данных и подлинность архива, содержащего исходные коды OpenSSL.Одним из способов проверки подлинности и целостности архива является определение его контрольной суммы MD5 и сравнение ее с суммой, опубликованной на сервере разработчика (контрольная суммаopenssl-0.9.7a.tar.gzMD5архивасодержитсявфайлеftp://ftp.openssl.org/source/openssl-0.9.7a.tar.gz.md5).Определите контрольную сумму MD5 пакета:[root@dymatel /]# cd /var/tmp/[root@drwalbr tmp]# md5sum openssl-0.9.7a.tar.gza0d3203ecf10989fdc61c784ae82e531 openssl-0.9.7a.tar.gzСкачайте c сервера разработчика файл, содержащий контрольную сумму MD5 архива openssl0.9.7a.tar.gz:[root@drwalbr tmp]# wget ftp://ftp.openssl.org/source/openssl0.9.7a.tar.gz.md5и сравните ее c контрольной суммой, полученной с помощью команды md5sum:[root@drwalbr tmp]# cat openssl-0.9.7a.tar.gz.md5a0d3203ecf10989fdc61c784ae82e531Если полученные значения сумм совпадают, значит, в вашем распоряжении находится подлинный исохранивший целостность при передаче по сетям общего пользования архив с исходными кодами OpenSSL.Подлинность архива также может быть проверена с использованием утилит GnuPG.
Для этого вамнеобходимо получить с сервера разработчика файлы, содержащие открытый ключ GPG (по непонятным дляавторов причинам он находится не на сервере http://www.openssl.org, а на сервере одного из членовкоманды разработчиков http://richard.levitte.org/pubkey2.asc):[root@drwalbr tmp]# wget http://richard.levitte.org/pubkey2.ascи сигнатуру архива openssl-0.9.7a.tar.gz:[root@drwalbr tmp]# wget ftp://ftp.openssl.org/source/openssl0.9.7a.tar.gz.ascПосле получения необходимых файлов импортируйте открытый ключ pubkey2.asc в базу вашихGPG ключей:[root@drwalbr tmp]# gpg --import pubkey2.ascgpg: key E06D2CB1: public key "levitte@openssl.org" importedgpg: Total number processed: 1gpg:imported: 1 (RSA: 1)Подтвердите подлинность добавленного ключа:[root@drwalbr tmp]# gpg --sign-key levitte@openssl.orgpub(1).(2)(3)2048R/E06D2CB1 created: 1998-09-18 expires: neverlevitte@openssl.orgRichard Levitte <levitte@lp.se>Richard Levitte <richard@levitte.org>trust: -/-182Часть 3.