Lines 67-73
TMPFILE=`mktemp -t ${tempfoo}` || exit 1
Link Here
|
67 |
get_yes_no() { |
67 |
get_yes_no() { |
68 |
while true |
68 |
while true |
69 |
do |
69 |
do |
70 |
echo -n "$1 (Y/N) ? " |
70 |
echo -n "$1 (Y/N) ? " |
71 |
read -t 30 a |
71 |
read -t 30 a |
72 |
if [ $? != 0 ]; then |
72 |
if [ $? != 0 ]; then |
73 |
a="No"; |
73 |
a="No"; |
Lines 94-100
case "${firewall_type}" in
Link Here
|
94 |
[Cc][Ll][Oo][Ss][Ee][Dd]|\ |
94 |
[Cc][Ll][Oo][Ss][Ee][Dd]|\ |
95 |
[Oo][Pp][Ee][Nn]|\ |
95 |
[Oo][Pp][Ee][Nn]|\ |
96 |
[Ss][Ii][Mm][Pp][Ll][Ee]|\ |
96 |
[Ss][Ii][Mm][Pp][Ll][Ee]|\ |
97 |
[Uu][Nn][Kk][Nn][Oo][Ww][Nn]) |
97 |
[Uu][Nn][Kk][Nn][Oo][Ww][Nn]|\ |
|
|
98 |
[Ww][Oo][Rr][Kk][Ss][Tt][Aa][Tt][Ii][Oo][Nn]) |
98 |
edit_file="${firewall_script}" |
99 |
edit_file="${firewall_script}" |
99 |
rules_edit=no |
100 |
rules_edit=no |
100 |
;; |
101 |
;; |
Lines 109-115
esac
Link Here
|
109 |
if [ -f ${edit_file}.new ]; then |
110 |
if [ -f ${edit_file}.new ]; then |
110 |
get_yes_no "A new rules file already exists, do you want to use it" |
111 |
get_yes_no "A new rules file already exists, do you want to use it" |
111 |
[ $a = 'No' ] && cp ${edit_file} ${edit_file}.new |
112 |
[ $a = 'No' ] && cp ${edit_file} ${edit_file}.new |
112 |
else |
113 |
else |
113 |
cp ${edit_file} ${edit_file}.new |
114 |
cp ${edit_file} ${edit_file}.new |
114 |
fi |
115 |
fi |
115 |
|
116 |
|
Lines 142-155
get_yes_no "Would you like to see the resulting new rules"
Link Here
|
142 |
get_yes_no "Type y to keep the new rules" |
143 |
get_yes_no "Type y to keep the new rules" |
143 |
[ $a != 'Yes' ] && restore_rules |
144 |
[ $a != 'Yes' ] && restore_rules |
144 |
|
145 |
|
145 |
DATE=`date "+%Y%m%d%H%M"` |
146 |
if diff -qF "^# .*[A-Za-z]" -u ${edit_file} ${edit_file}.new > /dev/null; then |
146 |
cp ${edit_file} ${edit_file}.$DATE |
147 |
cat <<-! |
147 |
mv ${edit_file}.new ${edit_file} |
148 |
The new rules are now installed. No difference to previous rules. |
148 |
cat <<! |
149 |
! |
149 |
The new rules are now installed. The previous rules have been preserved in |
150 |
else |
150 |
the file ${edit_file}.$DATE |
151 |
DATE=`date "+%Y%m%d%H%M"` |
151 |
! |
152 |
cp ${edit_file} ${edit_file}.$DATE |
152 |
diff -F "^# .*[A-Za-z]" -u ${edit_file}.$DATE ${edit_file} \ |
153 |
mv ${edit_file}.new ${edit_file} |
153 |
| mail -s "`hostname` Firewall rule change" root |
154 |
cat <<-! |
|
|
155 |
The new rules are now installed. The previous rules have been preserved in |
156 |
the file ${edit_file}.$DATE |
157 |
! |
158 |
diff -F "^# .*[A-Za-z]" -u ${edit_file}.$DATE ${edit_file} \ |
159 |
| mail -s "`hostname` Firewall rule change" root |
160 |
fi |
161 |
|
154 |
rm ${TMPFILE} |
162 |
rm ${TMPFILE} |
155 |
exit 0 |
163 |
exit 0 |