Обзор 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
# соединять
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
# Авторизоваться
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 с эссе, получившими награды. Приходите и разделите приз со мной!