tftp
Роль Ansible для установки TFTP (Trivial File Transfer Protocol) сервера на RHEL/CentOS 7. Основные задачи этой роли:
- установка необходимых пакетов
- управление конфигурацией
- управление настройками SELinux
Для получения дополнительной информации о TFTP можно обратиться к:
Требования
нет.
Переменные роли
Администратор может установить следующие переменные:
Переменная | значение по умолчанию | Комментарии (тип) |
---|---|---|
tftp_anon_write |
false | Булевое значение, указывающее, разрешает ли SELinux изменение файлов. |
tftp_config |
/usr/lib/systemd/system/tftp.service | Путь к файлу юнита systemd для tftp |
tftp_group |
root | Группа для tftp_root_directory |
tftp_home_dir |
false | Булевое значение, указывающее на SELinux |
tftp_mode |
0755 | Права доступа для tftp_root_directory |
tftp_root_directory |
/var/lib/tftpboot | Путь к корневой директории, обслуживаемой tftp. |
tftp_server_args |
--secure | Аргументы командной строки, передаваемые исполняемому файлу сервера |
tftp_server_foreman_support |
false | Включить поддержку Foreman, создав соответствующий tftpd.map |
tftp_setype |
tftpdir_rw_t | Контекст SELinux для корневой директории tftp |
tftp_user |
root | Владелец tftp_root_directory |
Зависимости
Нет зависимостей.
Пример плейбука
Посмотрите тестовый плейбук
Тестирование
Тесты для этой роли предоставлены в виде окружения Vagrant, которое хранится в отдельной ветке, tests. Я использую git-worktree(1), чтобы включить тестовый код в рабочий каталог. Инструкции по запуску тестов:
- Получите ветку тестов:
git fetch origin tests
- Создайте Git worktree для тестового кода:
git worktree add tests tests
(замечание: требуется как минимум Git v2.5.0). Это создаст каталогtests/
. cd tests/
- Затем выполните
vagrant up
, чтобы создать ВМ и применить второй из двух доступных тестовых плейбуков, указанных ниже.
Тестовые плейбуки:
test-minimal.yml
применяет роль к ВМ с настройками по умолчанию (переменные роли не заданы).test.yml
применяет роль к ВМ, изменяя некоторые значения по умолчанию. Плейбук также помещает файл с именем README в корневую директорию TFTP. После применения этого плейбука вы сможете получить этот файл с вашей хост-системы (при условии, что клиентtftp
установлен):$ tftp 127.0.0.1 6969 -c get README
Порт TFTP (69) на ВМ перенаправляется через интерфейс NAT на порт 6969 на вашей хост-системе, поэтому в командной строке используются 127.0.0.1 и номер порта.
Участие
Вопросы, запросы на функции и идеи приветствуются и могут быть опубликованы в разделе Issues. Запросы на слияние также очень приветствуются. Предпочтительно создать ветку темы и при отправке объединить ваши коммиты в один (с описательным сообщением).
Лицензия
BSD
Информация об авторе
Берт Ван Врекем (bert.vanvreckem@gmail.com)
Внесли вклад:
- @ckaserer
- @kostyrevaa: Поддержка Foreman (v1.2.0)
- @pugnacity
Installs and configures a TFTP (Trivial File Transfer Protocol) server on RHEL/CentOS 7 and Ubuntu
ansible-galaxy install ckaserer/ansible-role-tftp