Основываясь исключительно на вашем примере, будет достаточно простого цикла для
.
for myfile in ${PF}
do
cp "${myfile}" /opt/backup/
done
Газарет, если вы заметили, помимо правил очереди iptables INPUT, вы настроили правила очереди OUTPUT, и порт 8080/TCP не разрешен/настроен в очереди OUTPUT.
Как вы добавили:
iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
Вам также нужно добавить:
iptables -I OUTPUT -p tcp --sport 8080 -j ACCEPT
iptables способен поддерживать правила брандмауэра с учетом состояния, и поэтому вместо того, чтобы поддерживать две разные очереди, можно сделать:
iptables -I INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
Имейте в виду, что при выполнении этого вручную, вы используете -I для размещения правил в верхней части очереди, а при выполнении этого в пакетном файле, обычно вы делаете iptables -A.
Постоянное сохранение правил брандмауэра Iptables
25 примеров наиболее часто используемых правил IPTables для Linux
Установка Jenkins по умолчанию работает на портах 8080 и 8443. Обычно HTTP/HTTPS серверы работают на портах 80 и 443, соответственно. Но эти порты считаются привилегированными в системах Unix/Linux, и процесс, использующий их, должен принадлежать root. Запускать Jenkins от имени root не рекомендуется - его следует запускать от имени собственного пользователя.
Поэтому вам нужно перенаправить трафик с порта 80/443 на 8080/8443. Вы должны убедиться, что iptables разрешил трафик на все 4 этих порта.
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 8443
iptables-save > /etc/sysconfig/iptables
Альтернативный вариант,
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 127. 0.0.1:8080