FTPS клиент на mbedOS

Я пытаюсь написать свою собственную реализацию клиента FTPS в mbedOS. Я уже сделал аутентификацию на сервере, но я не понимаю, как поместить и получить файлы. Сейчас я делаю следующее:

  1. Подключитесь к серверу через контрольный сокет TCP, получите сообщение с сервером.
  2. Запустите SSL рукопожатие.
  3. Отправить команду PASV.
  4. Откройте сокет TCP с IP и PORT, который я получаю в ответе PASV.
  5. Запустите рукопожатие SSL с тем же контекстом SSL, что и в ControlSocket.
  6. Отправить данные.
  7. Закройте сокет данных.
  8. Попробуйте получить код ответа "226"

Но сервер, возможно, игнорирует закрывающийся сокет. Журнал FTP-сервера Wings:

[04] Tue, 24 Apr 2018 11:29:17 (0000123) 220 Wing FTP Server ready... (UNREGISTERED WING FTP SERVER)
[03] Tue, 24 Apr 2018 11:29:17 (0000123) AUTH TLS
[04] Tue, 24 Apr 2018 11:29:17 (0000123) 234 AUTH command OK. Initializing TLS connection.
[03] Tue, 24 Apr 2018 11:29:23 (0000123) USER fsck
[04] Tue, 24 Apr 2018 11:29:23 (0000123) 331 Password required for fsck
[03] Tue, 24 Apr 2018 11:29:23 (0000123) PASS **********
[04] Tue, 24 Apr 2018 11:29:23 (0000123) 230 User fsck logged in.
[03] Tue, 24 Apr 2018 11:29:24 (0000123) PBSZ 0
[04] Tue, 24 Apr 2018 11:29:24 (0000123) 200 Command okay. PBSZ=0.
[03] Tue, 24 Apr 2018 11:29:24 (0000123) PROT P
[04] Tue, 24 Apr 2018 11:29:24 (0000123) 200 Encrypting Data Channel.
[03] Tue, 24 Apr 2018 11:29:24 (0000123) PASV
[04] Tue, 24 Apr 2018 11:29:24 (0000123) 227 Entering Passive Mode (192,168,137,1,4,8)
[03] Tue, 24 Apr 2018 11:29:25 (0000123) STOR testfile.txt
[04] Tue, 24 Apr 2018 11:29:25 (0000123) 150 Opening BINARY mode data connection for file transfer.

0 ответов

Другие вопросы по тегам