Давайте поговорим о FTP, SFTP, FTPS.
Давайте поговорим о FTP, SFTP, FTPS.

Обзор FTP

  • Протокол передачи файлов (FTP) является членом набора протоколов TCP/IP и в настоящее время является наиболее распространенным протоколом передачи файлов в Интернете. Протокол FTP состоит из двух частей: одна — FTP-клиент, а другая — FTP-сервер. Конечно, FTP-сервер используется для хранения файловых ресурсов, а FTP-клиент получает ресурсы, обращаясь к FTP-серверу.

Два способа работы

  • В обычных обстоятельствах при использовании службы FTP мы все знаем, что порт по умолчанию — порт 21, но на самом деле существует порт 20. FTP использует два TCP-соединения: порт 21 отвечает за управляющее соединение, а порт 20 — за соединение для передачи данных. Таким образом, не возникнет путаницы, и FTP сможет служить нам лучше. Рабочий режим протокола FTP можно разделить на активный и пассивный. Активный означает, что FTP-клиент отправляет команду PORT для подключения к FTP-серверу. Пассивный означает, что FTP-клиент отправляет команду PASV для подключения к FTP-серверу. .
  • Активный метод: после подключения канала управления через порт 21 клиент отправляет серверу команду PORT, которая сообщает серверу, что вы можете общаться с нами через этот порт, поэтому сервер открывает порт 20 и подключается к назначенному порту клиента. Устанавливайте соединения и передавайте данные. Необходимо создать новое соединение.
  • Пассивный метод: после подключения канала управления через порт 21 клиент отправляет серверу команду PASV, которая сообщает серверу номер порта для связи между вами двумя. Затем сервер случайным образом выбирает порт (больше 1024). ), и FTP-клиент подключается к этому порту и общается. Нет необходимости создавать новое соединение.

FTP、SFTP、FTPS

  • FTP — это английская аббревиатура протокола передачи файлов, а китайская аббревиатура — «протокол передачи файлов». Используется для двунаправленной передачи управляющих файлов через Интернет. В то же время это еще и приложение. Существуют разные FTP-приложения для разных операционных систем, и все эти приложения используют один и тот же протокол передачи файлов.
  • FTPS — это расширенный протокол FTP, который использует стандартный протокол FTP и инструкции на уровне защищенных сокетов, добавляя функции безопасности SSL к протоколу FTP и каналу данных. FTPS также известен как «FTP-SSL» и «FTP-over-SSL». SSL — это протокол, который шифрует и расшифровывает данные в рамках безопасного соединения между клиентом и сервером с поддержкой SSL.
  • SFTP — это аббревиатура Secure File Transfer Protocol, протокол безопасной передачи файлов. Обеспечивает безопасный метод шифрования для передачи файлов. sftp имеет почти тот же синтаксис и функциональность, что и ftp. SFTP, часть SSH, представляет собой безопасный способ передачи файлов на серверы Blogger.

Разница между SFTP и FTPS

  • И SFTP, и FTPS шифруют ftp-соединения, один использует протокол ssl для шифрования, а другой — ssh.
  • SSL предназначен для шифрования, например http/smtp, а ssh предназначен для шифрования и установления каналов передачи, например telnet/ftp.
  • Проще говоря: протокол sftp является независимым протоколом в ssh, и данные можно передавать с помощью ftp-сервера. И ftps означает ftp-over-ssl, то есть ftp использует протокол ssl для шифрования передачи. Он не только использует ftp-сервер, но также использует протокол ssl для шифрования.

Подробное объяснение команд

SFTP

Язык кода:bash
копировать
# соединять
sftp user_name@remote_server_address[:path]

-B: uffer_size, указать передачу buffer размер, больше buffer Будет потреблять больше памяти, по умолчанию для 32768 bytes;
-P: port,Укажите номер порта подключения;
-R: num_requests,формулироватьодин разсоединятьколичество запросов,Может немного увеличить скорость передачи,Но это увеличит использование памяти。

# Извлечь файлы с удаленного сервера
get /path/remote_file

#Загружаем локальные файлы на сервер
put local_file

# Просмотр содержимого каталога удаленного сервера
ls

# Просмотр содержимого локального каталога
lls

# Выполнить локально Shell Заказ
![command]

FTP

Язык кода:bash
копировать
# Авторизоваться
ftp host 

-p :Укажите порт

# скачать
get Заказ: скачать указанный файл
mget Заказ: скачать несколько файлов

# загрузить
put Заказ:загрузить Укажите файл
mput Заказ:загрузитьнесколько файлов

Профиль

👋 привет, я Lorin Лорейн, один Java Разработчик бэкэнд-технологий!девиз:Technology has the power to make the world a better place.

🚀 Моя страсть к технологиям — это моя мотивация продолжать учиться и делиться ими. Мой блог — это место об экосистеме Java, серверной разработке и последних технологических тенденциях.

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

💡 В моем блоге вы найдете подробные статьи об основных концепциях Java, базовой технологии JVM, часто используемых платформах, таких как Spring и Mybatis, управлении базами данных, таких как MySQL, промежуточном программном обеспечении для обработки сообщений, таком как RabbitMQ и Rocketmq, оптимизации производительности и т. д. Я также поделюсь некоторыми советами по программированию и методами решения проблем, которые помогут вам лучше освоить программирование на Java.

🌐 Я поощряю взаимодействие и создание сообщества, поэтому, пожалуйста, оставляйте свои вопросы, предложения или запросы по темам и дайте мне знать, что вас интересует. Кроме того, я буду делиться последними новостями Интернета и технологий, чтобы вы всегда были в курсе последних событий в мире технологий. Я с нетерпением жду возможности вместе с вами двигаться вперед по пути технологий и исследовать безграничные возможности мира технологий.

📖 Следите за обновлениями моего блога и давайте вместе стремиться к техническому совершенству.

Я участвую в пятом выпуске специального учебного лагеря Tencent Technology Creation 2024 с эссе, получившими награды. Приходите и разделите приз со мной!

boy illustration
5 шагов для установки среды протокола
boy illustration
Наиболее полные коды состояния HTTP
boy illustration
На основе языка Go мы шаг за шагом научим вас внедрять структуру системы управления серверной частью.
boy illustration
Эффективное управление журналами с помощью Spring Boot и Log4j2: подробное объяснение конфигурации
boy illustration
Что делать, если telnet не является внутренней или внешней командой [легко понять]
boy illustration
php-объект для анализа json_php json
boy illustration
Введение в принцип запуска Springboot, процесс запуска и механизм запуска.
boy illustration
Высокоуровневые операции Mongo, если данные не существуют, вставка и обновление, если они существуют (pymongo)
boy illustration
Проектирование и внедрение системы управления электронной коммерцией на базе Vue и SpringBoot.
boy illustration
Статья длиной в 9000 слов знакомит вас с процессом запуска SpringBoot — самым подробным процессом запуска SpringBoot в истории — с изображениями и текстом.
boy illustration
Как настроить размер экрана в PR. Учебное пособие по настройке размера видео в PR [подробное объяснение]
boy illustration
Элегантный и мощный: упростите операции ElasticSearch с помощью easy-es
boy illustration
Проект аутентификации по микросервисному токену: концепция и практика
boy illustration
【Java】Решено: org.springframework.http.converter.HttpMessageNotWritableException.
boy illustration
Изучите Kimi Smart Assistant: как использовать сверхдлинный текст, чтобы открыть новую сферу эффективной обработки информации
boy illustration
Начало работы с Docker: использование томов данных и монтирования файлов для хранения и совместного использования данных
boy illustration
Использование Python для реализации автоматической публикации статей в публичном аккаунте WeChat
boy illustration
Разберитесь в механизме и принципах взаимодействия потребителя и брокера Kafka в одной статье.
boy illustration
Spring Boot — использование Resilience4j-Circuitbreaker для реализации режима автоматического выключателя_предотвращения каскадных сбоев
boy illustration
13. Springboot интегрирует Protobuf
boy illustration
Примечание. Инструмент управления батареями Dell Dell Power Manager
boy illustration
Общая интерпретация класса LocalDate [java]
boy illustration
[Базовые знания ASP.NET Core] -- Веб-API -- Создание и настройка веб-API (1)
boy illustration
Настоящий бой! Подключите Passkey к своему веб-сайту для безопасного входа в систему без пароля.
boy illustration
Руководство по настройке Nginx: как найти, интерпретировать и оптимизировать настройки Nginx в Linux
boy illustration
Typecho отображает использование памяти сервера
boy illustration
Как вставить элемент перед указанным ключом в ассоциативный массив в PHP
boy illustration
swagger2 экспортирует API как текстовый документ (реализация Java) [легко понять]
boy illustration
Выбор фреймворка nodejs Express koa egg MidwayJS сравнение NestJS
boy illustration
Руководство по загрузке, установке и использованию SVN «Рекомендуемая коллекция»