Проверка доступа к содержимому FTP-сервера на устройстве ПЛК210

Проверка доступа будет осуществляться на компьютере с установленной операционной системой Ubuntu 16.04.4 LTS при помощи утилиты ftp версии 0.17.

К конфигурации компьютера, кроме наличия сетевой карты с поддержкой подключения на скорости 100 Мбит/с и полным дуплексом, дополнительных требований не предъявляется.

Предполагается, что для данной проверки ПЛК210 сконфигурирован с использованием мастера настройки (см. раздел) и при конфигурации была выбрана схема сетевых портов №1 (см. раздел). Мостовому LAN-подключению ПЛК210 назначен статический IP-адрес 192.168.0.58 и маска подсети 255.255.255.0.

Компьютеру назначен IP-адрес из той же подсети (255.255.255.0).

Вывод команды «lsb_release -a» на компьютере выглядит следующим образом:

No LSB modules are available. Distributor ID: Ubuntu Description:        Ubuntu 16.04.4 LTS Release:                          16.04 Codename:           xenial

Вывод команды apt-cache policy ftp на компьютере выглядит следующим образом:

ftp: Installed: 0.17-33 Candidate: 0.17-33 Version table: *** 0.17-33 500 500 http://ru.archive.ubuntu.com/ubuntu xenial/main amd64 Packages 100 /var/lib/dpkg/status

Схема подключения компьютера и устройства ПЛК210 показана на рисунке Б.1.:

Graphic
Схема подключения проверки доступа к содержимому FTP-сервера устройства ПЛК210

Компьютер подключён напрямую в любой из 3-х портов (порты Ethernet 1, 2 и 3) мостового LAN-подключения при помощи стандартного 4-х парного UTP патч-корда категории 5e прямого обжима с коннекторами RJ-45 на обоих концах.

Подготовка

Для тестирования передачи файлов по протоколу FTP необходимо подготовить файл с тестовыми данными.

В терминале компьютера следует ввести команду:

# dd if=/dev/urandom of=/tmp/data.bin bs=1024 count=1024 1024+0 records in 1024+0 records out 1048576 bytes (1,0 MB, 1,0 MiB) copied, 0,00610422 s, 172 MB/s

Данная команда создаст файл«/tmp/data.bin» размером 1 МиБ (1048576 байт) со случайными данными.

Необходимо подсчитать и сохранить контрольную сумму (MD5) данных этого файла:

# md5sum /tmp/data.bin 25853ed8e4d3518e72f310feb0f86c4d /tmp/data.bin

Далее это значение будет использоваться для проверки корректности передачи данных по протоколу FTP.

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

Подключение к FTP-серверу

На компьютере для запуска FTP-клиента необходимо выполнить в терминале команду:

# ftp 192.168.0.58

Будет отображено сообщение об успешном подключении и запрос имени пользователя:

Connected to 192.168.0.58.220 (vsFTPd 3.0.3) Name (192.168.0.58:user): ftp

Необходимо ввести имя пользователя «ftp», после чего последует запрос пароля:

331 Please specify the password. Password:

Если в мастере настройки пароль доступа к FTP не менялся (раздел), то пароль по умолчанию ftp. В противном случае следует ввести установленный пароль.

Если пароль введен правильно, будет отображено сообщение об успешной авторизации и приглашение для ввода команд:

230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp>

Загрузка (upload) файла на FTP-сервер

Сначала следует подготовить файл данных согласно инструкции из раздела Б.1., затем выполнить подключение к устройству ПЛК210 согласно инструкции из раздела Б.2.

Затем необходимо выполнить в FTP-клиенте команду:

ftp> put /tmp/data.bin data.bin

где:

  • /tmp/data.bin — путь к передаваемому файлу на локальной файловой системе (инструментальный компьютер);

  • data.bin — путь к файлу на FTP-сервере относительно корня FTP-сервера (ПЛК210).

Если файл успешно передан на FTP-сервер, появятся следующие сообщения:

local: /tmp/data.bin remote: data.bin 200 PORT command successful. Consider using PASV. 150 Ok to send data. 226 Transfer complete. 1048576 bytes sent in 0.09 secs (11.6982 MB/s)

Таким образом, переданный файл будет сохранен в корневой папке FTP-сервера под именем data.bin. Так как по умолчанию корнем FTP-сервера является папка /mnt/ufs/home/ftp, то полный путь к файлу на файловой системе устройства ПЛК210 будет /mnt/ufs/home/ftp/data.bin.

Контрольная сумма данного файла должна совпадать с контрольной суммой исходного сгенерированного файла (см. раздел Б.1.):

[root@plc210 ~]# md5sum /mnt/ufs/home/ftp/data.bin 25853ed8e4d3518e72f310feb0f86c4d /mnt/ufs/home/ftp/data.bin

Скачивание (download) файла с FTP-сервера

Пример скачивания файла с данными c FTP-сервера, который был туда загружен в разделе Б.3.

В FTP-клиенте следует выполнить команду:

ftp> get data.bin /tmp/data-received.bin

где:

  • data.bin — путь к файлу на FTP-сервере относительно корня FTP-сервера (ПЛК210);

  • /tmp/data-received.bin — путь к скачиваемому файлу на локальной файловой системе (компьютер).

local: /tmp/data-received.bin remote: data.bin 200 PORT command successful. Consider using PASV. 150 Opening BINARY mode data connection for data.bin (1048576 bytes). 226 Transfer complete. 1048576 bytes received in 0.17 secs (5.7856 MB/s)

Таким образом, скачанные данные будут сохранены в файле /tmp/data-received.bin. Контрольные суммы исходного сгенерированного файла /tmp/data.bin и скачанного файла /tmp/data-received.bin должны совпадать:

# md5sum /tmp/data.bin /tmp/data-received.bin 25853ed8e4d3518e72f310feb0f86c4d /tmp/data.bin 25853ed8e4d3518e72f310feb0f86c4d /tmp/data-received.bin