由于不必要的原因,我必须通过互联网运行TFTP服务器。 根据RFC 1350 ,在连接期间使用的每个端点都有一个随机端口。 但是,对于UDP NAT固定,显然只允许从同一个端口响应的请求消息。 这是一个stream量的例子: 客户端:192.168.1.2(NAT设备/网关.1) 客户的公共IP:50.1.1.1 服务器:12.50.100.1:69(公共服务器,不在NAT后面) 客户端: 192.168.1.2:45613 -> 12.50.100.1:69 服务器端: 50.1.1.1:45613 -> 12.50.100.1:69 12.50.100.1:29412 -> 50.1.1.1:45613 在服务器端select的TID是29412,但是请求端口是69.我需要的是确保这个stream量是用源端口69发送的。有没有什么办法可以在不改变源代码TFTP服务器? 我见过一些令人印象深刻的iptables魔术,所以我在这里问。
自从Linux存在以来,我一直在使用FTP来解决FTP问题,每个人都只是告诉我“Google它”或closures我的线程,因为有人已经回答了“类似的问题”,但无论使用什么版本的Centos 6或7我不能只inputyum install tftp xinetd,并将我的文件放在tftp目录中,并开始使用它。 它从来没有像那样工作,至less从来没有。 我正在做的是为我devise的应用程序设置一个安装程序,这个应用程序可以在每个单独的arch和每个Linux系统上运行,因此它使用像tftp wget curl这样的命令来下载安装应用程序所需的文件我的服务器。 问题是当我设置TFTP正确它不起作用当我inputtftp -c在我的另一台服务器上10秒钟后,它返回“传输超时”。 我做了一些testing,并尝试使用本地IP地址,并得到相同的响应。 但在具有tftpserver的服务器上,它工作得很好。 service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s -c /var/lib/tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 } 更新:lsmod | grep tftp什么也不返回,selinux被禁用。
我试图在Docker Swarm集群上运行jumanjiman / tftp-hpa 。 我已经通过启动服务 docker service create –name rsyslog –mode global –mount type=volume,source=rsyslog,destination=/var/run/rsyslog/dev jumanjiman/rsyslog docker service create –name pxe –replicas=1 –publish 69:69/udp \ –mount type=volume,source=rsyslog,destination=/var/run/rsyslog/dev \ –mount type=bind,source=foo,destination=bar \ jumanjiman/tftp-hpa 这成功地启动了服务 ~# docker service ls ID NAME MODE REPLICAS IMAGE PORTS 775f4z5hyc0k rsyslog global 1/1 jumanjiman/rsyslog:latest q51fqjwe6rji pxe replicated 1/1 jumanjiman/tftp-hpa:latest *:69->69/udp 当我在容器内时,tftp在本地工作 […]
我在ubuntu:16.04基本映像上运行tftpd-hpa。 当我在一个完整的发行版上运行它时,它logging正常,但是在docker容器内没有任何日志。 它似乎试图login到/ var / log / syslog这是缺less。 有没有人有任何build议,我怎么可以从这个日志? 详细程度设置为4,在完整的Ubuntu 16.04安装中给出了合适的详细输出,但容器中没有任何内容。 谢谢
我在我的linux服务器上设置了一个tftp服务器来为我的cisco 7940 sip电话提供文件。 有什么办法,我可以提供这些文件,而不必将其权限设置为777? 每次我改变他们甚至只有一个位,文件变得无法访问。 我不希望所有的Linux用户都能够读取这些文件,因为它们包含一些密码。
我的目标是:在专用局域网上有一台服务器(debian),它提供了tftp引导到任何插入到服务器连接的交换机的客户端机器 – 服务器不需要外部Internet访问,只能用于服务器不同的iso到连接的客户端机器(用于os加载)。 服务器是路由器,dhcp服务器和tftp服务器(不使用物理路由器)。 目前我已经在我的debian服务器上安装并configuration了isc-dhcp-server,tftpd-hpa,nfs-kernel-server。 当我将客户端机器的mac地址硬编码到dhcpd.conf中时,我有它的工作: group { next-server 10.10.10.1; host tftpclient { hardware ethernet [client mac here] filename "pxelinux.0" } } 但没有硬件以太网线我的客户端将无法正常PXE启动,我得到的错误: PXE-E53: no boot filename received. 我想知道如何configuration这个不需要硬编码的MAC地址。 如果需要解决问题,我可以根据要求提供其他任何configuration文件。
我有一些客户端的TFTP服务器(假设ABCD是客户端)。 所有客户端必须具有相同的configuration(仅限服务器IP)。 但是,某些客户端必须获取特定目录中的文件,而其他目录中的其他客户端则需要。 例如,A和B必须在/tftp/1获取文件,在/tftp/2获取C,D中的文件。 最好的做法是使用IP地址和子网来区分(“此子目录中的所有客户端在此目录中获取”),但我不知道TFTP是否可以做到这一点。 PS:我不使用TFTP,我不能使用其他任何东西。
我已经安装了一台新的Cobbler服务器,并将其configuration为DHCP / TFTP服务器。 我configuration了/etc/dhcp/dhcpd.conf,如下所示: [root@centolel ~]# cat /etc/dhcp/dhcpd.conf ddns-update-style interim; allow booting; allow bootp; ignore client-updates; set vendorclass = option vendor-class-identifier; option boot-server code 66 = string; option option-66 code 66 = text; option pxe-system-type code 93 = unsigned integer 16; authorative; subnet 10.13.0.0 netmask 255.255.255.0 { option routers 10.13.0.138; option domain-name-servers 10.13.0.1; option subnet-mask […]
按照Debian Wiki的指导,我正在设置一台机器来加载PXEBoot的Debian安装。 我将引导映像放在服务器pxe.example.com ,位于/var/lib/tftpboot/debian-jessie/pxelinux.0 。 当我使用tftp pxe.example.com ,我可以从networking上的任何机器上手动下载该文件,但是在启动客户机时仍然出现这个错误: PXE-T01: File not found PXE-E3B: TFTP Error – File Not found PXE-M0F: Exiting PXE ROM. 问题是,即使我在我的DHCP服务器上的/etc/dchpd.conf有这个: group { next-server pxe.example.com; option option-209 "/debian-jessie/pxelinux.cfg/default"; filename "/debian-jessie/pxelinux.0"; host theclient { hardware ethernet my:ma:ca:dd:re:ss; fixed-address theclient.example.com; } } 并在每次编辑后都运行/etc/rc.d/dhcpd restart ,并且客户端正在从服务器获取IP地址,但仍尝试从pxe下载错误的文件名! PXE服务器的daemon.log显示: in.tftpd: RRQ from <client's ip> filename debian-bios/pxelinux.0 in.tftpd: […]
分发服务器和软件: Debian 8 TFTP Server SAMBA Server DHCP Server 现在我们使用以下方式将windows(2012)发布到我们的服务器上: 安装任务墨水 编辑dhcp服务器(新服务器) 自动创buildwim启动映像(通过debian服务器,通过wimlib修改wim模板) 使用unattended.xml创buildsamba共享 电脑上的电源 新服务器的dhcp请求 wim(winpe)映像的tftp下载 winpe启动和sambsa份额的安装 无人值守安装的Windows 这按预期工作 – 但tftp下载仅限于一个修复源{TFTPSource}/Boot/startrom.0 由于path的限制,现在只能在启动一次Windows安装之前,直到完成wim图像的加载。 在wim图像完成之后,可以触发下一个安装。 现在我们search了一个“更好”的方法来一次安装多个Windows服务器。 我们发现了像OPSI或无人值守的几个项目,但是他们都不符合我们的要求: OPSI似乎需要客户端上的一个软件,这是客户端上的一个软件。 似乎没有Windows Server 2016发行版的官方支持。 无人看pipe只适用于Windows 2000 / XP / 2003。 我们需要(可以是windows deploeyment服务器)一个部署服务器,它可以一次提供多个客户端(基于无人值守模板的无人值守安装,我们将在安装之前编辑) 什么是正确的方式来提供Windows Server 2012(2016年,也许其他窗口分配)到多个客户端? 有没有一个免费的Windows软件(最好用命令行远程控制)来满足这种需求? 也许有办法修改Windows Bootrom的修正编码path{TFTPSource}/Boot/startrom.0 ?