在 tftp 中使用 put 命令后更改文件目标路径

在 tftp 中使用 put 命令后更改文件目标路径

我正在使用两台 Linux 机器进行 tftp 文件传输。如果 server_args 路径为 /var/lib/tftpboot(默认路径),则传输正常进行。但是当我将其更改为其他路径(例如/home/user/dir)时,put 命令不起作用。那么配置目标路径的方法是什么呢?谢谢

答案1

我相信这将与目录的权限以及谁可以写入它们有关。如果您运行ls -al /var/lib | grep tftpboot,请查看权限(可能是drwxrwxrwx)以及目录的所有者。然后,查看权限/home/user,您将看到它将被设置为,drwx------这意味着只有拥有该目录的用户才能写入它 -tftpd没有权限写入该目录。如果您使用的是 Ubuntu,请参阅这里如何正确配置目标目录,tftpd特别是有关的部分chown

编辑:需要禁用(或配置)SELinux 才能tftp写入指定目录(/home/tftpd在本例中)。有关此信息可在此处找到:https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Security-Enhanced_Linux/sect-Security-Enhanced_Linux-Enabling_and_Disabling_SELinux-Disabling_SELinux.html

相关内容