Eine sehr gute kostenlose (trotzdem Lizenzbestimmungen beachten) ist
VirtualBox
Was spricht für eine Virtuelle Maschine was dagegen?

Dafür (Pro):
-Es können mehrere,unterschiedliche Betriebsysteme ausprobiert/genutzt werden
-Aufhebung von Kompatibilitätsproblemen z.B. unter Windows 7, XP Programme unter Windows XP in der
VirtuellenMaschine laufen lassen.
-Umzug auf einen neuen Rechner, einfach auf dem alten Rechner die VirtuelleMaschine exportieren und auf dem neuen Rechner importieren.
-Steigerung der Sicherheit durch surfen in der VirtuellenMaschine (Nutzung als Sandbox)
-Nutzung unterschiedlicher Server auf einer Hardware (Mail,FTP etc.)

Dagegen (Kontra):
- Die Wirtmaschine braucht sehr gute Performance (Arbeitsspeicher)
- Fällt die Wirtmaschine aus, sind die Virtuellen mit weg
- Durch die “Zwischenebene” Performance Verluste bei Applikationen

Es ist egal welche Firewall benutzt wird, die Vorgehnsweise ist immer die Gleiche.
Die Firewall wird so eingestellt, das beim ersten Verbingsversuchs eines Programms mit dem
Internet nachgefragt wird.
In der Regel wird jetzt gefragt ob das Programm welches eine Verbindung aufbauen möchte,
das darf und zwar
1) einmal erlauben
2) einmal verbieten
3) immer erlauben
4) immer verbieten
Hier wird einmal verbieten ausgewählt und dann normal weitergearbeitet.
Funktioniert noch alles wird beim nächsten mal Nachfragen (natütlich des gleichen Programms)
immer verbieten angeklickt.
Gab es Probleme wird immer erlauben angeklickt.
Diese Vorgensweise ist natürlich ohne Gewähr, hat sich aber in der Praxis bewährt,
da es hierfür keine abschließende Regel bzw. Liste von Programmen gibt,
welches was wann darf.

Um sich unter Linux die offene Ports mit dazu gehörigen Programm zu finden netstat -pnl als root eintippen.
Unter Windows gebe ich netstat -b auf der Kommandozeilenebene ein.
Auf diese Weise kann ich direkt Programme die unnötige Ports öffnenen beenden und somit
die Sicherheit (System härten) und Resourcen (weniger Prozesse) erhöhen.

Dies spiegelt hier meine persönliche Meinung wieder und soll zum Nachdenken anregen.
Ich meine am sichersten als Passwort sind ganze Sätze.
Die in einem durch ausgeschrieben werden und nicht, wie ich oft lese,
nur die ersten Buchstaben von jedem Wort.
Die Sicherheit resultiert dann aus der Länge, was einen BruteForce Angriff, bzw. ein Mitlesen (Blick von hinten
z.B. im Zug, Restaurant etc.) enorm erschwert.
Erfahrungsgemäß ist es auch gut KEINE Umlaute zu verwenden.
Den nichts ist ärgerlicher, als seine eigenen eMails im Internetcafe im Ausland nicht abrufen zu können,
da die Umlaute im Passwort, auf der landesüblichen Tastatur, nicht vorkommen.

Ich hatte mal einen Ipcop am laufen, der plötzlich nichts mehr durchliess.
Was war passiert ? Die Logs waren voll gelaufen.
Um dies zu verhindern gib es einen “cron” der die logrotate aufruft.
Diese wird durch die “/etc/logrotate.conf” und “/etc/logrotate.d/*” eingestellt.
Die Logs liegen in “/var/log”, einmal konfiguriert hatte ich danach nie wieder Probleme damit.

Diesmal für ein etwas sicherers Linux,
der vollständige Artikel ist auf BotTrap Wiki von Airport1, übrigens Danke für Deine guten Projekte und Arbeiten !

1. Verwende Syn-Cookies und du hast keine Probleme mit SYN-Attacken:
echo 1 > /proc/sys/net/ipv4/tcp_syncookies

2. iptables, dort auffaellige Bereiche sperren,
z.B. mit CIDR Notation (ggf. apt-get install netmask .. mit netmask ipstart:ipend … gutes Umrechnungstool)
iptables -I INPUT -s 88.224.0.0/16 -j DROP # block 88.224.0.0 to 88.255.255.255 TTNet (TTnet Autonomous System)

3. ddos deflate v0.6 installieren von Medialayer Network- zaehlt wie oft eine ip gleichzeitig verbindungen aufbaut mittels netstat und
wenn über einen bestimmten Schwellwert werden diese geblockt.
Am besten als cron job jede minute aufrufen.
/usr/local/ddos … ddos.conf … wenn kein apf installiert apf=0 … connection limit z.b. 35 oder 50

DDOS Deflate v0.6 – v1.0 in Planung:

http://www.deflate.medialayer.com/old/∞ – Projektseite auf http://blog.medialayer.com/projects-ddos-deflate/∞

Script installiert sich in /usr/local/ddos/ und zaehlt Anzahl Verbindungen je IP,
wenn ueber Schwellwert werden diese per
APF oder iptables fuer bestimmte Zeit (alles in ddos.conf einstellen) gebannt

Config: ddos.conf bei NO_OF_CONNECTIONS=150 ruhig runter gehen auf 35, apf auf 0, falls nicht vorhanden
CRON: cronjob ggf. manuell einrichten */1 * * * * root pfad parameter …

IPTABLES

http://de.wikibooks.org/wiki/Linux-Kompendium:_Linux-Firewall_mit_IP-Tables∞

http://de.wikipedia.org/wiki/Netfilter/iptables∞

#Limit bietet Schutz vor “Syn-Flood-Attacken
iptables -A FORWARD -p tcp –syn -m limit –limit 1/s -j ACCEPT

Pakete bestimmter hosts/ranges wegschmeissen:

iptables -I INPUT -s 88.224.0.0/16 -j DROP # block 88.224.0.0 to 88.255.255.255 TTNet (TTnet Autonomous System)

iptables -I INPUT -s 85.0.0.0/8 -j DROP
iptables -I INPUT -s 88.0.0.0/8 -j DROP

–michael bonge–
mit hilfe von iptables könnt ihr ein paar Sachen festlegen,
wie z.b die max connections pro IP beschränken auf z.b. 10
und ihr könnt mit hilfe von iptables packet verwerfen welche
sich nicht an den korrekten Aufbau einer TCP Verbindung halten z.B:

# alle TCP-Sessions müssen mit einem SYN beginnen, sonst werden sie verworfen
$iptables -A INPUT -p tcp ! –syn -m state –state NEW -j LOG –log-prefix “Stealth Scan”
$iptables -A INPUT -p tcp ! –syn -m state –state NEW -j DROP

# ungewöhnliche Flags verwerfen
$iptables -A INPUT -p tcp –tcp-flags ALL FIN,URG,PSH -j DROP
$iptables -A INPUT -p tcp –tcp-flags ALL ALL -j DROP
$iptables -A INPUT -p tcp –tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP
$iptables -A INPUT -p tcp –tcp-flags ALL NONE -j DROP
$iptables -A INPUT -p tcp –tcp-flags SYN,RST SYN,RST -j DROP
$iptables -A INPUT -p tcp –tcp-flags SYN,FIN SYN,FIN -j DROP

# SYN-Flood-Schutz
$iptables -N syn-flood
$iptables -A INPUT -p tcp –syn -j syn-flood
$iptables -A syn-flood -m limit –limit 1/s –limit-burst 4 -j RETURN
$iptables -A syn-flood -j DROP

# Setzt die MMS (Maximum Segment Size) auf weniger 40Bytes für SYN,RST SYN Packete
$iptables -A FORWARD -p tcp –tcp-flags SYN,RST SYN -j TCPMSS –clamp-mss-to-pmtu

# max. 10 neue Verbindungen in 5 Sekunden pro Quelladresse erlauben, nimmt man meistens für SSH
$iptables -N tcp_packets
$iptables -A tcp_packets -p TCP -i $wan_iface –dport 22 -m state –state NEW -m recent –set
$iptables -A tcp_packets -p TCP -i $wan_iface –dport 22 -m state –state NEW -m recent –update –seconds 5 –hitcount 10 -j DROP
$iptables -A tcp_packets -p TCP -i $wan_iface –dport 22 -j ACCEPT

oder

# limitiert die Anzahl von HTTP-Verbindungen einer IP-Adresse auf vier Verbindungen
iptables -A INPUT -p tcp –dport 80 -m iplimit –iplimit-above 4 -j REJECT

Es gibt noch weiter Möglichkeiten, musst ihr einfach mal suchen ..
–michael bonge–

SYN Cookies
syn wiki

Größe der Backlog-Queue anpassen,
je nach Hardware. Standard 1024 offene SYN_RECV’s, z.B. auf 256:

echo 1024 > /proc/sys/net/ipv4/tcp_max_syn_backlog

Syn Packets Straffung:
echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout
echo 1800 > /proc/sys/net/ipv4/tcp_keepalive_time

PDFs zu SYN Flood DDOS bei http://www.computec.ch/download.php?list.7∞ durcharbeiten
IP-Netze nach Ländern, fertig für die .htaccess habe ich unter http://tools.sistrix.com/co/∞

http://www.computerwelt.at/detailArticle.asp?n=4&a=84752∞

http://www.greengatelabs.at/∞

http://wiki.hping.org/109∞

http://virus-protect.org/synflood.html∞

http://www.cback.de∞ (???)

tuerkei komplett sperren

http://www.abakus-internet-marketing.de/foren/viewtopic.php?t=31506&highlight=t%FCrkei+aussperren∞

Achja, das ist auch eine gute Resource als Basis für IPTables Firewalls:

http://www.rfxnetworks.com/apf.php∞

http://www.rfxnetworks.com/apf/README∞

http://www.linuxsecurity.com/content/view/124633/177/∞

http://www.heise.de/security/artikel/43066/0∞

in der apache2.conf

SetHandler perl-script
PerlHandler Apache::PRout
Order Deny,Allow
Deny from 85.
Deny from 88.

<-- nicht garantiert, bessere loesung gesucht, evtl Container besser
Order Deny,Allow
Deny from 85.
Deny from 88.

KeepAlive OFF setzen:
Bei mir /etc/apache2/apache2.conf folgendes suchen:
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to “Off” to deactivate.
KeepAlive On

Ändern auf

KeepAlive Off

Auf die Weise bricht der Apache offene Anfragen einfach ab…. und die Last fällt wieder

.htaccess im Hauptverzeichnis – gilt fuer alle Unterverzeichnisse
Order Deny,Allow
deny from 192.168

APF

APF ist eine Abstraktionslayer zum einfachen konfigurieren von Netfilter via IPTables.
APF enthält schlicht bekannte Schalterchen und Drehknöpfe um verschiedenen Angriffsmustern den Hahn etwas abzudrehen.
Es hängt halt viel von dem auf RH verwendeten Linux ab, ob synflood protection schon an ist (Debian std.) usw.
APF (http://www.rfxnetworks.com/apf.php∞) legt halt viele Hebel schon mal richtig

OK, ihr könntet folgende 2 Programme noch zusätzlich installieren:

http://www.ossec.net/∞

und

http://sourceforge.net/projects/sentrytools/∞

Beides zusammen schafft auch noch mal einiges ins reine.
Im Anhang auch noch einiges zum Thema.

Und wenn nix mehr hilft dann:
Sperren einer einzelnen “bösen” IP-Adresse bzw. eines Netzblocks
per iptables-Filter lässt sich leicht eine einzelne IP-Adresse blocken: von Nick und Deltaflyer aus dem Forum

iptables -I INPUT -s böse_IP -j DROP

Es kann auch ein ganzer IP-Adressbereich geblockt werden, z.B.

iptables -I INPUT -s 213.133.99.0/24 -j DROP

Das Blockieren macht bei dynamischen Einwahl-IP’s des Angreifers/Störers natürlich wenig Sinn.

Schalte doch einfach vor deinen Server (oder machst es auf Softwarebasis) einen Router die diese Pakete ausfiltert.
Ein Text dazu: http://www.heise.de/security/artikel/43066∞

Ich weiß ja nicht, wo ihr eure Seiten hostet, aber wenn ihr einen Rootserver habt, könnt ihr Einstellungen vornehmen, wenn nicht muß euer Provider irgendwas machen.
Eine kurze Recherche im ergab diese Seite:
http://cr.yp.to/syncookies.html∞ (link von der wikipedia).
Interssant ist eigendlich dies hier:
SYN cookies are now a standard part of Linux and FreeBSD.
They are, unfortunately, not enabled by default under Linux. To enable them, add

echo 1 > /proc/sys/net/ipv4/tcp_syncookies

to your boot scripts.

Ich benutze in meinen Projekten je nach Funktionalität entweder:

- CrawlTrack
oder
- BotTrap von Airport1

beide Scripte haben ihre Vor- und Nachteile.

Vorteil von CrawlTrack: Er hat einen intergrierten Besucherzähler und
zeigt die Crawler mit Zeit und Datum.
Nachteil: Nicht ganz so aktuell.

Vorteil von BotTrap: Sehr aktuell und schnell, sehr guter Support.
Nachteil: Etwas gewöhnungsbedürftig, aus Sicherheitsgründen nur nach Vorstellung der eigenen Seite
zu bekommen ( OK, nicht unbedingt ein Nachteil, Safety First :-) )

Beide Scripte setzen PHP vorraus, CrawlTrack benötigt dazu eine MySQL Datenbank und ich habe beide
erfolgreich mit WP getestet :-) .

Findet man in einen der beiden Logs, einen HTTP_AGENT kann dieser auf der Seite Web Resources
leicht identifiziert werden.

Wenn ich eine lokale Firewall installiert habe, geht die Fragerei los.
Darf das Programm/Dienst auf das Internet zugreifen ?

Nicht immer weiß man (Frau ;-) ) was sich hinter dem Programm/Dienst verbirgt.

Deshalb als Anhalt:
Werde ich das erstemal gefragt, klicke ich auf einmal verbieten.

Läuft danach alles, Ok, dann werde ich dieses bei der nächsten Nachfrage
(meistens nach einem Neustart) immer verbieten.
Gibt es hingegen Probleme, werde ich es beim nächstenmal immer erlauben.

© 2010 Raziens Weblog Suffusion WordPress theme by Sayontan Sinha