Настройка tftpd сервера
Любой админ, который занимается настройкой всякого «железа», свичей, роутеров и тому подобное, обязательно столкнется с tftp. Любят его производители железа именно за буковку t, которая означает trivial, а именно простой протокол передачи файлов. В состав базовой системы FreeBSD входит как сервер, запускаемый через inetd, так и клиент этого протокола. Настройка сводится к прописыванию в настройках inetd и указании правильных флагов. По умолчанию установлены такие флаги:
tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /tftpboot
Для нормальной и удобной работы, нужно добавить флаг -w, он добавляет возможность создания файлов, иначе придется создавать файлы самому, а потом поверх вручную созданного файла вливать нужный файл.
Флаг -l указывает логировать все события
-s и указанная далее директория, указывает tftpd использовать указанную директорию, как корневую для сервера.
По итогу у нас получается такая строка для inetd.conf
tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -w -s /tftpboot
После чего, нужно перезапустить inetd
/etc/rc.d/inetd restart
Теперь нужно создать нашу корневую директорию /tftpboot и сделать ее владельцем nobody.
mkdir /tftpboot chown nobody:nogroup /tftpboot
Сделать владельцем nobody мы должны, потому что tftpd операции выполняет от имени этого пользователя, и уж если мы разрешили создавать файлы tftpd, то нужно дать ему возможность создавать файлы.
Проверить работоспособность можно при помощи команды tftp, в каталоге в котором мы будем запускать tftp, есть файл test.txt, сервер запущен по адресу 192.168.0.1, проверим работоспособность:
tftp 192.168.0.1 put test.txt
Если все нормально, файл появится в /tftpboot.
Когда мы убедились, что все работает нормально, стоит защитить наш сервер от постороннего вторжения. Конечно, протокол tftp действительно простой и что бы скачать файл, нужно знать его имя, лучше всего не предоставлять возможности соединится с сервером, просто потому, что использовать его посторонними не нужно. Прикроем с помощью hosts.allow от всех, оставим доступ только для сети 192.168.0.0/24, для этого внесем такие строки:
tftpd : 192.168.0.0/255.255.255.0 : allow
tftpd : ALL :denyНу а использовать этот протокол с разных железяк по разному, например с оборудования компании Cisco это выглядит так:
copy running-config tftp://192.168.0.1/ Address or name of remote host [192.168.0.1]? Destination filename [hilik-confg]? !! 10436 bytes copied in 3.456 secs (3020 bytes/sec)
В последнее время большая часть оборудования стала поддерживать более сложные протоколы, ftp, scp, а большинство управляемые через вебинтерфейс дают возможность скачивать и заливать прошивки и конфиги по HTTP протоколу. Тем не менее для недорогого оборудования tftp протокол остается актуальным.
Комментариев нет
Комментариев нет.
RSS-лента комментариев к этой записи. TrackBack URI

