Linux/Unix SSH, PingКоманды связи FTP и Telnet

⚡ Умное резюме

Команды связи Linux, такие как SSH, PingFTP и Telnet позволяют подключаться к удаленным системам, проверять доступность сети, передавать файлы и администрировать серверы непосредственно из терминала на любой машине под управлением Linux или Unix.

  • 🔐 СШ: Secure Shell подключается к удаленным машинам по зашифрованному каналу через TCP-порт 22, заменяя небезопасный Telnet для администрирования серверов.
  • 📡 Ping: ping Эта команда отправляет ICMP-пакеты для подтверждения доступности хоста и оценки состояния соединения.
  • 📁 FTP: Протокол передачи файлов (FTP) позволяет загружать и скачивать файлы между локальными и удаленными компьютерами с помощью таких команд, как put и get.
  • 💻 Телнет: Telnet открывает удаленную терминальную сессию на порту 23, но отправляет данные, включая пароли, в открытом виде.
  • 🔒 Безопасность: SSH и SFTP предпочтительнее Telnet и обычного FTP, поскольку они шифруют учетные данные и данные при передаче.
  • 🤖 Помощь ИИ: Искусственный интеллект и GitHub Copilot могут генерировать команды подключения и помогать диагностировать сетевые ошибки.

Команды связи Linux и Unix: SSH, Ping, FTP и Telnet

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

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

Итак, давайте изучим их по одному: SSH, Ping, FTP и Telnet.

SSH

SSH, что расшифровывается как Secure Shell (защищенная оболочка), используется для безопасного подключения к удаленному компьютеру. По сравнению с Telnet, SSH безопаснее, поскольку соединение клиент/сервер аутентифицируется с помощью цифрового сертификата, а пароли шифруются. Поэтому он широко используется системными администраторами для управления удаленными серверами Linux.

Для входа в удаленную Linux-машину с помощью SSH используется следующий синтаксис:

ssh username@ip-address or hostname

На скриншоте ниже показано подключение терминала к удаленной машине с помощью команды ssh.

Вход на удалённую машину Linux с помощью команды ssh.

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

ls

Результат выполнения команды `ls` выглядит следующим образом.

Вывод команды ls, отображающей содержимое каталога по SSH-соединению.

Аналогично, выполните команду pwd, чтобы вывести текущий рабочий каталог:

pwd

Команда pwd возвращает путь к рабочему каталогу, как показано ниже.

Вывод команды pwd, показывающий рабочий каталог в SSH-соединении.

Ping

ping Эта утилита обычно используется для проверки работоспособности вашего соединения с сервером. Также она используется для:

  • Анализ сетевых и хостовых соединений
  • Tracking производительность сети и управление ею
  • Тестирование аппаратных и программных проблем

Синтаксис команды:

ping hostname or IP-address

Например, ping устройство по его IP-адресу:

ping 172.16.170.1

ping Эта команда отправляет пакеты на IP-адрес и сообщает об ответах, как показано ниже.

Выход ping команда, отправляющая пакеты на IP-адрес

Вы также можете ping хост по его доменному имени:

ping google.com

Приведенный ниже результат показывает ping достижение хоста по его имени хоста.

Выход ping команда обращается к хосту по его доменному имени

В этом случае система отправляет 64-байтовые пакеты данных на IP-адрес (172.16.170.1) или имя хоста (www.google.com). Если хотя бы один из пакетов данных не возвращается или теряется, это указывает на ошибку в соединении. Проверка подключения к Интернету обычно осуществляется этим методом. Вы можете нажать Ctrl + c для выхода из программы. ping петля.

Ftp

FTP — это протокол передачи файлов. Это наиболее предпочтительный протокол для передачи данных между компьютерами. На приведенном ниже рисунке показана передача файла по протоколу FTP между локальным и удаленным компьютерами.

Передача файлов по протоколу FTP между локальным компьютером и удаленным хостом.

Вы можете использовать Ftp чтобы:

  • Войдите в систему и установите соединение с удаленным хостом.
  • Загружать и скачивать файлы
  • Перемещайтесь по каталогам
  • Просмотрите содержимое каталогов

Синтаксис для установления FTP-соединения с удаленным хостом выглядит следующим образом:

ftp hostname or IP-address

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

Аутентификация на удаленном хосте с использованием имени пользователя и пароля по протоколу FTP.

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

Command Функция
директория Отображение файлов в текущем каталоге удаленного компьютера
компакт-диск «имя каталога» Перейдите в каталог "dirname" на удалённом компьютере.
положить файл Загрузите файл с локального компьютера на удаленный.
получить файл Загрузите «файл» с удаленного на локальный компьютер
выход Выйти

На скриншоте ниже показаны некоторые из этих важных команд FTP, выполняемых в рамках сессии.

Выполнение команд FTP, таких как dir, get и put, в терминальной сессии.

Telnet

Telnet поможет вам:

  • Подключитесь к удалённому компьютеру под управлением Linux.
  • Удаленное управление программами и администрирование.

Эта утилита аналогична функции удаленного рабочего стола, которая есть в... Windows машины. На иллюстрации ниже показано Telnet-соединение с удаленным компьютером под управлением Linux.

Telnet-сессия, устанавливающая соединение с удалённым компьютером под управлением Linux.

Синтаксис этой утилиты:

telnet hostname or IP-address

Например, подключитесь к своему компьютеру (localhost):

telnet localhost

Для демонстрации мы подключимся к вашему компьютеру (localhost). Программа запросит ваше имя пользователя и пароль, как показано ниже.

Подключение к localhost с помощью команды telnet и запрос на ввод учетных данных.

После аутентификации вы можете выполнять команды так же, как и раньше, используя терминал. Единственное отличие заключается в том, что, если вы подключены к удаленному хосту, команды выполняются на удаленной машине, а не на вашей локальной машине. Вы можете выйти из Telnet-соединения, введя команду 'logout'.

Почему SSH заменил Telnet

Telnet, один из старейших инструментов удаленного доступа, отправляет все, что вы вводите, включая имя пользователя и пароль, по сети в виде открытого текста через порт 23. Любой, кто перехватит этот трафик, сможет прочитать учетные данные, что делает Telnet небезопасным в общедоступном интернете. SSH был разработан именно для устранения этой уязвимости.

SSH превосходит Telnet по нескольким важным параметрам:

  • Шифрование: SSH шифрует всю сессию через порт 22, поэтому пароли и данные не могут быть прочитаны во время передачи.
  • Аутентификация: SSH проверяет подлинность сервера с помощью цифрового ключа и поддерживает вход в систему на основе ключей, который надежнее паролей.
  • Integrity: SSH обнаруживает, если поток данных был изменен во время передачи.

Благодаря этим мерам защиты системные администраторы теперь используют SSH для управления удаленными серверами Linux, а Telnet сохранился в основном для быстрого тестирования или в доверенных внутренних сетях.

SSH, PingСравнение FTP и Telnet

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

утилита Цель протокол Порт по умолчанию Зашифрованные
SSH Безопасный удаленный вход и администрирование TCP (SSH) 22 Да
Ping Проверьте доступность хоста и измерьте задержку. ICMP Нет (без портов) Непригодный
Ftp Передача файлов между хостами TCP (FTP) 21 (20 для данных) Нет (обычный FTP)
Telnet Удаленный доступ к терминалу TCP (Телнет) 23 Нет

Для всего, что подключено к интернету, выбирайте зашифрованные варианты: SSH для удаленных сессий и SFTP или SCP (оба работают поверх SSH) для передачи файлов.

Часто задаваемые вопросы (FAQ)

FTP передает файлы и пароли в открытом текстовом виде, поэтому любой, кто отслеживает сеть, может их прочитать. SFTP выполняет ту же работу внутри зашифрованного SSH-соединения на порту 22, защищая ваши учетные данные и данные. Для любой передачи данных через Интернет SFTP является более безопасным выбором.

SCP (Secure Copy) копирует файлы между хостами по зашифрованному SSH-каналу, поэтому он безопасен, как SFTP. Он быстрее, но имеет более ограниченные возможности, поскольку копирует только файлы и не может отображать их список, переименовывать или удалять. Современные руководства рекомендуют использовать SFTP или rsync вместо SCP.

Введите exit или logout и нажмите Enter, чтобы закрыть сеанс SSH или Telnet и вернуться к локальному терминалу. Если сеанс завис, SSH также принимает управляющую последовательность: нажмите Enter, затем введите тильду, а затем точку (~.), чтобы принудительно закрыть соединение.

№ Ping Использует ICMP, протокол сетевого уровня, работающий без номеров портов. Он отправляет запрос эхо ICMP и ожидает ответа эхо. Поскольку он не зависит от TCP или UDP, межсетевые экраны иногда блокируют ICMP, даже если другие службы остаются доступными.

По умолчанию, Linux ping Программа будет работать до тех пор, пока вы не остановите её с помощью Ctrl + c. Добавьте опцию -c с числом, чтобы задать фиксированное количество повторов, например. ping -c 4 google.com отправляет четыре пакета, а затем автоматически останавливается, что удобно в скриптах и ​​проверках работоспособности.

Сообщение «Соединение отклонено» обычно означает, что служба SSH не запущена на удаленном хосте или брандмауэр блокирует порт 22. Убедитесь, что sshd установлен и запущен, проверьте адрес хоста и порт, а также убедитесь, что сетевые правила разрешают соединение, прежде чем повторять попытку.

Инструменты машинного обучения могут сканировать ping Анализ результатов, журналов SSH и перехваченных пакетов позволяет выявлять скачки задержки, неудачные попытки входа в систему и аномалии, которые человек может пропустить. Искусственный интеллект также объясняет непонятные сообщения об ошибках и предлагает следующую диагностическую команду, ускоряя поиск и устранение неисправностей в сети.

Да. Второй пилот GitHub может создавать сценарии командной оболочки для автоматизации SSH-подключений, пакетной передачи данных по FTP и выполнения запланированных операций. ping выполняет проверки. По мере ввода предлагаются флаги команд и циклы, однако перед запуском всегда следует проверять сгенерированное соединение и обработку учетных данных.

Подведем итог этой публикации следующим образом: