Ich konfiguriere einen TFTP-Server auf Oracle Linux 8 und stoße auf einige seltsame Probleme.
Konfigurationsdateien:
/etc/systemd/system/tftp-server.service :::::::::::::: [Einheit] Beschreibung=Tftp-Server Erfordert=tftp-server.socket Dokumentation=man:in.tftpd [Service] ExecStart=/usr/sbin/in.tftpd -c -p -s /tftpboot StandardInput=Buchse [Installieren] WantedBy=Mehrbenutzer.Ziel Auch=tftp-server.socket :::::::::::::: /etc/systemd/system/tftp-server.socket :::::::::::::: [Einheit] Beschreibung=Tftp-Server-Aktivierungssocket [Steckdose] ListenDatagram=69 BindIPv6Only=beide [Installieren] Gesucht von = Sockets.Ziel
Sowohl der TFTP-Server als auch der TFTP.Socket laufen und sind aktiviert:
● tftp-server.service – TFTP-Server Geladen: geladen (/etc/systemd/system/tftp-server.service; aktiviert; Vendor-Vorgabe: deaktiviert) Aktiv: aktiv (läuft) seit Di 2022-12-13 09:08:41 EST; vor 11min Dokumente: man:in.tftpd Haupt-PID: 6308 (in.tftpd) Aufgaben: 1 (Limit: 48835) Speicher: 200,0 KB CGroup: /system.slice/tftp-server.service └─6308 /usr/sbin/in.tftpd -c -p -s /tftpboot 13. Dez 09:08:41 systemd[1]: TFTP-Server gestartet. ● tftp.socket - TFTP-Server-Aktivierungssocket Geladen: geladen (/usr/lib/systemd/system/tftp.socket; aktiviert; Vendor-Vorgabe: deaktiviert) Aktiv: aktiv (läuft) seit Dienstag, 13.12.2022, 09:08:37 EST; vor 11 Minuten Hören Sie: [::]:69 (Datagramm) Aufgaben: 0 (Limit: 48835) Speicher: 0B CGroup: /system.slice/tftp.socket 13. Dez 09:08:37 systemd[1]: TFTP-Server-Aktivierungssocket geschlossen. 13. Dez 09:08:37 systemd[1]: Stoppt den Aktivierungssocket des TFTP-Servers. 13. Dez 09:08:37 systemd[1]: Lausche auf dem Aktivierungs-Socket des TFTP-Servers.
Die Berechtigungen für das Verzeichnis /tftpboot sind auf allgemein lesbar (777) eingestellt und es gibt eine allgemein lesbare Textdatei im Verzeichnis. Wenn ich versuche, vom selben Server aus eine TFTP-Verbindung herzustellen, erhalte ich die Meldung „Fehlercode 1: Datei nicht gefunden“. Wenn ich versuche, einen TFTP-Abruf von einem Server im selben lokalen VLAN durchzuführen, wird der Abruf gestartet und ich erhalte schließlich die Fehlermeldung „Zeitüberschreitung bei Übertragung“. Die iptables auf dem Server sind so konfiguriert, dass eingehender UDP-Port 69 zugelassen wird.
Ich bin nicht sicher, was ich hier übersehe. Ich habe die Anweisungen befolgt unterhttps://linuxhint.com/tftp_server_centos8/aber ich kann einfach keine Verbindung herstellen, nicht einmal vom lokalen Host aus. Ich bin für jede Idee sehr dankbar!
Antwort1
Ich glaube, ich habe das Problem herausgefunden. Beim Ausführen einiger Statusprüfungen ist mir aufgefallen, dass sowohl TFTP als auch TFTP-Server ausgeführt wurden, aber unterschiedliche Konfigurationsdateien verwendeten:
systemctl status tftp ● tftp.service – TFTP-Server Geladen: geladen (/usr/lib/systemd/system/tftp.service; indirekt; Vendor-Vorgabe: deaktiviert) Aktiv: aktiv (läuft) seit Mittwoch, 14.12.2022, 10:56:41 EST; vor 10 Minuten Dokumente: man:in.tftpd Haupt-PID: 9604 (in.tftpd) Aufgaben: 1 (Limit: 48835) Speicher: 244,0 KB CGroup: /system.slice/tftp.service └─9604 /usr/sbin/in.tftpd -s /var/lib/tftpboot 14. Dez 10:56:41 systemd[1]: TFTP-Server gestartet. systemctl status tftp-server ● tftp-server.service – TFTP-Server Geladen: geladen (/etc/systemd/system/tftp-server.service; aktiviert; Vendor-Vorgabe: deaktiviert) Aktiv: inaktiv (tot) seit Di. 13.12.2022 12:57:45 EST; vor 22 Stunden Dokumente: man:in.tftpd Haupt-PID: 6832 (Code=beendet, Status=0/ERFOLGREICH) 13. Dez 12:42:45 systemd[1]: TFTP-Server gestoppt. 13. Dez 12:42:45 systemd[1]: TFTP-Server gestartet. 13. Dez 12:57:45 systemd[1]: tftp-server.service: Erfolgreich.
Durch Kopieren der Syntax von /etc/systemd/system/tftp-server.service nach /usr/lib/systemd/system/tftp.service funktionierte TFTP wieder. Mir ist nicht ganz klar, warum das passiert ist, aber zumindest funktioniert TFTP jetzt.