PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : iptable ftp dyn ip ossec



Namandar
10.10.06, 19:19
Hallo allesamt,

ich hab hier schon rumgesucht, aber speziell zu diesem Thema leider nix passendes gefunden... (villeicht bin ich ja auch blind #-)
Nunja, das problem:
Root Server Debian 3.1
ossec
iptables (nur standart bislle):

#!/bin/sh
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p icmp -m icmp --icmp-type 5 -j DROP
iptables -A INPUT -p icmp -j ACCEPT
# ftp
iptables -A INPUT -p tcp --dport 20:21 -j DROP
#iptables -A INPUT -p tcp --dport 20:21 -j ACCEPT
# ssh block! new port @666
#iptables -A INPUT -p tcp --dport 10000 -j ACCEPT
# new ssh
iptables -A INPUT -p tcp --dport 676 -j ACCEPT
# www
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
#iptables -A INPUT -p tcp --dport 81 -j ACCEPT
# drop mysql
#iptables -A INPUT -p tcp --dport 3306 -j DROP
#iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
# mail rules
iptables -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -A INPUT -p tcp --dport 110 -j ACCEPT
#iptables -A INPUT -p tcp --dport 143 -j ACCEPT
#iptables -A INPUT -p tcp --dport 993 -j ACCEPT
#iptables -A INPUT -p tcp --dport 995 -j ACCEPT
# Bad Guys'IP addresses to block/drop
# iptables -A INPUT -s 172.34.5.8 -j DROP

Problem ist der ftp. Ich muss den immer von Hand umschalten damit der nich offen is. Ich hatte ständig attacken da drauf, deswegen auch ossec.
Nun hab ich im ossec wenigsten so:

#!/bin/bash
#
# Declare some stuff
#IP_LIST=/root/ossecme/ip_list # set ip list dir
OSSCONFORIG=/var/ossec/etc/ossec.conf.orig # orig dir
OSSCONF=/root/ossecme/ossec.conf # test dir of ossec
OSSNEW=/root/ossecme/ossconf.updated
OSSECONF=/var/ossec/etc/ossec.conf

# get ip infos
#nslookup fr34k.dyndns.org | grep Address | awk '{print $2 }' | sed -n '2p'
IPFREAK=`nslookup xxxx.dyndns.org | grep Address | awk '{print $2 }' | sed -n '2p'` # ip for xxxx.dyndns.org
IPDAMRO=`nslookup xxxxxxx.dyndns.org | grep Address | awk '{print $2 }' | sed -n '2p'` # ip for xxxxxxx.dyndns.org

# copy ossconf
cp $OSSCONFORIG $OSSCONF

# write ips in ossconf
sed '194s/<white_list>127.0.0.1<\/white_list>/<white_list>127.0.0.1<\/white_list>\n <white_list>'$IPFREAK'<\/white_list>\n <
white_list>'$IPDAMRO'<\/white_list>/' $OSSCONF > $OSSNEW

# copy ossconf to dir
cp $OSSNEW $OSSECONF

# restart ossec
/etc/init.d/ossec restart

es realisiert das ich immer in der whitelist stehe (crontab).
Nun wollte ich was ähnliches machen das ich auch IMMER zugang zum ftp hab via dynip.
Hat mir da jemand nen lösungsansatz ?

Danke

EDIT:
Mir ist da grad was eingefallen: Wenn ich via crontab meine IP in ne variable tu, diese dann via export zugänglich mache, dann müsste ich doch via iptables script darauf zugreifen können ? ...
Was ich aber immernoch nicht weiß wie der iptables befehl dazu heissen müsste ...
iptables --source $MEINEIP --dest ftp ALLOW ??

Namandar
11.10.06, 16:58
schade, ich dacht ihr könnt mir nen tipp geben .. ich hab nu alle möglichen firewalls gedownloadet und mal angeschaut, auf netfilter rumgestöbert, rumGeGoogelt und hier im forum geschaut .. vielleicht hab ichs ja auch schon tausend mal gelesen wie es geht .. aber ich kapiers einfach nicht und bitte deshalb nochmal um eure hilfe ....
sowas in derart:
iptables -A INPUT -p tcp -s ! $IPFREAK --dport 20:21 -j DROP (also alles verwerfen ausser IPFREAK)
wobei es insgesamt 3 ip's gäbe die erlaubt werden dürften)
büüüütte ....

Namandar
11.10.06, 18:42
okay, für alle dies wissen wollen, ich habs durch längeres probieren selbst rausgefunden, und jeden dens intressiert hier mein ergebnis: (ich hasse offene fragen in einem forum)
#als erstes dynamische ip's in variblen
IPFREAK=`nslookup host1.dyndns.org | grep Address | awk '{print $2 }' | sed -n '2p'` # ip for host1.dyndns.org
IPDAMRO=`nslookup host2.dyndns.org | grep Address | awk '{print $2 }' | sed -n '2p'` # ip for host2.dyndns.org

#und dann diese erlauben
iptables -A INPUT -p tcp --dport 20:21 -s $IPFREAK -j ACCEPT
iptables -A INPUT -p tcp --dport 20:21 -s $IPDAMRO -j ACCEPT

#und den rest verbieten:
iptables -A INPUT -p tcp --dport 20:21 -j DROP

so haben nur diese 2IP's zugriff auf ftp.
Wenn ich mich Irre, schlagt mich :) (oder sagts mir einfach ....)
so long

p.s.: mal so am rande, wer weis den schon das man _vorher_ klar machen muss wer darf, und _hinterher_ zumacht...
ich dachte immer _erst_ zumachen, dann das was man braucht öffnen ... hmmmm