Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
serverguide-precise-ru.pdf
Скачиваний:
77
Добавлен:
03.05.2015
Размер:
1.86 Mб
Скачать

Удалённое администрирование

1. Сервер OpenSSH

1.1. Введение

Этот раздел руководства по Ubuntu Server представляет мощную коллекцию инструментов для удалённого управления и обмена данными с сетевыми компьютерами, которая называется OpenSSH. Вы также изучите некоторые конфигурационные настройки, доступные для серверного приложения OpenSSH, и то, как изменять их в вашей системе Ubuntu.

OpenSSH — это свободно распространяемая версия семейства инструментов для удалённого управления компьютерами и передачи файлов с использованием протокола Secure Shell (SSH). Традиционные инструменты, используемые для этих целей, такие как telnet и rcp, небезопасны и передают пользовательский пароль открытым текстом. OpenSSH предоставляет серверный демон и клиентские приложения для облегчения операций защиты, зашифрованного удалённого управления и передачи файлов, эффективно заменяя устаревшие инструменты.

Серверная компонента OpenSSH, sshd, постоянно ожидает клиентских соединений от любых клиентских программ. Когда приходит запрос на соединение, sshd устанавливает правильный тип соединения, в

зависимости от типа подключаемого клиента. Например, если удалённый компьютер пытается подключиться с помощью клиента ssh, то сервер OpenSSH после аутентификации запустит сеанс удалённого управления. Если же удалённый пользователь подключается с помощью scp, серверный демон OpenSSH после аутентификации организует безопасное копирование файлов между сервером и клиентом. OpenSSH может использовать множество методов аутентификации, включая обычный пароль, использование открытого ключа и сертификаты Kerberos.

1.2. Установка

Установка клиента и сервера OpenSSH проста. Для установки клиента OpenSSH на вашу систему Ubuntu используйте следующую команду в строке терминала:

sudo apt-get install openssh-client

Для установки сервера OpenSSH и всех необходимых файлов выполните эту команду в строке терминала:

94

Удалённое администрирование

sudo apt-get install openssh-server

Пакет openssh-server также может быть выбран для установки во время инсталляции Server Edition.

1.3. Конфигурация

Вы можете настроить режим работы по умолчанию серверного приложения OpenSSH, sshd, редактируя файл /etc/ssh/sshd_config. Для получения информации о конфигурационных директивах, используемых в этом файле, вы можете просмотреть соответствующее руководство с помощью следующей команды, выполненной в командной строке терминала:

man sshd_config

Существует множество директив в конфигурационном файле sshd, управляющих такими вещами, как настройки соединений и способы аутентификации. Далее следуют примеры конфигурационных директив, которые могут быть изменены редактированием файла /etc/ssh/sshd_config.

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

Создайте копию файла /etc/ssh/sshd_config и защитите её от записи, введя в терминале следующие команды:

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original sudo chmod a-w /etc/ssh/sshd_config.original

Ниже даны примеры конфигурационных директив, которые вы можете изменить:

Чтобы настроить демона OpenSSH в режим прослушивания TCP порта 2222, вместо стандартного TCP порта 22, измените директиву Port таким образом:

Port 2222

Чтобы sshd разрешал использовать процедуру идентификации пользователя с помощью данных, основанных на открытом ключе, просто добавьте или измените следующую строку:

PubkeyAuthentication yes

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

95

Удалённое администрирование

Чтобы ваш сервер OpenSSH отображал содержимое файла /etc/issue.net в качестве сообщения перед логином, просто добавьте или измените следующую строку:

Banner /etc/issue.net

В файле /etc/ssh/sshd_config.

После внесения изменений в файл /etc/ssh/sshd_config, сохраните его и, чтобы изменения вступили в силу, перезапустите серверное приложение sshd, выполнив следующую команду в терминале:

sudo /etc/init.d/ssh restart

Существует множество других директив конфигурации sshd для изменения поведения серверного приложения под ваши нужды. Однако учтите, что если единственный способ доступа к серверу — это ssh, и вы допустили ошибку конфигурации sshd в файле /etc/ssh/ sshd_config, то ваш сервер может оказаться заблокированным, пока его не перезагрузите. В дополнение, если указана неправильная конфигурационная директива, сервер sshd может отказаться загружаться, поэтому будьте очень осторожны, когда редактируете этот файл на удалённом сервере.

1.4. Ключи SSH

Ключи SSH разрешают аутентификацию пользователей между двумя узлами без необходимости ввода пароля. Аутентификация по ключам SSH использует два ключа: секретный и открытый.

Чтобы сгенерировать ключи, наберите в приглашении терминала:

ssh-keygen -t dsa

Эта команда сгенерирует ключи с помощью метода Digital Signature Algorithm (DSA). Во время процесса генерации вам будет предложено ввести пароль. Просто нажмите Enter на запрос о создании ключа.

По умолчанию открытый ключ сохраняется в файл ~/.ssh/id_dsa.pub, в то время как секретный — в ~/.ssh/id_dsa. Теперь скопируйте файл id_dsa.pub на удалённый компьютер и добавьте его к ~/.ssh/authorized_keys командой:

ssh-copy-id username@remotehost

96

Удалённое администрирование

В конце дважды проверьте права доступа к файлу authorized_keys. Только аутентифицированный пользователь должен имть права на чтение и запись этого файла. Если права установлены некорректно, измените их:

chmod 600 .ssh/authorized_keys

Теперь у вас есть возможность соединиться по SSH с этим узлом без ввода пароля.

1.5. Ссылки

Страница SSH на Ubuntu Wiki1.

Сайт OpenSSH2

Страница Wiki о расширенных настройках OpenSSH3

1https://help.ubuntu.com/community/SSH

2http://www.openssh.org/

3https://wiki.ubuntu.com/AdvancedOpenSSH

97

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]