Извините, что поднимаю тему, которая много раз было. Да, я в курсе что google на запрос «shell программиование» выдаёт много всего. Но вот что не понятно.
1. export - это команда, экспортирующая локальную переменную, после чего локальная переменная становится переменной окружения и будет доступна в других шеллах, запущеных под другими пользователями. Поэтому export должна запускаться под рутом, но посколько это внутренняя команда, то, чтобы запустить её через sudo, нужно это делать через отдельный шелл, то есть:
sudo bash -c 'export netplan=beeline'
2. Потом нужно, чтобы при определённом значении переменной добавлялись правила фаерволла:
#!/bin/bash
if [$netplan=beeline]
then
iptables -t filter -A INPUT -i eth0 -p icmp -j ACCEPT
iptables -t filter -A INPUT -i eth0 -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t filter -A INPUT -i eth0 -p udp -j ACCEPT
iptables -t filter -A INPUT -i eth0 -j REJECT
fi
3. И наконец, под шеллом по умолчанию bash или sh подразумевается?