Простейший TFTP-сервер в Ubuntu Linux


TFTP - это упрощенная версия протокола FTP которая используется простыми устройствами для управления (некоторые типы IP-телефонов), обновления прошивки и восстановления из состояния кирпича рядов моделей роутеров. Это очень упрощенная версия FTP без использования механизмов авторизации, шифрования и т.п. Применяться она должна конечно исключительно в рамках локальной сети (или логического VLAN в случае IP-телефонов) с ограничением доступа по MAC или IP-адресам.

Установка TFTP-сервера в Ubuntu Linux

В большинстве случаев для обновления прошивки маршрутизаторов CISCO вам понадобится поднятый в вашей сети TFTP-сервер и в Windows для этого используется специализированное ПО, а в Ubuntu Linux для этих целей существует специализированный пакет. Настройка TFTP-сервера не сильно сложная, хотя если быть честным запустить exe-шник в Windows гораздо проще, но и такой гибкости конфигурирования как в Linux вы не добьетесь. Хотя если быть честным, то кому он вообще нужен как кроме целей прошивки роутеров непонятно и городить какие-то сложности тоже не особо надо, поэтому напишу небольшую инструкцию из серии настроил и забыл.

Устанавливаем пакеты:

# apt-get install xinetd tftpd tftp

Создаем файл /etc/xinetd.d/tftp:

service tftp
{
protocol        = udp
port            = 69
socket_type     = dgram
wait            = yes
user            = nobody
server          = /usr/sbin/in.tftpd
server_args     = /tftpboot
disable         = no
}

Создаем каталог для хранения файлов:

# mkdir /tftpboot
# chmod -R 777 /tftpboot
# chown -R nobody /tftpboot

Перезапускаем xinetd:

# service xinetd restart
Устанавливаем клиента для проверки

# apt-get install tftp

Проверяем:

# tftp 127.0.0.1
tftp> get c2600-entservicesk9-mz.124-21.bin
Received 26832820 bytes in 0.8 seconds