#!/bin/sh

set -e

MODPROBE=/sbin/modprobe
IPTABLES=/sbin/iptables
EXTIF=eth0
MGMT_IF=eth1
MGMT_NET_CIDR=10.0.0.0/8

echo 1 >/proc/sys/net/ipv4/ip_forward

$MODPROBE ip_tables
$MODPROBE ip_conntrack
$MODPROBE ip_conntrack_ftp
$MODPROBE ip_conntrack_irc
$MODPROBE iptable_nat
$MODPROBE ip_nat_ftp

################################################
### DO MASQUERADING FOR THE FUEL SLAVE NODES ###
################################################
#$IPTABLES -P FORWARD DROP
#$IPTABLES -F FORWARD
#$IPTABLES -t nat -F

# Allow all connections OUT and only existing and related ones IN
$IPTABLES -I FORWARD -i ${EXTIF} -o ${MGMT_IF} -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -I FORWARD -i ${MGMT_IF} -s ${MGMT_NET_CIDR} -o ${EXTIF} -j ACCEPT

#$IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
$IPTABLES -t nat -I POSTROUTING -s ${MGMT_NET_CIDR} -o ${EXTIF} -j MASQUERADE

########################################################
### ACCEPT RSYSLOG ONLY FROM FUEL SLAVE NODE NETWORK ###
########################################################
$IPTABLES -A INPUT -d ${MGMT_NET_CIDR} -p udp --dport 514 -j ACCEPT
$IPTABLES -A INPUT -s ${MGMT_NET_CIDR} -p udp --dport 514 -j ACCEPT
$IPTABLES -A INPUT -p udp --dport 514 -j REJECT

$IPTABLES -A INPUT -d ${MGMT_NET_CIDR} -p tcp --dport 514 -j ACCEPT
$IPTABLES -A INPUT -s ${MGMT_NET_CIDR} -p tcp --dport 514 -j ACCEPT
$IPTABLES -A INPUT -p tcp --dport 514 -j REJECT
