Чтение онлайн

на главную - закладки

Жанры

Linux глазами хакера

Флёнов Михаил Евгеньевич

Шрифт:

stunnel -с -d 1000 -r 192.168.77.1:9002

Здесь у нас появился один новый ключ:

– c
— означает, что туннель создается для клиента. По умолчанию программа stunnel запускается в серверном режиме.

Помимо этого, в нашем примере присутствуют уже известные параметры:

– d
с указанием порта, на котором необходимо ждать подключения (значение 1000), и
– r
, в котором указывается адрес и порт для передачи зашифрованных данных.

Теперь достаточно настроить свою клиентскую программу так, чтобы при отправке почты она направлялась на порт (в данном случае 1000) компьютера, где запущен stunnel-клиент, который будет шифровать данные и пересылать их на порт 9002 сервера с адресом 192.168.77.1. Там закодированные данные будет принимать stunnel-сервер, расшифровывать и передавать их на 25 порт сервера.

5.2.2. Дополнительные возможности OpenSSL

При запуске программы stunnel на сервере мы задали использование сертификата авторизации, но не сказали, как проверять его подлинность. Для указания уровня контроля применяется ключ

– v
, после которого идет число:

□ 

0
— нет никакой проверки;

□ 

1
— если сертификат присутствует, то он проверяется на подлинность. Если получен отрицательный результат, то соединение разрывается. Наличие сертификата не является обязательным, соединение может быть установлено и без него;

□ 

2
— на данном уровне сертификат является обязательным. Если сертификата нет или он не является подлинным, соединение не может быть установлено;

□ 

3
— наличие сертификата обязательно, а помимо этого, он должен быть в локальном хранилище (специальный список). В этом случае нужно указать директорию, в которой находятся сертификаты с помощью опции
– а
.

SSL-сервер может расшифровывать трафик и передавать на порт принимающей программы не только локального, но и другого компьютера. Таким образом, сервер SSL и сервер получатель трафика могут быть на разных компьютерах. Неплохо, чтобы сервер после расшифровки данных прятал IP-адрес клиента, с которого были отправлены данные, и это возможно, если указать опцию

– T
.

Во время установки пакета OpenSSL на вашем диске создаются сертификаты и пары ключей, которые используются для шифрования. Все это находится в директории /usr/share/ssl/.

С помощью опции

– n
можно непосредственно указать протокол, с которым будет происходить работа. В настоящий момент поддерживаются POP3 (Post Office Protocol, протокол обработки входящих сообщений), SMTP (Simple Mail Transfer Protocol, простой протокол электронной почты)) или NNTP (Network News Transfer Protocol, сетевой протокол передачи новостей).

Для большинства основных протоколов существуют номера портов, уже ставшие стандартом. Есть даже названия защищенных вариантов протоколов, которые, как правило, получаются за счет добавления к наименованию основного протокола буквы 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

Таким нехитрым способом мы можем безопасно хранить копию файла с паролями. К теме резервного копирования мы вернемся в гл. 13, которая будет полностью посвящена этому вопросу.

Поделиться:
Популярные книги

Гримуар темного лорда VII

Грехов Тимофей
7. Гримуар темного лорда
Фантастика:
боевая фантастика
попаданцы
аниме
фэнтези
5.25
рейтинг книги
Гримуар темного лорда VII

Паладин из прошлого тысячелетия

Еслер Андрей
1. Соприкосновение миров
Фантастика:
боевая фантастика
попаданцы
6.67
рейтинг книги
Паладин из прошлого тысячелетия

Прокурор

Безуглов Анатолий Алексеевич
Детективы:
прочие детективы
7.00
рейтинг книги
Прокурор

Леди Малиновой пустоши

Шах Ольга
Любовные романы:
любовно-фантастические романы
6.20
рейтинг книги
Леди Малиновой пустоши

Супервольф

Ишков Михаил Никитич
Секретный фарватер
Проза:
современная проза
5.00
рейтинг книги
Супервольф

Ермак

Федоров Евгений Александрович
Проза:
историческая проза
6.25
рейтинг книги
Ермак

Наномашины, наследник! Том 9

Новиков Николай Васильевич
9. Первый среди карапузов
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Наномашины, наследник! Том 9

Снежная королева

Виндж Джоан
1. Снежная королева
Фантастика:
научная фантастика
8.50
рейтинг книги
Снежная королева

"Дальние горизонты. Дух". Компиляция. Книги 1-25

Усманов Хайдарали
Собрание сочинений
Фантастика:
фэнтези
боевая фантастика
попаданцы
5.00
рейтинг книги
Дальние горизонты. Дух. Компиляция. Книги 1-25

Преисподняя

Лонг Джефф
54. Книга-загадка, книга-бестселлер
Фантастика:
научная фантастика
8.29
рейтинг книги
Преисподняя

Книгоедство

Етоев Александр Васильевич
Проза:
современная проза
5.00
рейтинг книги
Книгоедство

Товарищ "Чума" 2

lanpirot
2. Товарищ "Чума"
Фантастика:
городское фэнтези
попаданцы
альтернативная история
5.00
рейтинг книги
Товарищ Чума 2

Контртеррор

Валериев Игорь
6. Ермак
Фантастика:
альтернативная история
5.00
рейтинг книги
Контртеррор

КГБ СССР. 1954–1991 гг. Тайны гибели Великой державы

Хлобустов Олег Максимович
Секретные миссии
Научно-образовательная:
история
cпецслужбы
военная история
6.25
рейтинг книги
КГБ СССР. 1954–1991 гг. Тайны гибели Великой державы