>> Any setup, which isn't using "standard" path names hard-coded in 
>> unistall.sh - have a look!
> 
> Okay -- so we can summarize by saying that Shorewall currently doesn't
> handle platforms that don't follow the Linux FHS.
If we do that, we won't do it justice! uninstall.sh has most, if not all of its 
removal paths hard-coded, like so:

rm -f /etc/rc*.d/*$(basename $FIREWALL)
rm -f /sbin/shorewall
rm -f /sbin/shorewall-*.bkout

rm -rf /usr/share/shorewall/version
rm -rf /etc/shorewall
rm -rf /etc/shorewall-*.bkout
rm -rf /var/lib/shorewall
rm -rf /var/lib/shorewall-*.bkout
rm -rf ${PERLLIB}/Shorewall/*
rm -rf ${LIBEXEC}/shorewall
rm -rf /usr/share/shorewall/configfiles/
rm -rf /usr/share/shorewall/Samples/
rm -rf /usr/share/shorewall/Shorewall/
rm -f  /usr/share/shorewall/lib.cli-std
rm -f  /usr/share/shorewall/lib.core
rm -f  /usr/share/shorewall/compiler.pl
rm -f  /usr/share/shorewall/prog.*
rm -f  /usr/share/shorewall/module*
rm -f  /usr/share/shorewall/helpers
rm -f  /usr/share/shorewall/action*
rm -f  /usr/share/shorewall/init
rm -rf /usr/share/shorewall-*.bkout

This not going to work on all platforms supported by shorewall. Removal of the 
shorewall "product" (shorewall-lite/shorewall/shorewall6/shorewall-lite6 etc 
etc) won't be complete. "custom" configuration (similar to the one I pointed 
out to in my previous post) won't be fully removed either.

"Upgrade" by uninstalling/installing is therefore out of the question without 
spending some extra time delving in and this is also prone to errors.

I know you've heard that from me once or twice before, but if you had a single 
file describing various paths on the host used for shorewall installation, that 
won't be a problem at all.

>> I am open to suggestions then as to how to make this work, also bearing 
>> in mind that due to Netfilter stupidity I have to always specify the 
>> protocol (the nf devs might change that as I already raised that issue, 
>> but when - I have no idea).
> 
> This should work:
> 
> eth0:+ntp-ports[dst]  10.1.1.7/30     41000-42000     udp
If I do that, I am bound to get one of those daft warnings telling me to sod 
off using 'dst' in the SOURCE column - but you already knew that, didn't you?

> I've added a new option in 4.5.2 that allows you to turn this on and off
> as you choose. But the implementation will remain consistent across all
> configuration files.
So, employing - quite legitimately - 'dst' in the SOURCE column (and 
vice-versa) in the rules file or doing something similar (as in your example 
above) is going to be treated by shorewall in exactly the same way as any other 
nonsensical - and outright wrong - combination I care to put in any of my other 
configuration files (I used masq as an example, but I am sure there are others 
too), instead of shorewall doing the right thing and issuing warnings *only* in 
cases where this is wrong? Wow! Brilliant thinking that, congratulations!

>> Try again! I remember asking to have a warning when a given ipset _does 
>> not exist_, not when _it is not used yet_ as is the case with the 
>> example I've given above.
> 
> These warnings may also be suppressed using the same option mentioned above.
What good would that do? Absolutely nothing, nada!

What is the point of suppressing warnings when I want to *only* be notified 
when a given ipset name does not exist and not when it is not found by 
shorewall for whatever reason - prior to executing init (or any other 
startup/compilation file)?

>>>> 3. Crap status messages included in the compiled "firewall" file for use
>>>> on the remote machine, messages like:
>>>>    progress_message2 Processing /home/mr-4/shorewall/init ... - it
>>>> should be just "Procesing init" as that directory is on my BUILD, not
>>>> HOST ("/home/mr-4/shorewall/" does *not* exist on HOST)
>>>>     
>>> SighÅ .
>>>   
> 
> Will be fixed in 4.5.2.
Thanks!

>> I have managed to fix most of the issues I was getting, but then if/when 
>> I need to upgrade, I have to go through all this again and I simply 
>> don't have the inclination, nor desire to go through with it - I don't 
>> have a couple of hours to spend messing about with patch/diff/sed/grep 
>> etc. to fix this - I'd rather have a single file where all my 
>> shorewall(-lite) settings/paths are and tweak those!
> 
> I hear you.
OK, I managed to create a small test case and I think I found what is causing 
these DNAT errors - there is something odd/weird in my capabilities file which 
is seriously tripping shorewall. I tried to use my own "standard" capabilities 
file (the one I deploy on the dev machine here) and everything works as 
expected. 

I am privately-attaching an archive (don't know whether the ML could handle 
attachments) which contains my whole test case setup as well as the output I am 
getting when compiling my firewall{.conf} files. Let me know if you need 
anything else from me.

Just in case it isn't clear - the reason I am using an "older" capabilities 
file is because I can't afford to spend hours upgrading shorewall on that 
system until either I find that time or a better (understand easier to use and 
less time-consuming) alternative for upgrading of shorewall becomes available.

------------------------------------------------------------------------------
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
_______________________________________________
Shorewall-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/shorewall-devel

Reply via email to