Назад | Перейти на главную страницу

Сохранение правил Iptables в файл iptables

Я пытаюсь сохранить текущие правила iptables в файл iptables через приложение Java. Поскольку у меня нет разрешения на запись в файл без входа в корневой каталог, я использую эту команду.

sudo iptables-save | sudo tee /etc/sysconfig/iptables

Когда я набираю указанную выше команду без входа в корень в терминале, она работает (сохраняю правила в файл), но когда я добавляю ту же команду в свою программу Java, она не работает.

Ниже показано, как я реализовал это в своей программе.

..внутренний метод

{
String command="sudo iptables-save | sudo tee /etc/sysconfig/iptables";
Process process=Runtime.getRuntime().exec(command);
}

В чем, кажется, проблема? Есть ли другой способ сохранить правила iptables в файл iptables без входа в корень?

Спасибо

При вызове sudo он запрашивает пароль пользователя, запустившего его, чтобы убедиться, что человек у терминала действительно тот же «Джо», который указан в /etc/sudoers.

Вы должны учитывать это поведение в своей программе.