Библиотека сайта rus-linux.net
Одна из самых распространенных задач, возникающих при работе в сети – удаленный доступ к другим компьютерам и предоставление такого доступа.
Для решения этой задачи используется ставший уже традиционным протокол SSH (Secure Shell). В отличие от устаревших протоколов, таких как telnet и rsh/rlogin/rcp, которые передают данные прямым текстом и подвержены обыкновенному прослушиванию и различным атакам, SSH реализует соединение с удаленным компьютером, защищающее от:
- прослушивания данных, передаваемых по этому соединению;
- манипулирования данными на пути от клиента к серверу;
- подмены клиента либо сервера путем манипулирования IP-адресами, DNS либо маршрутизацией.
В дополнение к отличным характеристикам в области обеспечения безопасного клиент-серверного соединения, SSH обладает следующими возможностями:
- сжатие передаваемых данных;
- туннелирование каналов внутри установленного соединения – в т.ч. соединений с X-сервером;
- широкая распространенность: существуют реализации SSH для самых различных аппаратных платформ и операционных систем.
OpenSSH – это входящая в дистрибутив реализация SSH, поддерживающая версии 1.3, 1.5 и 2.0 протокола SSH, и распространяемая на условиях лицензии BSD. Эта реализация включает в себя:
- клиентские программы ssh, scp и sftp (используются для запуска программ на удаленных серверах и копирования файлов по сети);
- серверные программы sshd, sftp-server (используются для предоставления доступа по протоколу SSH);
- вспомогательные программы make-ssh-known-hosts, rescp, ssh-keygen, ssh-add, ssh-agent, ssh-copy-id, ssh-keyscan.