Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[sécurité] 1 serveur: firewall et/ou IDS ?
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
bulki
Guru
Guru


Joined: 25 Nov 2004
Posts: 529
Location: SiliconValley

PostPosted: Sat Dec 23, 2006 3:39 pm    Post subject: [sécurité] 1 serveur: firewall et/ou IDS ? Reply with quote

Salut,

avant noel, je veux troller un peu... En fait, j'ai un serveur qui est directement connecté à Internet, sur lequel je fais tourner des serveurs accessibles depuis l'extérieur uniquement (pas d'intranet ou autre blabla). Je ne vois pas trop l'utilité de mettre un firewall pour dire "bloque tous les ports entrants, sauf ceux où les services tournent", parce que les ports autres ports étant toujours fermés... et rien n'empêchera un attaquant d'utiliser les ports préalablement ouverts.

Par contre, je vois déjà plus l'intérêt d'utiliser un IDS (je sais bien que l'utilité n'est pas la même). Mais je voulais vous demander votre avis...

Merci beaucoup
Back to top
View user's profile Send private message
-KuRGaN-
Veteran
Veteran


Joined: 05 Dec 2004
Posts: 1142
Location: Besançon (25) [FRANCE]

PostPosted: Sat Dec 23, 2006 3:43 pm    Post subject: Reply with quote

Tu veux utiliser quoi comme IDS, NIDS, HIDS ou PIDS ??

Par contre pour l'histoire du firewall, je serai curieux d'un résultat d'un nmap sur ton interface publique.
_________________
Knight Gent00 Industries RiDeR !!!!
Back to top
View user's profile Send private message
bulki
Guru
Guru


Joined: 25 Nov 2004
Posts: 529
Location: SiliconValley

PostPosted: Sat Dec 23, 2006 3:53 pm    Post subject: Reply with quote

-KuRGaN- wrote:
Tu veux utiliser quoi comme IDS, NIDS, HIDS ou PIDS ??

Par contre pour l'histoire du firewall, je serai curieux d'un résultat d'un nmap sur ton interface publique.


Je pensais installer un IDS, snort en l'occurence.

Mon serveur est directement relié à internet par eth0 (adresse IP visible depuis l'extérieur).

Pour répondre à ta demande:
Code:
nmap -sS -sR -O -p- -P0 -T5 -R -f mon.serveur.com


Interesting ports on  mon.serveur.com (w.x.y.z):
Not shown: 1233 closed ports
PORT     STATE    SERVICE      VERSION
25/tcp   filtered smtp
53/tcp   filtered domain
80/tcp   open     http
443/tcp  open     https
666/tcp  open     doom
1720/tcp filtered H.323/Q.931
Device type: general purpose|media device
Running: Linux 2.4.X, Pace embedded
OS details: Linux 2.4.18 - 2.4.27, Pace digital cable TV receiver
Uptime 1.231 days (since Fri Dec 22 11:26:44 2006)

Nmap finished: 1 IP address (1 host up) scanned in 13.393 seconds


Je vois pas en quoi un fw empirerai le résultat dans ce cas là (j'ai un serveur ssh sur le port 666, un https et http UNIQUEMENT), et en plus, le version control est foireux :S...
Back to top
View user's profile Send private message
Darkael
Veteran
Veteran


Joined: 10 Aug 2004
Posts: 1321
Location: France

PostPosted: Sat Dec 23, 2006 4:16 pm    Post subject: Re: [sécurité] 1 serveur: firewall et/ou IDS ? Reply with quote

bulki wrote:

avant noel, je veux troller un peu... En fait, j'ai un serveur qui est directement connecté à Internet, sur lequel je fais tourner des serveurs accessibles depuis l'extérieur uniquement (pas d'intranet ou autre blabla). Je ne vois pas trop l'utilité de mettre un firewall pour dire "bloque tous les ports entrants, sauf ceux où les services tournent", parce que les ports autres ports étant toujours fermés... et rien n'empêchera un attaquant d'utiliser les ports préalablement ouverts.

Bloquer les ports ça peut être une précaution par exemple au cas où un attaquant a pris le contrôle d'un user et tente de lancer un service via cet utilisateur... Mais sinon tu peux aussi te servir des capacités filtrantes du firewall pour filtrer selon l'IP. Par exemple pour autoriser certaines plages d'IP seulement pour SSH (par contre faut pas se gourer), ou bien utiliser ça en combo avec des trucs comme fail2ban. La fonction log peut-être utile aussi.

Quote:
Par contre, je vois déjà plus l'intérêt d'utiliser un IDS (je sais bien que l'utilité n'est pas la même).

Un IDS (de quelque nature qu'il soit) c'est bien, mais faut faire attention parce que ça prend du temps et des ressources. Un serveur sur Internet (surtout avec plusieurs services comme le tien) ça peut générer beaucoup d'alertes parfois fausses ou bégnines, et faut un peu de travail pour trouver les paramètres idéaux pour recevoir les alertes importantes.
Back to top
View user's profile Send private message
bulki
Guru
Guru


Joined: 25 Nov 2004
Posts: 529
Location: SiliconValley

PostPosted: Sat Dec 23, 2006 4:53 pm    Post subject: Reply with quote

C'est vrai que pour l'authorisation de certaines plages d'ip, c'est intéressant, je n'y avait pas pensé. Mais en même temps, je suis tjrs en déplacement, donc c'est un peu boaf arf :P.

Bon, je vais quand même en mettre un (à but didactique ;) ), en plus il me semble que ce tuto: http://www.gentoo.org/proj/en/infrastructure/firewall/server-firewall.xml va avec ce que je veux faire :P. (EDIT: ra zut, il est vieux de 3 ans ce tuto :/ )

Merci :P
Back to top
View user's profile Send private message
-KuRGaN-
Veteran
Veteran


Joined: 05 Dec 2004
Posts: 1142
Location: Besançon (25) [FRANCE]

PostPosted: Sat Dec 23, 2006 5:47 pm    Post subject: Reply with quote

Si tu es toujours en déplacement et que le filtrage d'IP te chatouille :wink: tu peux faire un tour du coté du port-knocking, il y a d'ailleurs knockd sds portage.
_________________
Knight Gent00 Industries RiDeR !!!!
Back to top
View user's profile Send private message
grosnours
Apprentice
Apprentice


Joined: 05 Jun 2006
Posts: 210
Location: Belgium

PostPosted: Sat Dec 23, 2006 5:51 pm    Post subject: Reply with quote

Si tu veux pousser plus loin, tu peux t'amuser à filtrer l'output aussi :)
_________________
grosnours
Back to top
View user's profile Send private message
bulki
Guru
Guru


Joined: 25 Nov 2004
Posts: 529
Location: SiliconValley

PostPosted: Sat Dec 23, 2006 10:11 pm    Post subject: Reply with quote

Merci pour vos réponses. Voilà ce que j'ai fait pour finir :

Code:
cat firewall.sh

IPT='/sbin/iptables'
IFACE=ath0
SSH_PORT=666

# Flush all current rules from $IPT
$IPT -F
$IPT -X

# Set default policies for INPUT, FORWARD and OUTPUT chains
$IPT -P INPUT DROP
$IPT -P FORWARD DROP
$IPT -P OUTPUT DROP

# Set access for localhost
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -s 127.0.0.1 -j ACCEPT

#$IPT -A OUTPUT -i lo -j ACCEPT
# Accept packets belonging to established and related connections
$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT


# Input acceptance

# HTTP
$IPT -A INPUT -i eth0 -p tcp --dport 80 -m state --state NEW -j ACCEPT

# HTTPS
$IPT -A INPUT -i eth0 -p tcp --dport 443 -m state --state NEW -j ACCEPT

# SSH
$IPT -A INPUT -i eth0 -p tcp --dport 666 -m state --state NEW -j ACCEPT
$IPT -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW -j ACCEPT

# Output acceptance

# Ping
$IPT -A OUTPUT -p icmp -m state --state NEW -j ACCEPT

# Rsync
$IPT -A OUTPUT -p tcp --dport 873 -m state --state NEW -j ACCEPT

# DNS
$IPT -A OUTPUT -p tcp --dport 53 -m state --state NEW -j ACCEPT
$IPT -A OUTPUT -p udp --dport 53 -m state --state NEW -j ACCEPT

# HTTP
$IPT -A OUTPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT

# HTTPS
$IPT -A OUTPUT -p tcp --dport 443 -m state --state NEW -j ACCEPT

# Look @ the rules
# $IPT -L -v


j'aimerais bien logger les paquets droppés, seulement je peux pas créer une règle et la passer à "$IPT -P INPUT DROP -j nouvel_regle", parce qu'il n'aime pas ça ! J'ai essayé un truc, mais ça n'a pas marché (ca m'a tué la connexion :( )...
Back to top
View user's profile Send private message
sireyessire
Advocate
Advocate


Joined: 20 Mar 2003
Posts: 2991
Location: back in Paris, France

PostPosted: Sun Dec 24, 2006 8:21 am    Post subject: Reply with quote

tu peux aussi regarder du coté de firehol qui te permet de générer les règles iptables à partir d'un fichier de configuration un peu plus explicite. En plus, il me semble qu'il te propose de choisir un niveau de reporting dans tes logs.

Enjoy
_________________
I never think of the future. It comes soon enough.
Albert Einstein

Try simpler first
Shockley
Back to top
View user's profile Send private message
-KuRGaN-
Veteran
Veteran


Joined: 05 Dec 2004
Posts: 1142
Location: Besançon (25) [FRANCE]

PostPosted: Sun Dec 24, 2006 11:48 am    Post subject: Reply with quote

Pour logger avec iptables, sur une interface lan par exemple:

Code:

iptables -N LOG_LAN_DROP
iptables -A LOG_LAN_DROP -j LOG --log-prefix '[IPTABLES_LAN_DROP]'
iptables -A LOG_LAN_DROP -s $IP_LAN -j DROP


Et à la fin de ton script:
Code:

iptables -A INPUT -i $IF_LAN -j LOG_LAN_DROP
iptables -A OUTPUT -o $IF_LAN -j LOG_LAN_DROP

_________________
Knight Gent00 Industries RiDeR !!!!
Back to top
View user's profile Send private message
grosnours
Apprentice
Apprentice


Joined: 05 Jun 2006
Posts: 210
Location: Belgium

PostPosted: Sun Dec 24, 2006 3:11 pm    Post subject: Reply with quote

Code:
iptables -A INPUT -j LOG --log-prefix '[IPTABLES_LAN_DROP]'

suffit vu la policy à DROP. Idem pour l'output. Ne pas oublier un "-m limit" si le logger n'est pas metalog.

Tu n'as pas besoin des ports 21,22,23,25,110,143,902,993,995,3128,8080,... en sortie ?
De plus, je commencerais le script par
Code:
for i in INPUT OUPUT FORWARD ; do iptables -F $i ; iptables -P $i ACCEPT ; done

et je le terminerais par
Code:
for i in INPUT OUPUT FORWARD ; do iptables -P $i DROP ; done

histoire de ne pas risquer de kill les connexions en cours.

Pour finir, une fois les règles en place, j'utiliserais un fichier à base de `iptables-save`. J'ai entendu dire que les performances d'iptables-restore sont bien plus élevées qu'une série d'iptables.
_________________
grosnours
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum