Безопасность

Безопасность имеет много форм в компьютерном окружении. Эта глава дает примеры трех различных типов безопасности: доступ, предупреждение и определение.

Доступ для пользователей обычно поддерживается login или приложением, разработанным для поддержки функции login. В этой главе мы покажем, как расширить login установкой политик модулями PAM. Доступ через сети так же может быть обезопасен политиками, установленными iptables, обычно называемыми firewall. Для приложений, которые не обеспечивают хорошую безопасность, вы можете использовать пакет Stunnel для размещения демона приложения внутри SSL туннеля.

Предупреждению вторжений, таких как троян, помогают такие приложения, как GnuPG, особенно способные поддтвердить подписанные пакеты, которые претерпели изменения TAR архива после создания их менеджером пакетов.

В конце мы коснемся определения при помощи пакета, который сохраняет "сигнатуры" критических файлов (описанных администратором) и затем регенерирует их и сравнивает с файлами, которые были изменены.

OpenSSL-0.9.7e

Введение в OpenSSL

Пакет OpenSSL содержит средства управления и библиотеки, связанные с шифрованием. Это полезно для предоставления функций шифрования другим пакетам, особенно OpenSSH, почтовым приложениям и интернет браузерам (для доступа к HTTPS сайтам).

Информация о пакете

Зависимости OpenSSL

Опционально

bc-1.06 (рекомендуется при запуске тестов во время сборки)

Установка OpenSSL

Установим OpenSSL запуском следующих команд:

sed 's/^passwd/openssl-passwd/' doc/apps/passwd.pod \ > doc/apps/openssl-passwd.pod && rm doc/apps/passwd.pod && mv doc/crypto/{,openssl_}threads.pod && ./config --openssldir=/etc/ssl --prefix=/usr shared && sed -i 's%SHLIBDIRS= fips crypto ssl%SHLIBDIRS= crypto ssl%g' Makefile && make MANDIR=/usr/share/man

А теперь, как пользователь root:

make MANDIR=/usr/share/man install && cp -r certs /etc/ssl

Описание команд

no-rc5 no-idea: Когда добавляется к команде ./config, то уничтожается сборка этих методов кодирования. Так же вам может быть необходима патентная лицензия для использования этих методов в ваших проектах.

rm doc/apps/passwd.pod: Эта команда предупредит OpenSSL от установки собственной passwd man-страницы поверх имеющейся с тем же именем.

mv doc/crypto/{,openssl_}threads.pod: Эта команда предупредит OpenSSL от перезаписи существующих man-страниц от Perl.

sed -i 's%SHLIBDIRS= fips crypto ssl%SHLIBDIRS= crypto ssl%g' Makefile: Эта команда предупредит установку несуществующей библиотеки libfips.

make MANDIR=/usr/share/man; make MANDIR=/usr/share/man install: Эти команды установят OpenSSL с man-страницами в /usr/share/man вместо /etc/ssl/man.

cp -r certs /etc/ssl: Сертификаты должны быть скопированы вручную поскольку скрипт install пропускает этот шаг.

Конфигурация OpenSSL

Файлы конфигурации

/etc/ssl/openssl.cnf

Конфигурационная информация

Большинство людей, кто только желает использовать OpenSSL для предоставления функций другим программам, таким как OpenSSH и интернет браузеры, не должны беспокоиться о конфигурации OpenSSL.

Содержание

Установленные программы: c_rehash и openssl
Установленные библиотеки: libcrypto.[so,a] и libssl.[so,a]
Установленные директории: /etc/ssl и /usr/include/ssl

Короткое описание

c_rehash

это Perl скрипт, который сканирует все файлы в директории и добавляет символические ссылки к их рассеченным величинам.

openssl

средство командной строки для использования различных функций шифрования библиотек шифрования OpenSSL из оболочки. Оно может быть использовано для различных функций, документированных в man 1 openssl.

libcrypto.[so,a]

включает широкий диапазон алгоритмов шифрования, используемых различными стандартами интернет. Сервисы, предоставленные этими библиотеками, используются OpenSSL внедрениями SSL, TLS и S/MIME, а так же они могут быть использованы для внедрения OpenSSH, OpenPGP и других стандартов шифрования.

libssl.[so,a]

внедряют протоколы Secure Sockets Layer (SSL v2/v3) и Transport Layer Security (TLS v1). Предоставляют богатый API, документация по которому может быть найдена запуском команды man 3 ssl.