Протокол Secure Shell - это распространенный способ подключения к удаленному компьютеру через клиент-серверные приложения. Он использует такие инструменты, как ssh, scp и sftp, среди многих других, для обеспечения безопасного процесса аутентификации и последующей зашифрованной связи. По этой причине эти инструменты заменяют другие старые наборы инструментов для удаленного выполнения команд, такие как telnet, rcp и rlogin.

В этом руководстве вы узнаете, как установить и включить серверные / клиентские службы OpenSSH на вашем компьютере. Он также охватывает все необходимые команды (инструменты SSH) для доступа и удаленного управления системами и передачи файлов между ними.

Начало работы с SSH

По умолчанию большинство систем Linux включают клиентские и серверные приложения ssh. Пакеты, которые включают инструменты ssh в дистрибутивы RHEL и Fedora, - это openssh, openssh-server и openssh-client. Использовать grep команда для получения инструментов ssh из установленного списка:

список конфет установлен | grep openssh
instagram viewer

Хотя Ubuntu включает только пакет openssh-client, который также содержит пакет openssh. Используйте команду grep для вывода списка пакетов openssh в Ubuntu, как показано ниже:

sudo dpkg --list | grep openssh
sudo apt-get install openssh-server

Запуск / включение службы SSH

Управление службой openssh может варьироваться от дистрибутива к дистрибутиву, и независимо от настроек по умолчанию он не запускается автоматически. Используйте следующий набор команд, чтобы убедиться, что служба запущена и работает на вашем компьютере с Linux:

systemctl status sshd.service # для Fedora и RHEL
systemctl status ssh # для Ubuntu

Если он не работает, проверьте статус службы следующим образом:

systemctl start sshd.service # для Fedora и RHEL
systemctl ssh start # для Ubuntu

Чтобы запустить openssh-server, как только система загрузится:

systemctl включить sshd.service
systemctl ssh включить

Среди множества других инструментов для использования Протокол SSH для удаленного доступа к системе Linux наиболее часто используются команды ssh для удаленного кода выполнение и вход в систему, где scp и rsync полезны для копирования одного или нескольких файлов между клиентом и сервер.

В этом разделе подробно описаны вышеупомянутые команды для эффективного удаленного управления.

Удаленный вход

SSH - это команда, которую вы чаще всего будете использовать для удаленной настройки вашего Linux-сервера, на котором запущена служба sshd. Используйте команду ssh, чтобы проверить, можете ли вы войти на свой сервер Linux для выполнения команд.

Вы можете использовать другую машину Linux для входа на свой сервер, или вы можете получить представление о ней, смоделировав ее на своем сервере. localhost следующее:

Для удаленного входа в учетную запись Ubuntu на X.X.X.X (где X.X.X.X - IP-адрес удаленного устройства):

ssh [email protected]

Для удаленного входа в систему как локальный пользователь:

ssh localhost

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

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

После этого введите выход команда, чтобы завершить сеанс и вернуться в локальную систему. Если не удается закрыть удаленную оболочку, ~. Клавиши также выполняют аналогичную задачу и выводят «Соединение с X.X.X.X закрыто».

Удаленное выполнение

Команда ssh позволяет выполнять команды в удаленной системе и возвращает вывод на локальный компьютер. Например,

Следующая команда запускается от имени пользователя убунту на удаленном сервере и возвращает имя хоста:

ssh [email protected] имя хоста

Чтобы выполнить команду, которая включает параметры или флаги, заключите ее в двойные кавычки, как показано ниже:

ssh [email protected] "кот / tmp / новый_файл"

Приведенная выше команда возвращает содержимое указанного выше файла на ваш локальный экран.

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

Теперь запустите команды следующим образом:

ssh -X [email protected] имя хоста и cat / tmp / new_file / & exit

Копирование файлов через scp и rsync

В scp команда позволяет передавать / копировать файлы с удаленной системы на локальную и наоборот. Его функциональность аналогична команде rcp, но с шифрованием RSA. Ниже приведены некоторые примеры.

Скопируйте файл от /etc/demo каталог удаленного компьютера в его /tmp папку следующим образом:

scp [email protected]: / домой / ubuntu / демонстрация / файл / tmp

Это также включает рекурсивное копирование, что означает, что вы можете предоставить команде каталог, и она копирует все файлы / папки вниз по иерархии в другой локальный каталог.

scp -r локальный: / домашний / убунту / / tmp

Вы также можете использовать команду scp для резервного копирования файлов и каталогов, но rsync - лучшая утилита для резервного копирования по нескольким причинам:

  • scp не может сохранить права доступа к файлу / каталогу и время / дату.
  • Он также не может идентифицировать уже скопированные файлы и каталоги.

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

ls -l / etc / demo / tmp / demo

Повторите команду scp выше и повторно перечислите каталоги, чтобы проверить, заменяет ли он уже скопированный файл / каталоги с его отметкой времени:

Связанный:Безопасное копирование файлов в Linux с помощью команды Scp

В -p флаг поскольку команда scp может помочь сохранить метку времени или разрешения на запись, но она по-прежнему заменяет уже скопированные файлы. Чтобы преодолеть эти недостатки, используйте rsync в качестве средства резервного копирования. Сначала удалите файлы в /tmp каталог, чтобы продолжить пример ниже. Используйте команду rsync с флаг для рекурсивного архивирования и -v вариант для подробного копирования /home/ubuntu/demo файлы в /tmp каталог, а именно:

rsync -av [email protected]: / home / ubuntu / demo / tmp

Перечислите /tmp каталог, чтобы отметить, как он сохраняет время создания файла или каталога.

Наконец, перезапустите rsync команда, чтобы убедиться, что она не копирует ни один файл.

Знакомство с SSH

Статья представляет собой руководство по наиболее широко используемому протоколу удаленного управления серверами Linux. Мы покажем, как использовать наиболее важные команды SSH, с некоторыми советами и приемами, которые упростят копирование файлов и управление ими.

Начало понимания команд / инструментов SSH и их функций может изменить ваше представление об управлении системой / сервером, поскольку оно открывает возможности не только SSH, но и терминала Linux. Это мощный инструмент, обеспечивающий значительную безопасность, а также дополнительные функции, которые слишком сложны, чтобы описать их в одном руководстве.

Эффективно управляйте удаленными SSH-соединениями с помощью этих команд Linux

Узнайте, как сэкономить время на управлении удаленными серверами с помощью этих команд SSH и Linux.

Читать далее

доляТвитнутьЭлектронное письмо
Похожие темы
  • Linux
  • SSH
  • Удаленный доступ
Об авторе
Румайса Ниази (Опубликовано 2 статьи)

Румайса - писатель-фрилансер в MUO. Она прошла долгий путь от математика до энтузиаста информационной безопасности и работает аналитиком SOC. В ее интересы входит чтение и письмо о новых технологиях, дистрибутивах Linux и обо всем, что связано с информационной безопасностью.

Ещё от Rumaisa Niazi

Подписывайтесь на нашу новостную рассылку

Подпишитесь на нашу рассылку технических советов, обзоров, бесплатных электронных книг и эксклюзивных предложений!

Нажмите здесь, чтобы подписаться