проверить наличие ip и обновить iptables openvpn

Я хочу проверить, присутствует ли ip в папке ccd, и передать IP-маршрут в цепочку FORWARDING в iptables. Я новичок в написании сценариев bash и мне нужна небольшая помощь в завершении этого сценария.

файл клиента в / etc / openvpn / ccd:

ifconfig-push 10.8.0.45 255.255.255.0
push 'route 10.10.0.45'

Мне нужно grep 10.8.0.45 и 10.10.0.45

и нажать их маршруты в iptables. например

iptables -A FORWARD -s 10.8.0.45 -d 10.10.0.45 -j ACCEPT

client-connect /etc/openvpn/on_connect.sh[12231 visiblescript Мне нужна помощь с 'grep' или 'awk'

static_ip=  grep "^push \"route" | grep "^'" | cut -f2 -d" "

ip_destination=grep "^push \"route" | grep "^'" | cut -f3 -d" "
 #! / usr / bin / env bash
 #
 # Добавить правила iptables на основе конфигурации клиента CCD.
 #

CCD_DIR = "/ и т.д. / openvpn / ccd"
 # комментарий правила iptables -сценарий отключения будет
 # удалить все строки, соответствующие этому шаблону
RULE_COMMENT = "OVPN _" $ common_name
static_ip = grep ..
ip_destination = grep ..



если [-f $ CCD_DIR / $ common_name];  тогда
  sudo iptables -A FORWARD -s $ static_ip -d ip_destination -j ACCEPT
фи

выход 0
 
0
задан 2 March 2020 в 12:19
1 ответ

Если вы хотите найти файлы в каталоге openvpn , grep -R / etc / openvpn / ccd -E '10. (8 | 45) .0.45 ' Чтобы проверить, вернет ли это успех, вы можете сделать:

 if grep -qRE /etc/openvpn/ccd '10\.(8|45)\.0\.45' ; then
    : # do somethig
 fi

HTH.

P.S. Я хотел добавить комментарии, чтобы узнать подробности, но у меня недостаточно очков для комментариев

1
ответ дан 30 March 2020 в 01:22

Теги

Похожие вопросы