Questions générales Antivirus/Fw - Carte graphique

En fait la freebox n’a pas de pare-feu intégré. En mode “normal” (souvent appelé un peu improprement “bridge”), la freebox ne fait aucun filtrage. En mode routeur avec NAT, les machines du réseau local ont des adresses IPv4 privées non routées depuis l’internet public donc des paquets directement destinés à ces adresses ne peuvent pas arriver (sauf redirection explicite), mais il n’y a pas besoin de pare-feu pour arriver à ce résultat puisque (normalement) les paquets n’arrivent même pas à la box.
Pour être totalement honnête il y a peut-être un pare-feu pour les connexions IPv4 entrantes en mode routeur, mais on ne peut pas le vérifier donc la prudence oblige à considérer qu’il n’y en a pas.

En IPv6 la freebox ne fait aucun filtrage non plus, quel que soit son mode de fonctionnement. Et les machines ont des adresses IPv6 globales donc routées sur internet et directement accessibles depuis l’extérieur (à condition de les connaître, bon courage).

Le seul filtrage effectivement visible de la freebox, c’est le blocage des connexions TCP sortantes vers le port 25 d’une adresse IP autre que celle du relais SMTP de Free.

On pourrait me donner juste les numéros de ports à mettre dans les “” pour de la consultation internet/mails/mise à jour debian, concernant le script pour iptable que vous m’avez mis en lien?

Je vais essayer de m’en sortir… :unamused:

frameip.com/liste-des-ports-tcp-udp/

[quote=“karbon”]On pourrait me donner juste les numéros de ports à mettre dans les “” pour de la consultation internet/mails/mise à jour debian, concernant le script pour iptable que vous m’avez mis en lien?

Je vais essayer de m’en sortir… :unamused:[/quote]

Si tu n’as aucun service à offrir à l’extérieur, rien.
Tout sera bloqué en entré, sauf le trafic retour (celui qui arrive en réponse de tes demandes vers le net).

Alors, j’ai fais un test via un site (zebulon) et ça me donne :

Félicitation ! Votre sécurité semble optimale !
La totalité des ports TCP testés sont masqués, votre ordinateur ne donne donc aucune réponse aux tests de ports effectués. Votre machine est donc invisible aux yeux de pirates potentiels.

Ports TCP ouverts
Aucun port détecté

Ports TCP fermés
Aucun port détecté

Ports TCP masqués
21 ftp Utilisé pour le transfert de fichier entre ordinateurs
ssh 79 Le shell SSH permet de se connecter à un serveur de façon sécurisée
80 telnet Utilisé pour obtenir un shell distant
N/A smtp Utilisé pour le transfert de courrier électronique entre deux hôtes. Si vous n’utilisez pas de serveur de messagerie, il est conseillé de fermer ce port.
N/A finger Permet de connaître diverses informations relatives à votre profil
N/A http Utilisé pour les services Web. Si vous n’utilisez pas de serveur web, il est conseillé de fermer ce port
22 pop3 Utilisé par les serveurs de messagerie Internet. Si vous n’utilisez pas de serveur de messagerie, il est conseillé de fermer ce port.
N/A auth Utilisé par certains serveurs de messagerie ou de newsgroups (MiRC - Virc…). Des problèmes de performances peuvent survenir si ce port est masqué
119 nntp Utilisé par les serveurs de news pour la distribution d’articles Usenet
135 epmap Utilisé pour les applications client/server basées sur des systèmes d’exploitation Microsoft
139 netbios-ssn Utilisé pour le partage de fichiers dans un réseau local
143 imap Utilisé par les serveurs de messagerie Internet pour l’envoi de messages électroniques. Si vous n’utilisez pas de serveur IMAP, il est conseillé de fermer ce port.
389 ldap LDAP (Lightweight Directory Access Protocol) : utilisé pour accéder automatiquement à des services d’annuaires en ligne
443 https Utilisé pour sécuriser les communications HTTP. Si vous n’utilisez pas de serveur web, il est conseillé de fermer ce port. Ce port est également utilisé par AOL Instant Messenger
445 microsoft-ds Utilisé pour le partage des protocoles SMB. Son exploitation peut permettre d’obtenir vos mots de passe
1002 23 Port non standard
1024 N/A Port réservé
1025 N/A Port non standard
1026 110 Port non standard
1027 N/A Port non standard
1028 25 Port non standard
1029 N/A Port non standard
1030 113 Port non standard
1720 h323hostcall Port non standard. Peut être utilisé par NetMeeting
5000 N/A Utilisé pour communiquer avec tous les périphériques UpnP reliés à votre réseau
Temps d’exécution du scan : 25.03 secondes

Pourtant je n’ai pas encore fait le pare feu via iptables… Peut être la freebox fait elle effectivement office de parefeu…

Bref on va considérer l’affaire réglée vu que j’ai de toute façon toute les infos pour créer le parefeu!

Merci

C’est du pipeau.

Oui, mais pour elle-même. Il faut bien comprendre que lorsque la freebox est configurée en mode routeur avec NAT, la seule adresse IPv4 visible de l’extérieur est celle de la freebox, et non des postes qui sont derrière. Le scan effectué par ce site s’attaquait donc à la freebox, et non à ton PC. En IPv6, le résultat serait différent car le site verrait l’adresse IPv6 de ton PC et ferait le scan vers celle-ci.

Ce qui prouve qui je n’y connais rien!
Ok, dans ce cas je vais créer le pare feu en suivant toutes vos précieuses indications.

Alors ca y est j’ai crée un fichier parefeu, mais comment vérifier qu’il fonctionne?

“”#!/bin/sh

BEGIN INIT INFO

Provides: mon_parefeu

Required-Start: $local_fs

Should-Start:

Required-Stop: $local_fs

Should-Stop:

X-Start-Before: $network

X-Stop-After: $network

Default-Start: S

Default-Stop: 0 6

Short-description: Configure le parefeu

Description: Met en place les règles iptables.

END INIT INFO

#------------------------Explications----------------------------------#

Défauts :

- Cette configuration s’applique à toutes les interfaces réseau.

Si vous voulez restreindre cela à une interface donnée,

utilisez ‘-i INTERFACE’ dans la variables $IPTABLES.

- Par défaut, le script autorise tout en sortie.

Pour changer ce comportement veuillez indiquer les numéros

de port en question dans les variables

$REMOTE_TCP_SERVICES

et/ou $REMOTE_UDP_SERVICES

- Pour configurer une machine routeur,

changez la valeur de la variable

ISROUTERNAT à true, ainsi que

les interfaces ethx et ethy selon votre configuration

ethx correspond à l’interface du LAN

ethy correspond à l’interface reliée à la truc-box

description: Active/Désactive le pare-feu au démarrage

#----------------------------------------------------------------------#

#------------------------VARIABLES-------------------------------------#
readonly IPTABLES=/sbin/iptables

. /lib/lsb/init-functions

Services que le système offrira au réseau, à séparer avec des espaces

ftp : 21, ssh : 22, serveur web : 80, cups : 631, jabber : 5222

TCP_SERVICES="“
UDP_SERVICES=”"

Services que le système utilisera du réseau

(défaut : autorise tout en sortie)

REMOTE_TCP_SERVICES="“
REMOTE_UDP_SERVICES=”"

Pour une machine faisant office de routeur avec NAT,

changer la valeur de la variable ISROUTERNAT à 1.

ISROUTERNAT=false

ethx correspond à l’interface du LAN

ethy correspond à l’interface reliée à la truc-box

ethx="eth1"
ethy=“eth0”
#----------------------------------------------------------------------#

if ! [ -x $IPTABLES ]; then
exit 0
fi

#----------------------------FONCTIONS---------------------------------#
fw_start () {

Vidage

fw_clear
# Parefeu - Suppression des règles

Interdictions

$IPTABLES -t filter -P INPUT DROP
$IPTABLES -t filter -P FORWARD DROP
$IPTABLES -t filter -P OUTPUT DROP

# Parefeu - interdictions générales établies

Loopback

$IPTABLES -t filter -A INPUT -i lo -j ACCEPT

Trafic d’entrée :

$IPTABLES -t filter -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Refus du ping pour éviter de répondre aux scans des éventuels vilains

$IPTABLES -t filter -A INPUT -p icmp -j LOG
$IPTABLES -t filter -A INPUT -p icmp -j DROP

Sortie autorisée, si aucun port autorisé en sortie n’est défini

    if [ -z "$REMOTE_TCP_SERVICES"] && [ -z "$REMOTE_UDP_SERVICES" ]; then
        $IPTABLES -t filter -P OUTPUT ACCEPT
    fi

Services à autoriser en entrée

for PORT in $TCP_SERVICES; do
	$IPTABLES -A INPUT -p tcp --dport ${PORT} -j ACCEPT
done

for PORT in $UDP_SERVICES; do
	$IPTABLES -A INPUT -p udp --dport ${PORT} -j ACCEPT
done

Services à autoriser en sortie

for PORT in $REMOTE_TCP_SERVICES; do
	$IPTABLES -A OUTPUT -p tcp --dport ${PORT} -j ACCEPT
done
for PORT in $REMOTE_UDP_SERVICES; do
	$IPTABLES -A OUTPUT -p udp --dport ${PORT} -j ACCEPT
done
# Parefeu - Mise en place des règles

if $ISROUTERNAT ; then
	$IPTABLES -A INPUT -i $ethx -j ACCEPT
	$IPTABLES -A INPUT -p icmp -j ACCEPT
	$IPTABLES -A FORWARD -i $ethy -o $ethx -m state --state RELATED,ESTABLISHED -j ACCEPT
	$IPTABLES -A FORWARD -o $ethy -j ACCEPT
	$IPTABLES -t nat -A POSTROUTING -o $ethy -j MASQUERADE
	# Parefeu - Routeur avec NAT
fi

Toutes les autres connexions sont enregistrées dans syslog

#$IPTABLES -t filter -A OUTPUT -j LOG
$IPTABLES -t filter -A INPUT -j LOG --log-level=4

# Parefeu - Logging

}

fw_stop () {
#$IPTABLES -F
#$IPTABLES -t nat -F
#$IPTABLES -t mangle -F
#$IPTABLES -P INPUT DROP
#$IPTABLES -P FORWARD DROP
#$IPTABLES -P OUTPUT ACCEPT
iptables-save > /etc/firewall
}

fw_clear () {
$IPTABLES -t filter -F
$IPTABLES -t nat -F
$IPTABLES -t mangle -F
$IPTABLES -t raw -F
$IPTABLES -t filter -P INPUT ACCEPT
$IPTABLES -t filter -P OUTPUT ACCEPT
$IPTABLES -t filter -P FORWARD ACCEPT
$IPTABLES -t nat -P PREROUTING ACCEPT
$IPTABLES -t nat -P POSTROUTING ACCEPT
$IPTABLES -t nat -P OUTPUT ACCEPT
$IPTABLES -t mangle -P PREROUTING ACCEPT
$IPTABLES -t mangle -P OUTPUT ACCEPT
$IPTABLES -t mangle -P POSTROUTING ACCEPT
$IPTABLES -t mangle -P FORWARD ACCEPT
$IPTABLES -t mangle -P INPUT ACCEPT
$IPTABLES -t raw -P OUTPUT ACCEPT
$IPTABLES -t raw -P PREROUTING ACCEPT
$IPTABLES -F
}

fw_status () {
$IPTABLES -L --line-numbers
}

#----------------------------------------------------------------------#

case “$1” in
start|restart)
log_daemon_msg "Starting firewall…"
fw_start
log_end_msg $?
;;
stop)
log_daemon_msg "Stopping firewall…"
fw_stop
log_end_msg $?
;;
clean)
log_daemon_msg "Clearing firewall rules…"
fw_clear
log_end_msg $?
;;
status)
log_daemon_msg "Firewall status"
fw_status
;;
*)
log_action_msg "Usage $0 {start|stop|restart|clean|status}"
exit 1
;;
esac
exit 0