tftp

gplv3 Maintenance

Роль 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), чтобы включить тестовый код в рабочий каталог. Инструкции по запуску тестов:

  1. Получите ветку тестов: git fetch origin tests
  2. Создайте Git worktree для тестового кода: git worktree add tests tests (замечание: требуется как минимум Git v2.5.0). Это создаст каталог tests/.
  3. cd tests/
  4. Затем выполните 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)

Внесли вклад:

О проекте

Installs and configures a TFTP (Trivial File Transfer Protocol) server on RHEL/CentOS 7 and Ubuntu

Установить
ansible-galaxy install ckaserer/ansible-role-tftp
Лицензия
other
Загрузки
133376
Владелец
Anything related to Containers, CI/CD or general automation is fair game for him - give him a terminal and he is happy.