Tillbaka till svenska Fidonet
English   Information   Debug  
IC   0/2851
INTERNET   0/424
INTERUSER   0/3
IP_CONNECT   719
JAMNNTPD   0/233
JAMTLAND   0/47
KATTY_KORNER   0/41
LAN   0/16
LINUX-USER   0/19
LINUXHELP   0/1155
LINUX   0/22013
LINUX_BBS   0/957
mail   18.68
mail_fore_ok   249
MENSA   0/341
MODERATOR   0/102
MONTE   0/992
MOSCOW_OKLAHOMA   0/1245
MUFFIN   0/783
MUSIC   0/321
N203_STAT   900
N203_SYSCHAT   313
NET203   321
NET204   69
NET_DEV   0/10
NORD.ADMIN   0/101
NORD.CHAT   0/2572
NORD.FIDONET   189
NORD.HARDWARE   0/28
NORD.KULTUR   0/114
NORD.PROG   0/32
NORD.SOFTWARE   0/88
NORD.TEKNIK   0/58
NORD   0/453
OCCULT_CHAT   0/93
OS2BBS   0/787
OS2DOSBBS   0/580
OS2HW   0/42
OS2INET   0/37
OS2LAN   0/134
OS2PROG   0/36
OS2REXX   0/113
OS2USER-L   207
OS2   0/4785
OSDEBATE   0/18996
PASCAL   0/490
PERL   0/457
PHP   0/45
POINTS   0/405
POLITICS   0/29554
POL_INC   0/14731
PSION   103
R20_ADMIN   1117
R20_AMATORRADIO   0/2
R20_BEST_OF_FIDONET   13
R20_CHAT   0/893
R20_DEPP   0/3
R20_DEV   399
R20_ECHO2   1379
R20_ECHOPRES   0/35
R20_ESTAT   0/719
R20_FIDONETPROG...
...RAM.MYPOINT
  0/2
R20_FIDONETPROGRAM   0/22
R20_FIDONET   0/248
R20_FILEFIND   0/24
R20_FILEFOUND   0/22
R20_HIFI   0/3
R20_INFO2   2817
R20_INTERNET   0/12940
R20_INTRESSE   0/60
R20_INTR_KOM   0/99
R20_KANDIDAT.CHAT   42
R20_KANDIDAT   28
R20_KOM_DEV   112
R20_KONTROLL   0/13070
R20_KORSET   0/18
R20_LOKALTRAFIK   0/24
R20_MODERATOR   0/1852
R20_NC   76
R20_NET200   245
R20_NETWORK.OTH...
...ERNETS
  0/13
R20_OPERATIVSYS...
...TEM.LINUX
  0/44
R20_PROGRAMVAROR   0/1
R20_REC2NEC   534
R20_SFOSM   0/340
R20_SF   0/108
R20_SPRAK.ENGLISH   0/1
R20_SQUISH   107
R20_TEST   2
R20_WORST_OF_FIDONET   12
RAR   0/9
RA_MULTI   106
RA_UTIL   0/162
REGCON.EUR   0/2055
REGCON   0/13
SCIENCE   0/1206
SF   0/239
SHAREWARE_SUPPORT   0/5146
SHAREWRE   0/14
SIMPSONS   0/169
STATS_OLD1   0/2539.065
STATS_OLD2   0/2530
STATS_OLD3   0/2395.095
STATS_OLD4   0/1692.25
SURVIVOR   0/495
SYSOPS_CORNER   0/3
SYSOP   0/84
TAGLINES   0/112
TEAMOS2   0/4530
TECH   0/2617
TEST.444   0/105
TRAPDOOR   0/19
TREK   0/755
TUB   0/290
UFO   0/40
UNIX   0/1316
USA_EURLINK   0/102
USR_MODEMS   0/1
VATICAN   0/2740
VIETNAM_VETS   0/14
VIRUS   0/378
VIRUS_INFO   0/201
VISUAL_BASIC   0/473
WHITEHOUSE   0/5187
WIN2000   0/101
WIN32   0/30
WIN95   0/4277
WIN95_OLD1   0/70272
WINDOWS   0/1517
WWB_SYSOP   0/419
WWB_TECH   0/810
ZCC-PUBLIC   0/1
ZEC   4

 
4DOS   0/134
ABORTION   0/7
ALASKA_CHAT   0/506
ALLFIX_FILE   0/1313
ALLFIX_FILE_OLD1   0/7997
ALT_DOS   0/152
AMATEUR_RADIO   0/1039
AMIGASALE   0/14
AMIGA   0/331
AMIGA_INT   0/1
AMIGA_PROG   0/20
AMIGA_SYSOP   0/26
ANIME   0/15
ARGUS   0/924
ASCII_ART   0/340
ASIAN_LINK   0/651
ASTRONOMY   0/417
AUDIO   0/92
AUTOMOBILE_RACING   0/105
BABYLON5   0/17862
BAG   135
BATPOWER   0/361
BBBS.ENGLISH   0/382
BBSLAW   0/109
BBS_ADS   0/5290
BBS_INTERNET   0/507
BIBLE   0/3563
BINKD   0/1119
BINKLEY   0/215
BLUEWAVE   0/2173
CABLE_MODEMS   0/25
CBM   0/46
CDRECORD   0/66
CDROM   0/20
CLASSIC_COMPUTER   0/378
COMICS   0/15
CONSPRCY   0/899
COOKING   28619
COOKING_OLD1   0/24719
COOKING_OLD2   0/40862
COOKING_OLD3   0/37489
COOKING_OLD4   0/35496
COOKING_OLD5   9370
C_ECHO   0/189
C_PLUSPLUS   0/31
DIRTY_DOZEN   0/201
DOORGAMES   0/2025
DOS_INTERNET   0/196
duplikat   6000
ECHOLIST   0/18295
EC_SUPPORT   0/318
ELECTRONICS   0/359
ELEKTRONIK.GER   1534
ENET.LINGUISTIC   0/13
ENET.POLITICS   0/4
ENET.SOFT   0/11701
ENET.SYSOP   33806
ENET.TALKS   0/32
ENGLISH_TUTOR   0/2000
EVOLUTION   0/1335
FDECHO   0/217
FDN_ANNOUNCE   0/7068
FIDONEWS   23548
FIDONEWS_OLD1   0/49742
FIDONEWS_OLD2   0/35949
FIDONEWS_OLD3   0/30874
FIDONEWS_OLD4   0/37224
FIDO_SYSOP   12847
FIDO_UTIL   0/180
FILEFIND   0/209
FILEGATE   0/212
FILM   0/18
FNEWS_PUBLISH   4200
FN_SYSOP   41525
FN_SYSOP_OLD1   71952
FTP_FIDO   0/2
FTSC_PUBLIC   0/13586
FUNNY   0/4886
GENEALOGY.EUR   0/71
GET_INFO   105
GOLDED   0/408
HAM   0/16053
HOLYSMOKE   0/6791
HOT_SITES   0/1
HTMLEDIT   0/71
HUB203   466
HUB_100   264
HUB_400   39
HUMOR   0/29
Möte LINUX, 22013 texter
 lista första sista föregående nästa
Text 7686, 205 rader
Skriven 2006-10-24 00:24:00 av MARTIN ATKINS (1:123/140)
     Kommentar till en text av PAUL ROGERS
Ärende: Latest firewall script
==============================
-=> PAUL ROGERS wrote to MARTIN ATKINS <=-

 PR>   NAMESERVER_2=209.102.124.15  # change as necessary
 MA> Fair enough if your local net is routing you to the outside world.

 PR> Actually, I guess I could change that to the router's address.
 PR> Bering provides a DNS relay with its firewall/router.  But it
 PR> goes to those same addresses.  I don't use a local DNS, all
 PR> static in /etc/hosts.

If the statefull side of your table is working then it might be better
to leave it alone. After all it's not ugly.

 MA> Nameservers are not my strong point as i only have a small home network
 MA> and the other machines routed to the outside world yet.

 PR> Those are DNS servers provided by my ISP.

Ok that reinforces my above view.

 PR>   LOOPBACK="127.0.0.0/8"
 MA> Why define loopback this way? Loopback is for testing your own machine

 PR> That was how the original parts I borrowed from James Stephens
 PR> defined it--didn't see any overwhelming reason to change it.

 MA> and normally will only be 127.0.0.0. Iptables accepts "lo" and so
 MA> _normally_ does not require defining.

 PR> Right.  "Normally".  But IIANM all of 127 is defined as
 PR> loopback, and IIRC I've seen 127.0.0.1 used also.  This gets the
 PR> whole range.

Yea but it adds to the complexity of the script. No offense meant
but KISS allows you to quickly read a table and identify any anomalies. 

$IPTABLES -A INPUT -i lo -j ACCEPT

This should do what you want and do away with three lines of script
and one definition. Nice. ;)

 PR>   CLASS_A="10.0.0.0/8"
 PR>   CLASS_B="172.16.0.0/12"
 PR>   CLASS_C="192.168.0.0/16"
 PR>   CLASS_D_MULTICAST="224.0.0.0/4"
 PR>   CLASS_E_RESERVED_NET="240.0.0.0/5"

 MA> None of these are necessary. Since INPUT policy is DROP they never
 MA> get through.

 PR> They do.  I get probes from Class-C addresses coming from other
 PR> users on the ISP's routers frequently--some of the other
 PR> customers aren't clean.  (And they may not even know.)
 PR> Depending on how the ISP configures itself, I suppose I could
 PR> get any of the RFC1419 addresses.  I'd rather have the check
 PR> than not.

Doh' Silly me. Yes of course you are filtering on the ports and
not Ip's.

 PR>   EPHEM="1024:65535"   # ephemeral ports
 MA> If as /proc/sys/net/ipv4/ip_local_port_range or what is appropriate
 MA> for your distro.

 PR> I have some checks in it that might not be necessary, e.g.
 PR> fragments, depending on how the kernel parameters are set.  I
 PR> know some set those as part of the firewall setup.  I chose to
 PR> keep the two separate and dedicate this script to just the
 PR> iptables setup.  I'd rather waste a small amount of time having
 PR> the firewall check, in case kernel checking gets turned off.

Waaay over my head. ;)

 PR>   TR_SRC_PORTS="32769:65535"
 PR>   TR_DEST_PORTS="33434:33523"
 MA> This is a worry. $EPHEM is now defined so these ports are as far as i
 MA> know safe. There may be some reason for defining these ports but it is
 MA> not  obvious from this script

 PR> They're used later on to allow traceroutes.

Your knowledge of networking far exceeds mine so be forgiving if
i seem nieve but:-

iptables -A INPUT  -p tcp --sport $EPHEM --dport $EPHEM -m state --state
ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -p tcp --sport $EPHEM --dport $EPHEM -m state --state
ESTABLISHED,RELATED -j ACCEPT 

Here you are accepting $EPHEM (1024:65535) under established rules so
these two definitions are not neccasary. Unless of course traceroute 
doesn't comply with the above rules.

 PR>   TR_SRC_PORTS="32769:65535"
 PR>   TR_DEST_PORTS="33434:33523"

You will need try and explian if you will why traceroute needs it's
own rules. Also notice that if the output policy was ACCEPT then
the second line of the tcp rule is redundant.

 PR>   LOCAL_NET=$BASEIP.0/24
 MA> This doesn't make sense to me. $BASEIP has not been defined in this
 MA> script nor has $network_devices/ifconfig.eth0$network_devices
 MA> /ifconfig.eth0

 PR> It is on my LFS systems.  It's there as part of my installation
 PR> process.  It asks once for a base-IP, then just the LAN node
 PR> numbers for the workstation, the server, the router.  Saves
 PR> typing, or more properly mistyping.

Hmm I don't "think" it belongs in the firewall script. I'm at a 
disadvantage here as LFS is forign to me. Normaly these things
are done in /etc/rc.d/init.d or /etc/xinetd.d but even if i'm
wrong it looks to me an ugly iplimtation of what you are trying to 
achieve.  

 PR>   iptables -P FORWARD DROP
 PR>   iptables -P OUTPUT DROP
 MA> Unless you are intending to block yourself or a terminal on your

 PR> Making the default policy DROP makes sure nothing gets through
 PR> while I'm allowing things.  It's the right way to do it, even
 PR> since I start the firewall before I bring up eth0.  But some
 PR> distros aren't that careful, RHL[6,7] IIANM.

Nooo it's the wrong way of doing it and it is not just my opinion.
I subscribe to the netfilter list and time and time again those with
greater knowledge than i (just about everyone) say that filtering
on the output policy is seldom if ever needed.

MA> network from the communicating with the outside world then:-
MA> iptables -P OUTPUT ACCEPT
MA> Even if you do intend to restrict output from certain terminals there
MA> are better ways of doing it.

 PR> Better in what sense?

By filtering on the input policy (DROP) you are affectivly dealing
with situations before they hit the rest of the chain. This saves
a lot of uneccassary scripting as i have shown you on two accasions.

 PR>   iptables -A INPUT  -i lo -s $IP -j ACCEPT
 PR>   iptables -A OUTPUT -o lo -d $IP -j ACCEPT
 MA> As far as i can see $IP has not been defined in this script. Even if

 PR> Remember those sourced files?  If yours isn't defined there you
 PR> could define it anywhere you like.

Yes but do you think anyone can make an informed comment on you script
when they have to deal with externel definitions on your machine?

 MA> it was $IP cannot under normal circumstances request "lo" on a remote
 MA> machine.

 PR> I didn't think so either.  Then I found packets being dropped on
 PR> the loopback interface with my IP address rather than 127.0.0.0,
 PR> so I had to allow both.

Your IP address is the etho card (or what ever) that links your machine 
to the network. It is not the loopback address. 

 PR> #### PGR: BLACKLIST CHECKING
 MA> Why not cover all this with the input policy?

 PR> It works and it's the way I chose to do it.

Ah yes. The old "if it ain't broke don't fix it" philosophy. I subscribe
to this tenet when it comes to old automobiles but we ain't talking
about automobiles we are talking scripting and firewalls. A well crafted
script is a pleasure when achieved and a wonder for others to behold. :)

########################################################################  

 PR> function off {
 PR>   # stop firewall
 PR>   echo "Firewall: disabling filtering (allowing all access)"
 PR>   echo "Are you sure?  Really sure?"
 PR>   read ans
 PR>   if [ $ans = "y" -o $ans = "Y" ]; then
 PR>     iptables -P INPUT ACCEPT
 PR>     iptables -P OUTPUT ACCEPT
 PR>     iptables -P FORWARD ACCEPT
 PR>     iptables -F
 PR>     iptables -X
 PR>     echo "The gates to the citadel are wide open!"
 PR>     echo "Welcome, sailor!"
 PR>   else
 PR>     echo "Good idea!  Firewall stop, cancelled."
 PR>   fi
 PR> }

# flush.sh

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F
iptables -X
iptables -L -v

This is an after thought from my last message. If run from a terminal
it will give you a better output.

--- MultiMail/Linux v0.47
 * Origin: Try Our Web Based QWK: DOCSPLACE.ORG (1:123/140)