Автор: Андрей
Установка TFTP сервера
Помимо tftpd нужно будет установить службу inetd. inetd — представляет собой сетевую службу, которая обрабатывает входящие соединения (TCP, UDP) и запускает соответствующую программу для обработки запроса. Я буду использовать службу openbsd-inetd. Есть еще служба xinetd, вы можете ее использовать, но настраивается она несколько иначе.
Установка сервера tftpd и службы openbsd-inetd
Установим сервер tftpd и openbsd-inetd, для этого выполним команду:
- sudo apt-get install openbsd-inetd tftpd tftp
В файле
- mcedit /etc/inetd.conf
- #:BOOT: TFTP service is provided primarily for booting. Most sites
# run this only on machines acting as "boot servers."
tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /srv/tftp
Аргумент /srv/tftp команды in.tftpd указывает на каталог в котором будут храниться файлы TFTP сервера. Заменим /srv/tftp на /tftpboot.
- tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /tftpboot
Создадим директорию /tftpboot:
- sudo mkdir /tftpboot
Изменим права доступа:
- sudo chown -R nobody /tftpboot
Перезапуск службы inetd
Чтобы новые настройки вступили в силу, перезапустим службу inetd:
- sudo /etc/init.d/openbsd-inetd restart
На этом установка TFTP сервера завершена, проверим его работу.
Проверка работы TFTP сервера, использование TFTP клиента
Для начала установим TFTP клиент, чтобы можно было подключаться к TFTP северу. Для установки TFTP клиента выполните в терминале команду:
- echo This is my file > /tftpboot/myfile
Теперь мы можем запустить TFTP клиент командой tftp. Команда tftp принимает в качестве параметра IP адрес сервера. Если вы запускаете клиент на локальном компьютере, то укажите IP адрес 127.0.0.1, если же на удаленном компьютере, то укажите IP адрес сервера.
- tftp 127.0.0.1
Когда клиент запустится, вы попадете в режим ввода команд для клиента TFTP. Выполните команду get myfile, которая означает получить файл с именем myfile с сервера.
- tftp> get myfile