tftp сервер не работает на научном Linux 6.1

2926
Claudiu

Я не могу заставить tftp работать на моей машине под управлением Scientific Linux 6.1:

[root@bugs ~]# ls /tftpboot/ default example.txt MX075000.002_107 MX075100.002_025 MX076000.002 MX076200.002 MX0779900.002 [root@bugs ~]# tftp localhost tftp> status Connected to localhost. Mode: netascii Verbose: off Tracing: off Literal: off Rexmt-interval: 5 seconds, Max-timeout: 25 seconds tftp> get example.txt Transfer timed out. 

Это конфигурация tftp:

[claudiu@bugs claudiu]$ cat /etc/xinetd.d/tftp service tftp { disable = no socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -c -s /tftpboot -v -v -v per_source = 11 cps = 100 2 flags = IPv4 } 

xinetd запущен и работает:

[claudiu@bugs claudiu]$ sudo service xinetd status xinetd (pid 23864) is running... 

Tftp, кажется, включен, и порт 69 открыт:

[claudiu@bugs claudiu]$ chkconfig | grep tftp tftp: on [claudiu@bugs claudiu]$ sudo nmap -sU localhost | grep 69 69/udp open|filtered tftp 

Кроме того, разрешения, кажется, установлены правильно:

[claudiu@bugs claudiu]$ ls -l / | grep ftp drwxrwxrwx. 2 root root 4096 Jan 5 15:48 tftpboot [claudiu@bugs claudiu]$ cd /tftpboot/ [claudiu@bugs tftpboot]$ ls -l example.txt -rwxrwxrwx. 1 root root 0 Jan 4 15:38 /tftpboot/example.txt 

Если кто-нибудь знает, что может пойти не так, я мог бы использовать некоторую помощь ...

2
Обратите внимание, что * chkconfig * не управляет [x] inetd; скорее он управляет ** автономным ** * tftp * демоном. Если у вас оба активны, существует очень высокая вероятность конфликтов. grawity 12 лет назад 0
Спасибо, но я не думаю, что в этом случае есть какие-либо конфликты ... Я попытался выключить chkconfig и xinetd и наоборот, но он все еще не работает ... Claudiu 12 лет назад 0
Как насчет вашей конфигурации selinux? kamae 12 лет назад 0
@kamae Да, похоже, так оно и было. Я решил эту проблему некоторое время назад, но забыл закрыть вопрос. Я попытался настроить selinux для разрешения tftp, но мне срочно понадобился сервис, поэтому я, наконец, отключил selinux. Claudiu 12 лет назад 0

3 ответа на вопрос

3
Claudiu

Кажется, что SELinux был причиной проблемы. Мне не удалось заставить tftp работать с ним, поэтому я полностью отключил SELinux. Я знаю, что это не рекомендуется, но если кому-то еще нужно знать, как это сделать, вот оно: вам нужно отредактировать файл / etc / selinux / config и изменить строку, содержащую «SELINUX =», на:

SELINUX=disabled 

Перезагрузка системы обязательна . Без этого изменения не вступят в силу.

2
mike

Check that ICMP is not prohibited in iptables. It solved my problems.

By the way, SELinux does not have to be disabled to make it work.

1
Arwin Reprakash
echo 0 >/selinux/enforce 

Это переведет SELinux в разрешающий режим, однако перезагрузка очистит это.

cat /selinux/enforce 

Это подтвердит, что он находится в разрешающем режиме.

Таким образом, вам не нужно перезагружать машину. Просто убедитесь, что SELINUX=disabledв /etc/selinux/configтак выживает перезагрузки.