Сбой сервера TFTP Oracle Linux 8

Сбой сервера TFTP Oracle Linux 8

Я настраиваю TFTP-сервер на Oracle Linux 8 и сталкиваюсь с некоторыми странными проблемами.

Файлы конфигурации:

/etc/systemd/system/tftp-server.service
::::::::::::::
[Единица]
Описание=TFTP-сервер
Требуется=tftp-сервер.socket
Документация=man:in.tftpd

[Услуга]
ExecStart=/usr/sbin/in.tftpd -c -p -s /tftpboot
StandardInput=розетка

[Установить]
WantedBy=многопользовательский.целевой
Также=tftp-сервер.сокет
::::::::::::::
/etc/systemd/system/tftp-server.socket
::::::::::::::
[Единица]
Описание=Сокет активации сервера TFTP

[Разъем]
ПрослушатьДатаграмма=69
BindIPv6Only=оба

[Установить]
WantedBy=сокеты.цель

Оба tftp-server и tftp.socket запущены и включены:

● tftp-server.service - Tftp-сервер
   Загружено: загружено (/etc/systemd/system/tftp-server.service; включено; предустановка поставщика: отключено)
   Активен: активен (работает) с Вт 2022-12-13 09:08:41 EST; 11 мин назад
     Документы: man:in.tftpd
 Основной PID: 6308 (in.tftpd)
    Задания: 1 (лимит: 48835)
   Память: 200.0К
   CGroup: /system.slice/tftp-server.service
           └─6308 /usr/sbin/in.tftpd -c -p -s /tftpboot

13 дек. 09:08:41 systemd[1]: Запущен сервер Tftp.

● tftp.socket — сокет активации сервера Tftp
   Загружено: загружено (/usr/lib/systemd/system/tftp.socket; включено; предустановка поставщика: отключено)
   Активен: активен (работает) с Вт 2022-12-13 09:08:37 EST; 11 мин назад
   Слушать: [::]:69 (Датаграмма)
    Задания: 0 (лимит: 48835)
   Память: 0Б
   CGroup: /system.slice/tftp.socket

13 дек. 09:08:37 systemd[1]: Закрыт сокет активации сервера TFTP.
13 дек. 09:08:37 systemd[1]: Остановка сокета активации сервера TFTP.
13 дек. 09:08:37 systemd[1]: прослушивание сокета активации сервера TFTP.

Права доступа к каталогу /tftpboot установлены на чтение всем миром (777), и в каталоге есть текстовый файл, доступный для чтения всем миром. Когда я пытаюсь выполнить TFTP с того же сервера, я получаю сообщение «Код ошибки 1: Файл не найден». Когда я пытаюсь выполнить TFTP get с сервера в той же локальной VLAN, get запускается, и в конечном итоге я получаю сообщение об ошибке «Превышено время ожидания передачи». Iptables на сервере настроен на разрешение входящего UDP-порта 69.

Я не уверен, что я здесь упускаю. Я следовал инструкциям наhttps://linuxhint.com/tftp_server_centos8/но я просто не могу установить соединение, даже с локального хоста. Любые идеи были бы очень признательны!

решение1

Я думаю, что я разобрался с проблемой. Запустив несколько проверок статуса, я заметил, что tftp и tftp-server оба работают, но используют разные файлы конфигурации:

systemctl статус tftp
● tftp.service - Tftp-сервер
   Загружено: загружено (/usr/lib/systemd/system/tftp.service; косвенный; предустановка поставщика: отключено)
   Активен: активен (работает) с Ср 2022-12-14 10:56:41 EST; 10 мин назад
     Документы: man:in.tftpd
 Основной PID: 9604 (in.tftpd)
    Задания: 1 (лимит: 48835)
   Память: 244.0К
   CGroup: /system.slice/tftp.service
           └─9604 /usr/sbin/in.tftpd -s /var/lib/tftpboot

14 дек. 10:56:41 systemd[1]: Запущен сервер Tftp.

systemctl статус tftp-сервер
● tftp-server.service - Tftp-сервер
   Загружено: загружено (/etc/systemd/system/tftp-server.service; включено; предустановка поставщика: отключено)
   Активен: неактивен (мертв) с Вт 2022-12-13 12:57:45 EST; 22 часа назад
     Документы: man:in.tftpd
 Основной PID: 6832 (код=выход, статус=0/УСПЕХ)

13 дек 12:42:45 systemd[1]: Остановлен сервер TFTP.
13 дек 12:42:45 systemd[1]: Запущен сервер Tftp.
13 дек 12:57:45 systemd[1]: tftp-server.service: Успешно.

Копирование синтаксиса из /etc/systemd/system/tftp-server.service в /usr/lib/systemd/system/tftp.service заставило TFTP снова работать. Я не совсем понимаю, почему это произошло, но, по крайней мере, TFTP теперь работает.

Связанный контент