Рейтинговые книги
Читем онлайн Linux: Полное руководство - Денис Колисниченко

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 73 74 75 76 77 78 79 80 81 ... 158

Клиентская программа ssh находится в пакете openssh-clients вместе с типовым конфигурационным файлом /etc/ssh/ssh_config. Настройки можно задавать и из командной строки, запуская ssh с соответствующими ключами. Основные ключи и аргументы перечислены в таблице 11.5.

Ключи программы ssh Таблица 11.5

Ключ Назначение -а Отключает перенаправление аутентификации агента соединения -А Включает перенаправление аутентификации агента соединения -с blowfish|3des|des Позволяет выбрать алгоритм шифрования при использовании первой версии протокола SSH. Можно указать blowfish, 3des или des -c Задает использование сжатия всех данных во всех выходных потоках с использованием gzip. -f Данная опция переводит ssh в фоновый режим после аутентификации пользователя. Рекомендуется использовать для запуска программы X11. Например: ssh -f host xterm -i идент_файл Задает нестандартный идентификационный файл (для нестандартной RSA/DSA-аутентификации) -l логин_имя Указывает, от имени какого пользователя будет осуществляться регистрации на удаленной машине -p порт Определяет порт, к которому подключится программа ssh (по умолчанию используется порт 22) -q Переводит программу ssh в «тихий режим>>. При этом будут отображаться только сообщения о фатальных ошибках. Все прочив предупреждающие сообщения а стандартный выходной поток выводиться не будут -V Включает отображение всей отладочной информации -x Отключить перенаправление X11 -X Включить перенаправление X11 -1 Использовать только первую версию протокола SSH (принудительно) -2 Использовать только вторую версию протокола SSH (принудительно) -4 Разрешается использовать IP-адреса только в формате IPv4 -6 Разрешается использовать IP-адреса только в формате IPv6

Формат команды:

ssh [ключи] [ключи_с_аргументами] [логин_имя@]хост.домен [команда]

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

Аутентификация средствами SSH

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

♦ По принципу доверия. При этом способе проверяется, внесено ли имя компьютера, с которого производится доступ, в файл ~/.rhosts (или ~/.shosts). Если его имя (IP-адрес) внесено, то пользователю разрешается доступ без проверки пароля. Этот способ очень уязвим для разнообразных атак (подмены IP-адреса и т.п.), так что использовать его категорически не рекомендуется. Для того, чтобы разрешить этот способ, нужно установить значение no для директивы IgnoreRHosts и yes для RhostsAuthentication в файле /etc/openssh/sshd_conf, а чтобы запретить — значения для этих директив поменять на противоположные.

♦ Усиленная аутентификация по принципу доверия. Этот способ в принципе повторяет предыдущий, за тем лишь исключением, что проверка имени компьютера (IP-адреса) производится в защищенном режиме. При этом используется шифрование открытым ключом. За включение и отключение данного механизма аутентификации отвечают директивы RhostsRSAAuthentication и IgnoreRHosts. Несмотря на некоторые усовершенствования, этот способ по-прежнему является небезопасным.

♦ Аутентификация самого пользователя с использованием шифрования с открытым ключом. На момент регистрации у пользователя должен быть доступ к файлу своего секретного ключа, и он должен предоставить пароль для его дешифровки. Этот способ аутентификации является самым надежным, но и самым неудобным. Кроме того, он вынуждает пользователей постоянно иметь под рукой файл с ключом. За включение и отключение этого способа отвечает директива PubkeyAulhentication (или RSAAuthentication в зависимости от версии).

♦ Аутентификация с помощью пароля. Это оптимальный способ: он удобен в использовании и в то же время достаточно безопасен. Именно он и используется в большинстве случаев. В отличие от telnet, пароль здесь передается в зашифрованном виде. Основной недостаток данного метода заключается в относительной слабости паролей (их длина зачастую составляет менее 8 символов). Это позволяет подбирать их с помощью специальных программ. За включение и отключение этого способа отвечает директива PasswordAnthentication.

Какой способ использовать — решать вам. Однако настоятельно не рекомендуется применение первых двух способов. Их использование допустимо лишь в исключительных случаях и в особых условиях.

Бесплатный SSH-клиент для Windows можно скачать у автора, Роберта Каллагана, сайт http://www.zip.com.au/~roca/ttssh.html.

Глава 12

Разделение ресурсов: NFS и SAMBA

12.1. NFS — сетевая файловая система

Сетевая файловая система (Network File Sharing) — это протокол, позволяющий монтировать файловые системы на удаленных компьютерах. При этом создается ощущение, что эти файловые системы располагаются локально, если не считать, конечно, скорости соединения. Сетевая файловая система чем-то напоминает службу «Доступ к файлам и принтерам» сети Microsoft.

Служба NFS основана на RPC (Remote Procedure Call): клиент вызывает функции в программе сервера. Клиентскому компьютеру не требуется дополнительного программного обеспечения, чтобы воспользоваться NFS: ядро Linux само определяет, что запрошенный файл находится на NFS-сервере, и автоматически генерирует RPC-вызов, чтобы получить доступ к файлу.

Версия 2 протокола NFS появилась в ядре 1.2. Начиная с версии ядра 2.2.18, поддерживается версия 3, в которой улучшена производительность благодаря безопасной асинхронной записи файлов, добавлены поддержка файлов размером больше 2 Гб и средства блокировки файлов. В ядра 2.4 и выше встроена полнофункциональная NFSv3, работающая поверх протокола TCP (в дополнение к обычному UDP), и большинство популярных дистрибутивов ее поддерживают. Четвертая версия NFS с повышенной безопасностью появилась в Red Hat Enterprise Linux 4.

FAQ и HOWTO-документы можно найти на домашней странице проекта nfs.sourceforge.net.

12.1.1. Клиент NFS: монтирование сетевого каталога

Монтирование осуществляется с помощью команды mount:

# mount -t nfs -о timeo=30 nfsserver.domain.com:

/home/den /home/den/remote/

Прежде всего, нужно указать тип файловой системы: -t nfs. Параметр timeo задает время ожидания, равное 3 секундам. Интересующая нас файловая система находится на компьютере nfsserver.domain.com и смонтирована там как /home/den. Мы же подмонтируем ее в подкаталог домашнего каталога на локальном компьютере /home/den/remote/.

Для монтирования сетевых файловых систем предназначены ключи команды mount, перечисленные в таблице 12.1.

Ключи команды mount для сетевых файловых систем Таблица 12.1

Ключ Назначение bg Если первая попытка монтирования файловой системы NFS окажется неудачной. то попытки будут автоматически повторяться в фоновом режиме fg Если первая попытка монтирования файловой системы NFS окажется неудачной. то попытки будут автоматически повторяться в приоритетном режиме. Это значение установлено по умолчанию soft Задержка при выполнении операции, связанной с файлом, расположенным в сетевой файловой системе NFS (возникающая при сбое сервера или отключении сети), будет приводить к отправке приложению сообщения об ошибке ввода/вывода. И хотя некоторые приложения могут корректно обрабатывать такую ошибку, но большинство из них все-таки такой возможностью не обладают. Не рекомендуется устанавливать это значение, так как оно может привести к появлению испорченных файлов и потере данных hard Задержка при выполнении операции, связанной с файлом, расположенным в сетевой файловой системе NFS, будет приводить к приостановке, а затем возобновлению процесса с прерванного места. Таким образом будут предприниматься повторные попытки выполнения операции. Значение hard установлено по умолчанию tcp Монтирует сетевую файловую систему с помощью протокола TCP, а не UDP rsize=1024 Задает размер информации, пересылаемый при чтении файлов за один раз. По умолчанию этот размер равен 1024 байта. Однако зачастую имеет смысл увеличить это значение (например, до 4096) wsize=1024 Аналогично rsize, но для операции записи noexec Запрещает выполнение программ или сценариев в монтируемой файловой системе. При этом клиентом будет игнорироваться атрибут «исполнение»

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

1 ... 73 74 75 76 77 78 79 80 81 ... 158
На этой странице вы можете бесплатно читать книгу Linux: Полное руководство - Денис Колисниченко бесплатно.
Похожие на Linux: Полное руководство - Денис Колисниченко книги

Оставить комментарий