При запуске программы stunnel на сервере мы задали использование сертификата авторизации, но не сказали, как проверять его подлинность. Для указания уровня контроля применяется ключ -v
□ 0
□ 1
□ 2
□ 3
-а
.SSL-сервер может расшифровывать трафик и передавать на порт принимающей программы не только локального, но и другого компьютера. Таким образом, сервер SSL и сервер получатель трафика могут быть на разных компьютерах. Неплохо, чтобы сервер после расшифровки данных прятал IP-адрес клиента, с которого были отправлены данные, и это возможно, если указать опцию -T
Во время установки пакета OpenSSL на вашем диске создаются сертификаты и пары ключей, которые используются для шифрования. Все это находится в директории /usr/share/ssl/
.С помощью опции -n
Для большинства основных протоколов существуют номера портов, уже ставшие стандартом. Есть даже названия защищенных вариантов протоколов, которые, как правило, получаются за счет добавления к наименованию основного протокола буквы s, которая и указывает на безопасное соединение через SSL. Эта информация приведена в табл. 5.1.
Таблица 5.1
. Список протоколов с номерами портовПротокол | Название SSL варианта протокола | Номер TCP-порта |
---|---|---|
HTTP | HTTPS | 443 |
SMTP | SMTPS | 465 |
LDAP | LDAPS | 636 |
TELNET | TELNETS | 992 |
SHELL | SSHELL | 614 |
FTP | FTPS | 990 |
FTP-DATA | FTPS-DATA | 989 |
IMAP | IMAPS | 993 |
POP3 | POP3S | 995 |
IRC | IRCS | 994 |
Обратите внимание, что для протокола FTP требуется два защищенных канала. Один используется для управляющего соединения, а второй — для передачи данных. К этому мы еще вернемся в гл. 10, когда будем рассматривать этот протокол.
5.2.3. Шифрование файлов
Некоторые серверы могут использоваться для хранения архивных данных, которые, несмотря на такой статус, должны быть скрыты от стороннего взгляда. Наилучший вариант защиты — шифровать файлы, чтобы никто не смог увидеть их содержимое, и пакет OpenSSL предоставляет нам такую возможность.
Шифрование необходимо не только для резервных копий файлов или архивных данных, но и для файлов с секретной информацией, которые необходимо передать по незащищенным каналам связи, например, через E-mail-почту или публичный FTP-сервер.
Для шифрования необходимо выполнить команду /usr/bin/openssl
/usr/bin/openssl алгоритм -in файл1 -out файл2
Количество используемых алгоритмов исчисляется десятками. Наиболее распространенным является DES (Data Encryption Standard, стандарт шифрования данных). Я тоже отдаю предпочтению именно ему. О поддерживаемых алгоритмах можно узнать на сайте разработчиков или по команде man openssl
Параметр -in
-out
указывается имя файла, куда сохраняется результат.При дешифровании необходимо добавить ключ -d
-in
задается закодированный файл, а в параметре -out
— имя файла для сохранения результата:/usr/bin/openssl алгоритм -d -in файл2 -out файл1
Рассмотрим пример шифрования всего списка паролей /etc/passwd
в файл /home/passwd по алгоритму DES. Для этого выполняем команду:/usr/bin/openssl des -in /etc/passwd -out /home/passwd
В ответ на эту директиву программа попросит вас укачать пароль и затем подтвердить ввод, дабы исключить возможные ошибки.
Выполните команду cat /home/passwd
Для расшифровки файла выполните команду:
/usr/bin/openssl des -d -in /home/passwd -out /etc/passwd
Таким нехитрым способом мы можем безопасно хранить копию файла с паролями. К теме резервного копирования мы вернемся в