Статьи

Использование Secure Shell и Secure Copy

Одним из способов, с помощью которого веб-разработчики и веб-мастера могут дополнительно обеспечить безопасный доступ к своим серверам и с их серверов, является ограничение использования telnet и, где это возможно, ftp.

Хотя ftp может быть жестко настроен и запущен под ssl для дополнительной безопасности, он и telnet остаются слабыми сторонами в безопасности сервера. Альтернативы доступны.

Для начала, требуя использования защищенной оболочки (ssh) в качестве замены для доступа к telnet, пользовательские сессии шифруются и основываются на ключах, а не на имени пользователя и пароле в виде открытого текста. SSH легко доступен для всех пользователей платформы с терминалами, терминальными приложениями и клиентами GUI, готовыми для Linux, Macintosh и Windows. На большинстве * Nix-серверов по умолчанию установлен ssh-сервер, и telnet можно безопасно отключить, сохраняя при этом доступ через командную строку (терминал) и клиентов (большинство из которых поддерживают как telnet, так и ssh).

Для серверов на базе Windows доступны ssh-серверы с открытым исходным кодом, одним из самых популярных из которых является OpenSSH для Windows (ранее работавший под именем Network Simplicity). Это устанавливает SSH под Cygwin без необходимости загружать полную установку Cygwin на сервере Windows.

Непосредственным преимуществом использования ssh является доступ к защищенному копированию (scp) и безопасному ftp (sftp). Оба из них предлагают зашифрованный метод для передачи файлов и являются полнофункциональными заменами для telnet и ftp.

SSH, scp и sftp можно использовать из командной строки так же, как пользователи использовали telnet и ftp. Некоторые примеры приведены ниже:

SSH

'ssh [email protected]'

‘ssh domainname.com -l user’ (для пользователей OS X). Если это ваш первый вход в систему, вам будет предложено принять и сгенерировать запись в локальном файле known_hosts, а также указать пароль, который передается в защищенном режиме. После этого вы получите доступ ко всем тем же функциям командной строки, что и в telnet.

SCP — для передачи файла или файлов из одной системы в другую. Например, если у меня есть приложение для загрузки и установки на моем сервере, я мог бы выполнить следующее:

'scp application.tar.gz [email protected]:'

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

'scp *.rpm [email protected]:'

и снова файлы передаются надежно.

Еще одним преимуществом scp является небольшое дополнительное сжатие, которое сокращает время передачи.

SFTP — вход в систему такой же, как ftp в командной строке,

'sftp [email protected]'

и после ответа на запрос пароля запускается безопасный сеанс ftp.

Сессии «без пароля» доступны, если вы настроили ключ для обработки безопасного рукопожатия между вашей системой и сервером, запустив ssh-keygen. Хороший учебник можно найти в Fedora News

Клиенты доступны для всех платформ, таких как перечисленные ниже.

Linux
Родные терминальные оболочки, включая Bash, CSH (C Shell) и KSH (Korn Shell)
-SSH-совместимые инструменты, такие как инструменты gFTP и KDE ftp

макинтош
— родные терминальные оболочки как в Linux
MacSSH и MacSFTP

Windows
OpenSSH для Windows (клиент включен)
Putty , любимый многими пользователями Windows.