hi folk,
I'm a
first of all , excuse me for my english, it's not my natural language :P
than, we go stright on my problem:
for my firewall I want to make some configuration files like:
prerouting.conf
postrouting.conf
allow_forwarding.conf
allow_incoming.conf
4 example prerouting.cong:
"
#IP_machine PORT
#my pc
192.168.8.101 6000
192.168.8.102 12000
#production 2
192.168.5.103 21000
192.168.8.110 11023
"
And than, I want my rc.firewall like this:
"
#!/bin/bash
$iptables=/usr/sbin/iptables
$ANY="0.0.0.0\0"
.........(omissis)
#=============#
# Prerouting service #
#=============#
FILECONF="/etc/firewall/prerouting.conf"
cat $FILECONF | awk '!/#/&&/\y/ {
`$iptables -t nat -A PREROUTING -p tcp --dport $2 -i ppp0 -j DNAT --to $1:$2`
}'
"
I use "!/#/&&/\y/" to delete the "#" line and blank line
the ` command ` isn't accept from awk construct
I can use :
awk '......{
system(command)
}
but so I can't use variables in "command" neither internal variables (awk var) nor external (x ex.: $ANY or $iptables)...
So, I try to use the "for" loop like this
"
for HOST in "192.168.8.101 6000" "192.168.8.102 12000"
do
set -- $HOST
$iptables -t nat -A PREROUTING -p tcp --dport $2 -i ppp0 -j DNAT --to $1:$2
#during first loop, $1=192.168.8.101 and $2=6000 and so on...
done
"
It work fine good, but I don't know how to make,reading from file, an array made like this:
each field of array is made of a list of 2( or n..) elements: "IP PORT"
$HOSTLIST=("192.168.8.101 6000" ....
It dosen't work!
........
At the end of all, I don't know how to solve my problem: read 2 field data from a conf file!!!!
Anyone have some suggestions??!?!?!?!?
TNX... (even only for attantion!!! :P)
Alex, IT