Вопрос или проблема
Я нахожусь на машине с CentOS 7. Я хотел бы попробовать использовать nftables. Многие сайты упоминают iptables-translate как полезный инструмент для перевода правил из iptables в nftables. Я установил пакет nftables.x86_64
и имею команду nft
, но у меня нет iptables-translate:
$ iptables-translate --help
-bash: iptables-translate: команда не найдена
Поиск через yum для iptables-translate
и xtables-translate
ничего не дает. Как мне установить этот инструмент?
iptables-translate
упакован в более новой версии iptables
. CentOS 8 поставляется с iptables-1.8.x, который имеет iptables-translate
.
[root@ed766839cb33 dnf]# dnf whatprovides iptables-translate
Не удалось установить локаль, используется по умолчанию C.UTF-8
Последняя проверка обновлений метаданных: 0:04:19 назад в пятницу 9 октября 2020.
iptables-1.8.4-10.el8_2.1.i686 : Инструменты для управления возможностями фильтрации пакетов ядра Linux
Репозиторий : BaseOS
Сопоставлено из:
Имя файла : /usr/sbin/iptables-translate
iptables-1.8.4-10.el8_2.1.x86_64 : Инструменты для управления возможностями фильтрации пакетов ядра Linux
Репозиторий : @System
Сопоставлено из:
Имя файла : /usr/sbin/iptables-translate
iptables-1.8.4-10.el8_2.1.x86_64 : Инструменты для управления возможностями фильтрации пакетов ядра Linux
Репозиторий : BaseOS
Сопоставлено из:
Имя файла : /usr/sbin/iptables-translate
Ответ или решение
Для установки утилиты iptables-translate
на CentOS 7, необходимо обратить внимание на то, что эта утилита поставляется с более новыми версиями пакета iptables
, начиная с версии 1.8. Однако в стандартных репозиториях CentOS 7 доступна более старая версия iptables
, которая не включает данную утилиту.
Вот шаги, которые вы можете предпринять для установки iptables-translate
:
-
Подключите EPEL-репозиторий: Убедитесь, что у вас установлен EPEL-репозиторий, который может содержать более новые версии пакетов.
sudo yum install epel-release
-
Установите более новую версию iptables: Чтобы получить
iptables-translate
, вам нужно установить пакеты из репозиторияnux-dextop
, который поддерживает более новые версииiptables
. Для этого выполните следующие команды:sudo yum install https://www.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm
-
Обновите базу данных YUM:
sudo yum makecache
-
Установите iptables с необходимой версией:
sudo yum install iptables
-
Проверьте установку: После завершения установки, проверьте, что
iptables-translate
доступен в системе:iptables-translate --help
Если установка выполнена успешно, вы увидите доступные опции и команды для использования iptables-translate
.
Обратите внимание: При работе с правилами сетевого фильтрации всегда рекомендуется создавать резервные копии существующих правил перед внесением изменений, чтобы избежать потери доступа к удалённому серверу из-за неправильных настроек.
Если вы по-прежнему не можете найти iptables-translate
, можно рассмотреть возможность обновления до более новой версии CentOS, такой как CentOS 8 или использование более новых дистрибутивов, таких как Fedora, которые имеют предполагаемые версии iptables
с необходимыми утилитами уже предустановленными.