NetFilter : connexion refusee gestion de la connexion
6 réponses
Jeannot Lelapin
Bonjour,
J'ai modifié la configuration du serveur SSH pour que le serveurs écoute
sur le port 443. Dans le fichier /etc/ssh/sshd_config :
...
Port 443
...
Quand j'essaye depuis ma machine la connection suivante :
ssh -2 -p 443 theusername@themachinename
Ca marche nickel mais ce ne marche depuis internet.
En logguant netfilter, je vois mes packets de connexions droppés dans
/var/log/messages :
....
Sep 8 13:24:48 paradise kernel: IPTABLES TCP-IN: IN=eth1 OUT=
MAC=00:60:4c:14:d8:2e:00:60:4c:14:d8:2f:08:00 SRC=145.248.192.4
DST=81.57.11.43 LEN=64 TOS=0x00 PREC=0x00 TTL=53 ID=42043 DF PROTO=TCP
SPT=29333 DPT=443 WINDOW=32850 RES=0x00 SYN URGP=0
Sep 8 13:24:51 paradise kernel: IPTABLES TCP-IN: IN=eth1 OUT=
MAC=00:60:4c:14:d8:2e:00:60:4c:14:d8:2f:08:00 SRC=145.248.192.4
DST=81.57.11.43 LEN=64 TOS=0x00 PREC=0x00 TTL=53 ID=42044 DF PROTO=TCP
SPT=29333 DPT=443 WINDOW=32850 RES=0x00 SYN URGP=0
....
Je lis une bonne documentation sur :
http://www.kalamazoolinux.org/presentations/20010417/conntrack.html
mais je n'arrive toujours pas à trouver un bon ensemble de règles pour
permettre ma connectionSSH. Les règles concernant SSH sont les suivantes :
/sbin/iptables -A INPUT -p tcp --sport 443 -m state --state
NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state
NEW,ESTABLISHED -j ACCEPT
idées, conseils sont vraiment les bienvenus.
Cordialement,
Jeannot Lelapin
==================================================================
L'ensemble des règles : /etc/iptables.rules
==================================================================
# Load all required IPTables modules
# Needed to initially load modules
$DEPMOD -a
# Load appropriate modules.
$MODPROBE ip_tables
# Support for connection tracking
$MODPROBE ip_conntrack
$MODPROBE ip_conntrack_ftp
# MODIF BEGIN
$MODPROBE ip_conntrack_irc
# Adds some $IPTABLES targets like LOG, REJECT and MASQUARADE.
$MODPROBE ipt_LOG
$MODPROBE ipt_REJECT
$MODPROBE ipt_MASQUERADE
# Support for owner matching
$MODPROBE ipt_owner
# MODIF END
## ===========================================================
## Reset all configurations
## LOOPBACK
# Allow unlimited traffic on the loopback interface.
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A OUTPUT -o lo -j ACCEPT
## SYN-FLOODING PROTECTION
$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
## FRAGMENTS
$IPTABLES -A INPUT -f -j LOG --log-prefix "IPTABLES FRAGMENTS: "
$IPTABLES -A INPUT -f -j DROP
## Make sure NEW tcp connections are SYN packets
$IPTABLES -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
## DNS
# Allow UDP packets in for DNS client from nameservers.
$IPTABLES -A INPUT -p udp -s 212.27.32.5 --sport 53 -m state --state
ESTABLISHED -j ACCEPT
# Allow UDP packets to DNS servers from client.
$IPTABLES -A OUTPUT -p udp -d 212.27.32.5 --dport 53 -m state --state
NEW,ESTABLISHED -j ACCEPT
## WWW
# Allow www outbound to 80.
$IPTABLES -A INPUT -p tcp --sport 80 -m state --state ESTABLISHED -j
ACCEPT
$IPTABLES -A OUTPUT -p tcp --dport 80 -m state --state NEW,ESTABLISHED
-j ACCEPT
## SSH
# Allow ssh outbound.
$IPTABLES -A INPUT -p tcp --sport 443 -m state --state NEW,ESTABLISHED
-j ACCEPT
$IPTABLES -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED
-j ACCEPT
# ICMP
# We accept icmp in if it is "related" to other connections
$IPTABLES -A INPUT -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT
# We always allow icmp out.
$IPTABLES -A OUTPUT -p icmp -m state --state NEW,ESTABLISHED,RELATED -j
ACCEPT
## LOGGING
# Any udp not already allowed is logged and then dropped.
$IPTABLES -A INPUT -p udp -j LOG --log-prefix "IPTABLES UDP-IN: "
$IPTABLES -A INPUT -p udp -j DROP
$IPTABLES -A OUTPUT -p udp -j LOG --log-prefix "IPTABLES UDP-OUT: "
$IPTABLES -A OUTPUT -p udp -j DROP
# Any icmp not already allowed is logged and then dropped.
$IPTABLES -A INPUT -p icmp -j LOG --log-prefix "IPTABLES ICMP-IN: "
$IPTABLES -A INPUT -p icmp -j DROP
$IPTABLES -A OUTPUT -p icmp -j LOG --log-prefix "IPTABLES ICMP-OUT: "
$IPTABLES -A OUTPUT -p icmp -j DROP
# Any tcp not already allowed is logged and then dropped.
$IPTABLES -A INPUT -p tcp -j LOG --log-prefix "IPTABLES TCP-IN: "
$IPTABLES -A INPUT -p tcp -j DROP
$IPTABLES -A OUTPUT -p tcp -j LOG --log-prefix "IPTABLES TCP-OUT: "
$IPTABLES -A OUTPUT -p tcp -j DROP
# Anything else not already allowed is logged and then dropped.
$IPTABLES -A INPUT -j LOG --log-prefix "IPTABLES PROTOCOL-X-IN: "
$IPTABLES -A INPUT -j DROP
$IPTABLES -A OUTPUT -j LOG --log-prefix "IPTABLES PROTOCOL-X-OUT: "
$IPTABLES -A OUTPUT -j DROP
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
TiChou
Dans l'article news:, Jeannot Lelapin écrivait :
Bonjour,
Bonsoir,
J'ai modifié la configuration du serveur SSH pour que le serveurs écoute sur le port 443. Dans le fichier /etc/ssh/sshd_config : ... Port 443 ...
Quand j'essaye depuis ma machine la connection suivante : ssh -2 -p 443 Ca marche nickel mais ce ne marche depuis internet.
Je lis une bonne documentation sur : http://www.kalamazoolinux.org/presentations/20010417/conntrack.html mais je n'arrive toujours pas à trouver un bon ensemble de règles pour permettre ma connectionSSH. Les règles concernant SSH sont les suivantes : /sbin/iptables -A INPUT -p tcp --sport 443 -m state --state NEW,ESTABLISHED -j ACCEPT /sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
On est bien d'accord que les règles Netfilter sont appliquées sur la machine où se trouve le serveur SSH ? Si oui, alors il y a confusion entre les ports source et destination.
En entrée arrivent les paquets de la connexion SSH à destination du port 443 donc :
iptables -A INPUT -i eth1 -p tcp --dport 443 --sport 1024: -m state --state NEW,ESTABLISHED -j ACCEPT
En sortie les paquets de la connexion SSH sortent depuis le port source 443 donc :
iptables -A OUTPUT -o eth1 -p tcp --sport 443 --dport 1024: -m state --state ESTABLISHED -j ACCEPT
-- TiChou
Dans l'article news:3F5CC875.9000508@free.fr,
Jeannot Lelapin <jeannot.lelapin@free.fr> écrivait :
Bonjour,
Bonsoir,
J'ai modifié la configuration du serveur SSH pour que le serveurs
écoute sur le port 443. Dans le fichier /etc/ssh/sshd_config :
...
Port 443
...
Quand j'essaye depuis ma machine la connection suivante :
ssh -2 -p 443 theusername@themachinename
Ca marche nickel mais ce ne marche depuis internet.
Je lis une bonne documentation sur :
http://www.kalamazoolinux.org/presentations/20010417/conntrack.html
mais je n'arrive toujours pas à trouver un bon ensemble de règles pour
permettre ma connectionSSH. Les règles concernant SSH sont les
suivantes : /sbin/iptables -A INPUT -p tcp --sport 443 -m state
--state NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state
NEW,ESTABLISHED -j ACCEPT
On est bien d'accord que les règles Netfilter sont appliquées sur la machine
où se trouve le serveur SSH ?
Si oui, alors il y a confusion entre les ports source et destination.
En entrée arrivent les paquets de la connexion SSH à destination du port 443
donc :
iptables -A INPUT -i eth1 -p tcp --dport 443 --sport 1024:
-m state --state NEW,ESTABLISHED -j ACCEPT
En sortie les paquets de la connexion SSH sortent depuis le port source 443
donc :
iptables -A OUTPUT -o eth1 -p tcp --sport 443 --dport 1024:
-m state --state ESTABLISHED -j ACCEPT
J'ai modifié la configuration du serveur SSH pour que le serveurs écoute sur le port 443. Dans le fichier /etc/ssh/sshd_config : ... Port 443 ...
Quand j'essaye depuis ma machine la connection suivante : ssh -2 -p 443 Ca marche nickel mais ce ne marche depuis internet.
Je lis une bonne documentation sur : http://www.kalamazoolinux.org/presentations/20010417/conntrack.html mais je n'arrive toujours pas à trouver un bon ensemble de règles pour permettre ma connectionSSH. Les règles concernant SSH sont les suivantes : /sbin/iptables -A INPUT -p tcp --sport 443 -m state --state NEW,ESTABLISHED -j ACCEPT /sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
On est bien d'accord que les règles Netfilter sont appliquées sur la machine où se trouve le serveur SSH ? Si oui, alors il y a confusion entre les ports source et destination.
En entrée arrivent les paquets de la connexion SSH à destination du port 443 donc :
iptables -A INPUT -i eth1 -p tcp --dport 443 --sport 1024: -m state --state NEW,ESTABLISHED -j ACCEPT
En sortie les paquets de la connexion SSH sortent depuis le port source 443 donc :
iptables -A OUTPUT -o eth1 -p tcp --sport 443 --dport 1024: -m state --state ESTABLISHED -j ACCEPT
-- TiChou
Gael Mauleon
Jeannot Lelapin wrote in news::
Bonjour,
J'ai modifié la configuration du serveur SSH pour que le serveurs écoute sur le port 443. Dans le fichier /etc/ssh/sshd_config : ... Port 443 ...
Quand j'essaye depuis ma machine la connection suivante : ssh -2 -p 443 Ca marche nickel mais ce ne marche depuis internet.
En logguant netfilter, je vois mes packets de connexions droppés dans /var/log/messages : .... Sep 8 13:24:48 paradise kernel: IPTABLES TCP-IN: IN=eth1 OUT= MAC :60:4c:14:d8:2e:00:60:4c:14:d8:2f:08:00 SRC5.248.192.4 DST.57.11.43 LENd TOS=0x00 PREC=0x00 TTLS IDB043 DF PROTO=TCP SPT)333 DPTD3 WINDOW2850 RES=0x00 SYN URGP=0 Sep 8 13:24:51 paradise kernel: IPTABLES TCP-IN: IN=eth1 OUT= MAC :60:4c:14:d8:2e:00:60:4c:14:d8:2f:08:00 SRC5.248.192.4 DST.57.11.43 LENd TOS=0x00 PREC=0x00 TTLS IDB044 DF PROTO=TCP SPT)333 DPTD3 WINDOW2850 RES=0x00 SYN URGP=0 ....
Je lis une bonne documentation sur : http://www.kalamazoolinux.org/presentations/20010417/conntrack.html mais je n'arrive toujours pas à trouver un bon ensemble de règles pour permettre ma connectionSSH. Les règles concernant SSH sont les suivantes : /sbin/iptables -A INPUT -p tcp --sport 443 -m state --state NEW,ESTABLISHED -j ACCEPT /sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
Bon je suppose que la config firewall se fait sur le serveur...
J'ai pas lu toutes tes regles mais si tu regardes bien juste tes regles pour ton ssh tu devrais avoir un truc qui te sautes aux yeux... Ton client SSH ne sait pas quel port il va utiliser pour se connecter a ton serveur, et c'est certainement pas le 443, c'est seulement le serveur qui utilise ce port dans ton cas :)
En gros voila les flux (sans compter les eventuels RELATED d'icmp ou autres)
Client (Port > 1024) ------- NEW -------> Serveur (Port 443) Client (Port > 1024) <--- ESTABLISHED --- Serveur (Port 443) Client (Port > 1024) --- ESTABLISHED ---> Serveur (Port 443)
Donc du coté serveur au minimum :
/sbin/iptables -A INPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT /sbin/iptables -A OUTPUT -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT
Apres si tu veux tuner tes regles avec plus de precisions du style :
/sbin/iptables -A INPUT -p tcp --syn --sport 1024: --dport 443 -m state --state NEW -j ACCEPT
/sbin/iptables -A INPUT -p tcp --sport 1024: --dport 443 -m state -- state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --sport 443 --dport 1024: -m state -- state ESTABLISHED,RELATED -j ACCEPT
Etc... a toi de voir le niveau de filtrage que tu veux....
idées, conseils sont vraiment les bienvenus.
Cordialement,
Jeannot Lelapin
-- PS : Pour info est une _vrai_ adresse donc n'hesitez pas :)
Jeannot Lelapin <jeannot.lelapin@free.fr> wrote in
news:3F5CC875.9000508@free.fr:
Bonjour,
J'ai modifié la configuration du serveur SSH pour que le serveurs
écoute sur le port 443. Dans le fichier /etc/ssh/sshd_config :
...
Port 443
...
Quand j'essaye depuis ma machine la connection suivante :
ssh -2 -p 443 theusername@themachinename
Ca marche nickel mais ce ne marche depuis internet.
En logguant netfilter, je vois mes packets de connexions droppés dans
/var/log/messages :
....
Sep 8 13:24:48 paradise kernel: IPTABLES TCP-IN: IN=eth1 OUT=
MAC :60:4c:14:d8:2e:00:60:4c:14:d8:2f:08:00 SRC5.248.192.4
DST.57.11.43 LENd TOS=0x00 PREC=0x00 TTLS IDB043 DF PROTO=TCP
SPT)333 DPTD3 WINDOW2850 RES=0x00 SYN URGP=0
Sep 8 13:24:51 paradise kernel: IPTABLES TCP-IN: IN=eth1 OUT=
MAC :60:4c:14:d8:2e:00:60:4c:14:d8:2f:08:00 SRC5.248.192.4
DST.57.11.43 LENd TOS=0x00 PREC=0x00 TTLS IDB044 DF PROTO=TCP
SPT)333 DPTD3 WINDOW2850 RES=0x00 SYN URGP=0
....
Je lis une bonne documentation sur :
http://www.kalamazoolinux.org/presentations/20010417/conntrack.html
mais je n'arrive toujours pas à trouver un bon ensemble de règles pour
permettre ma connectionSSH. Les règles concernant SSH sont les
suivantes : /sbin/iptables -A INPUT -p tcp --sport 443 -m state
--state NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state
NEW,ESTABLISHED -j ACCEPT
Bon je suppose que la config firewall se fait sur le serveur...
J'ai pas lu toutes tes regles mais si tu regardes bien juste tes regles
pour ton ssh tu devrais avoir un truc qui te sautes aux yeux... Ton
client SSH ne sait pas quel port il va utiliser pour se connecter a ton
serveur, et c'est certainement pas le 443, c'est seulement le serveur
qui utilise ce port dans ton cas :)
En gros voila les flux (sans compter les eventuels RELATED d'icmp ou
autres)
Client (Port > 1024) ------- NEW -------> Serveur (Port 443)
Client (Port > 1024) <--- ESTABLISHED --- Serveur (Port 443)
Client (Port > 1024) --- ESTABLISHED ---> Serveur (Port 443)
Donc du coté serveur au minimum :
/sbin/iptables -A INPUT -p tcp --dport 443 -m state
--state NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --sport 443 -m state --state
ESTABLISHED -j ACCEPT
Apres si tu veux tuner tes regles avec plus de precisions du style :
/sbin/iptables -A INPUT -p tcp --syn --sport 1024: --dport 443 -m
state --state NEW -j ACCEPT
/sbin/iptables -A INPUT -p tcp --sport 1024: --dport 443 -m state --
state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --sport 443 --dport 1024: -m state --
state ESTABLISHED,RELATED -j ACCEPT
Etc... a toi de voir le niveau de filtrage que tu veux....
idées, conseils sont vraiment les bienvenus.
Cordialement,
Jeannot Lelapin
--
PS : Pour info spamquipu@yahoo.fr est une _vrai_ adresse
donc n'hesitez pas :)
J'ai modifié la configuration du serveur SSH pour que le serveurs écoute sur le port 443. Dans le fichier /etc/ssh/sshd_config : ... Port 443 ...
Quand j'essaye depuis ma machine la connection suivante : ssh -2 -p 443 Ca marche nickel mais ce ne marche depuis internet.
En logguant netfilter, je vois mes packets de connexions droppés dans /var/log/messages : .... Sep 8 13:24:48 paradise kernel: IPTABLES TCP-IN: IN=eth1 OUT= MAC :60:4c:14:d8:2e:00:60:4c:14:d8:2f:08:00 SRC5.248.192.4 DST.57.11.43 LENd TOS=0x00 PREC=0x00 TTLS IDB043 DF PROTO=TCP SPT)333 DPTD3 WINDOW2850 RES=0x00 SYN URGP=0 Sep 8 13:24:51 paradise kernel: IPTABLES TCP-IN: IN=eth1 OUT= MAC :60:4c:14:d8:2e:00:60:4c:14:d8:2f:08:00 SRC5.248.192.4 DST.57.11.43 LENd TOS=0x00 PREC=0x00 TTLS IDB044 DF PROTO=TCP SPT)333 DPTD3 WINDOW2850 RES=0x00 SYN URGP=0 ....
Je lis une bonne documentation sur : http://www.kalamazoolinux.org/presentations/20010417/conntrack.html mais je n'arrive toujours pas à trouver un bon ensemble de règles pour permettre ma connectionSSH. Les règles concernant SSH sont les suivantes : /sbin/iptables -A INPUT -p tcp --sport 443 -m state --state NEW,ESTABLISHED -j ACCEPT /sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
Bon je suppose que la config firewall se fait sur le serveur...
J'ai pas lu toutes tes regles mais si tu regardes bien juste tes regles pour ton ssh tu devrais avoir un truc qui te sautes aux yeux... Ton client SSH ne sait pas quel port il va utiliser pour se connecter a ton serveur, et c'est certainement pas le 443, c'est seulement le serveur qui utilise ce port dans ton cas :)
En gros voila les flux (sans compter les eventuels RELATED d'icmp ou autres)
Client (Port > 1024) ------- NEW -------> Serveur (Port 443) Client (Port > 1024) <--- ESTABLISHED --- Serveur (Port 443) Client (Port > 1024) --- ESTABLISHED ---> Serveur (Port 443)
Donc du coté serveur au minimum :
/sbin/iptables -A INPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT /sbin/iptables -A OUTPUT -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT
Apres si tu veux tuner tes regles avec plus de precisions du style :
/sbin/iptables -A INPUT -p tcp --syn --sport 1024: --dport 443 -m state --state NEW -j ACCEPT
/sbin/iptables -A INPUT -p tcp --sport 1024: --dport 443 -m state -- state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --sport 443 --dport 1024: -m state -- state ESTABLISHED,RELATED -j ACCEPT
Etc... a toi de voir le niveau de filtrage que tu veux....
idées, conseils sont vraiment les bienvenus.
Cordialement,
Jeannot Lelapin
-- PS : Pour info est une _vrai_ adresse donc n'hesitez pas :)
YBM
Jeannot Lelapin wrote: [...]
Je lis une bonne documentation sur : http://www.kalamazoolinux.org/presentations/20010417/conntrack.html mais je n'arrive toujours pas à trouver un bon ensemble de règles pour permettre ma connectionSSH. Les règles concernant SSH sont les suivantes : /sbin/iptables -A INPUT -p tcp --sport 443 -m state --state NEW,ESTABLISHED -j ACCEPT /sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
Ça ne devrait pas plutôt être :
iptable -A INPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p tcp --sport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
à savoir "dport" en entrée, et "sport" en sortie ?
Jeannot Lelapin wrote:
[...]
Je lis une bonne documentation sur :
http://www.kalamazoolinux.org/presentations/20010417/conntrack.html
mais je n'arrive toujours pas à trouver un bon ensemble de règles pour
permettre ma connectionSSH. Les règles concernant SSH sont les suivantes :
/sbin/iptables -A INPUT -p tcp --sport 443 -m state --state
NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state
NEW,ESTABLISHED -j ACCEPT
Ça ne devrait pas plutôt être :
iptable -A INPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED
-j ACCEPT
iptables -A OUTPUT -p tcp --sport 443 -m state --state NEW,ESTABLISHED
-j ACCEPT
à savoir "dport" en entrée, et "sport" en sortie ?
Je lis une bonne documentation sur : http://www.kalamazoolinux.org/presentations/20010417/conntrack.html mais je n'arrive toujours pas à trouver un bon ensemble de règles pour permettre ma connectionSSH. Les règles concernant SSH sont les suivantes : /sbin/iptables -A INPUT -p tcp --sport 443 -m state --state NEW,ESTABLISHED -j ACCEPT /sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
Ça ne devrait pas plutôt être :
iptable -A INPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p tcp --sport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
à savoir "dport" en entrée, et "sport" en sortie ?
Julien Salgado
Jeannot Lelapin a écrit :
Bonjour,
bonjour,
J'ai modifié la configuration du serveur SSH pour que le serveurs écoute sur le port 443. Dans le fichier /etc/ssh/sshd_config : ... Port 443 ...
Si c'est pour des raisons de sécurité ce n'est pas très utile, vu que ssh ne réagit pas exactement comme une connexion SSL normale. Il est donc possible par un scan de savoir qu'on a pas un serveur https mais un un serveur ssh. De plus, il y a les entêtes ssh (que l'on peut supprimer en modifiant le source et en recompilant).
Quand j'essaye depuis ma machine la connection suivante : ssh -2 -p 443 Ca marche nickel mais ce ne marche depuis internet.
En logguant netfilter, je vois mes packets de connexions droppés dans /var/log/messages : .... Sep 8 13:24:48 paradise kernel: IPTABLES TCP-IN: IN=eth1 OUT= MAC :60:4c:14:d8:2e:00:60:4c:14:d8:2f:08:00 SRC5.248.192.4 DST.57.11.43 LENd TOS=0x00 PREC=0x00 TTLS IDB043 DF PROTO=TCP SPT)333 DPTD3 WINDOW2850 RES=0x00 SYN URGP=0 Sep 8 13:24:51 paradise kernel: IPTABLES TCP-IN: IN=eth1 OUT= MAC :60:4c:14:d8:2e:00:60:4c:14:d8:2f:08:00 SRC5.248.192.4 DST.57.11.43 LENd TOS=0x00 PREC=0x00 TTLS IDB044 DF PROTO=TCP SPT)333 DPTD3 WINDOW2850 RES=0x00 SYN URGP=0 ....
Là on lit que le drop est en INPUT vers le port 443
Je lis une bonne documentation sur : http://www.kalamazoolinux.org/presentations/20010417/conntrack.html mais je n'arrive toujours pas à trouver un bon ensemble de règles pour permettre ma connectionSSH. Les règles concernant SSH sont les suivantes : /sbin/iptables -A INPUT -p tcp --sport 443 -m state --state NEW,ESTABLISHED -j ACCEPT /sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
Donc là c'est inversé :
/sbin/iptables -A INPUT -p tcp --sport 1024: --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT /sbin/iptables -A OUTPUT -p tcp --dport 443 --dport 1024: -m state --state ESTABLISHED -j ACCEPT
Explications : - C'est le port 443 qui en écoute sur ta machine, c'est le port destination sur ta machine pour les paquets entrants. - La connexion d'un client viendra toujours d'un port supérieur à 1024 (sauf certains scan donc autant les éviter). - le premier paquet entrant sera NEW tous les autres seront en ESTABLISHED.
-- Julien
Jeannot Lelapin a écrit :
Bonjour,
bonjour,
J'ai modifié la configuration du serveur SSH pour que le serveurs écoute
sur le port 443. Dans le fichier /etc/ssh/sshd_config :
...
Port 443
...
Si c'est pour des raisons de sécurité ce n'est pas très utile, vu que
ssh ne réagit pas exactement comme une connexion SSL normale. Il est
donc possible par un scan de savoir qu'on a pas un serveur https mais un
un serveur ssh.
De plus, il y a les entêtes ssh (que l'on peut supprimer en modifiant le
source et en recompilant).
Quand j'essaye depuis ma machine la connection suivante :
ssh -2 -p 443 theusername@themachinename
Ca marche nickel mais ce ne marche depuis internet.
En logguant netfilter, je vois mes packets de connexions droppés dans
/var/log/messages :
....
Sep 8 13:24:48 paradise kernel: IPTABLES TCP-IN: IN=eth1 OUT=
MAC :60:4c:14:d8:2e:00:60:4c:14:d8:2f:08:00 SRC5.248.192.4
DST.57.11.43 LENd TOS=0x00 PREC=0x00 TTLS IDB043 DF PROTO=TCP
SPT)333 DPTD3 WINDOW2850 RES=0x00 SYN URGP=0
Sep 8 13:24:51 paradise kernel: IPTABLES TCP-IN: IN=eth1 OUT=
MAC :60:4c:14:d8:2e:00:60:4c:14:d8:2f:08:00 SRC5.248.192.4
DST.57.11.43 LENd TOS=0x00 PREC=0x00 TTLS IDB044 DF PROTO=TCP
SPT)333 DPTD3 WINDOW2850 RES=0x00 SYN URGP=0
....
Là on lit que le drop est en INPUT vers le port 443
Je lis une bonne documentation sur :
http://www.kalamazoolinux.org/presentations/20010417/conntrack.html
mais je n'arrive toujours pas à trouver un bon ensemble de règles pour
permettre ma connectionSSH. Les règles concernant SSH sont les suivantes :
/sbin/iptables -A INPUT -p tcp --sport 443 -m state --state
NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state
NEW,ESTABLISHED -j ACCEPT
Donc là c'est inversé :
/sbin/iptables -A INPUT -p tcp --sport 1024: --dport 443 -m state --state
NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --dport 443 --dport 1024: -m state --state
ESTABLISHED -j ACCEPT
Explications :
- C'est le port 443 qui en écoute sur ta machine, c'est le port
destination sur ta machine pour les paquets entrants.
- La connexion d'un client viendra toujours d'un port supérieur à 1024
(sauf certains scan donc autant les éviter).
- le premier paquet entrant sera NEW tous les autres seront en
ESTABLISHED.
J'ai modifié la configuration du serveur SSH pour que le serveurs écoute sur le port 443. Dans le fichier /etc/ssh/sshd_config : ... Port 443 ...
Si c'est pour des raisons de sécurité ce n'est pas très utile, vu que ssh ne réagit pas exactement comme une connexion SSL normale. Il est donc possible par un scan de savoir qu'on a pas un serveur https mais un un serveur ssh. De plus, il y a les entêtes ssh (que l'on peut supprimer en modifiant le source et en recompilant).
Quand j'essaye depuis ma machine la connection suivante : ssh -2 -p 443 Ca marche nickel mais ce ne marche depuis internet.
En logguant netfilter, je vois mes packets de connexions droppés dans /var/log/messages : .... Sep 8 13:24:48 paradise kernel: IPTABLES TCP-IN: IN=eth1 OUT= MAC :60:4c:14:d8:2e:00:60:4c:14:d8:2f:08:00 SRC5.248.192.4 DST.57.11.43 LENd TOS=0x00 PREC=0x00 TTLS IDB043 DF PROTO=TCP SPT)333 DPTD3 WINDOW2850 RES=0x00 SYN URGP=0 Sep 8 13:24:51 paradise kernel: IPTABLES TCP-IN: IN=eth1 OUT= MAC :60:4c:14:d8:2e:00:60:4c:14:d8:2f:08:00 SRC5.248.192.4 DST.57.11.43 LENd TOS=0x00 PREC=0x00 TTLS IDB044 DF PROTO=TCP SPT)333 DPTD3 WINDOW2850 RES=0x00 SYN URGP=0 ....
Là on lit que le drop est en INPUT vers le port 443
Je lis une bonne documentation sur : http://www.kalamazoolinux.org/presentations/20010417/conntrack.html mais je n'arrive toujours pas à trouver un bon ensemble de règles pour permettre ma connectionSSH. Les règles concernant SSH sont les suivantes : /sbin/iptables -A INPUT -p tcp --sport 443 -m state --state NEW,ESTABLISHED -j ACCEPT /sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
Donc là c'est inversé :
/sbin/iptables -A INPUT -p tcp --sport 1024: --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT /sbin/iptables -A OUTPUT -p tcp --dport 443 --dport 1024: -m state --state ESTABLISHED -j ACCEPT
Explications : - C'est le port 443 qui en écoute sur ta machine, c'est le port destination sur ta machine pour les paquets entrants. - La connexion d'un client viendra toujours d'un port supérieur à 1024 (sauf certains scan donc autant les éviter). - le premier paquet entrant sera NEW tous les autres seront en ESTABLISHED.
-- Julien
Bertrand Masius
Bonjour
Le 08 Sep 2003 20:53:25 GMT, Jeannot Lelapin
Bonjour, J'ai modifié la configuration du serveur SSH pour que le serveurs écoute sur le port 443. Dans le fichier /etc/ssh/sshd_config : ... Port 443 ...
Quand j'essaye depuis ma machine la connection suivante : ssh -2 -p 443 Ca marche nickel mais ce ne marche depuis internet.
En logguant netfilter, je vois mes packets de connexions droppés dans /var/log/messages :
mais je n'arrive toujours pas à trouver un bon ensemble de règles pour permettre ma connectionSSH. Les règles concernant SSH sont les suivantes : /sbin/iptables -A INPUT -p tcp --sport 443 -m state --state NEW,ESTABLISHED -j ACCEPT /sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
Les règles à mettre sur le serveur exécutant sshd :
iptables -A INPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT
Les règles à mettre sur le poste client ssh : iptables -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT -- "Tout ce qui se conçoit bien s'énonce clairement, Et les mots pour le dire viennent aisément."
(Nicolas Boileau, l'Art poétique)
Bonjour
Le 08 Sep 2003 20:53:25 GMT, Jeannot Lelapin <jeannot.lelapin@free.fr>
Bonjour,
J'ai modifié la configuration du serveur SSH pour que le serveurs écoute
sur le port 443. Dans le fichier /etc/ssh/sshd_config :
...
Port 443
...
Quand j'essaye depuis ma machine la connection suivante :
ssh -2 -p 443 theusername@themachinename
Ca marche nickel mais ce ne marche depuis internet.
En logguant netfilter, je vois mes packets de connexions droppés dans
/var/log/messages :
mais je n'arrive toujours pas à trouver un bon ensemble de règles pour
permettre ma connectionSSH. Les règles concernant SSH sont les suivantes :
/sbin/iptables -A INPUT -p tcp --sport 443 -m state --state
NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state
NEW,ESTABLISHED -j ACCEPT
Les règles à mettre sur le serveur exécutant sshd :
iptables -A INPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED
-j ACCEPT
iptables -A OUTPUT -p tcp --sport 443 -m state --state ESTABLISHED -j
ACCEPT
Les règles à mettre sur le poste client ssh :
iptables -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED
-j ACCEPT
iptables -A INPUT -p tcp --sport 443 -m state --state ESTABLISHED -j
ACCEPT
--
"Tout ce qui se conçoit bien s'énonce clairement,
Et les mots pour le dire viennent aisément."
Bonjour, J'ai modifié la configuration du serveur SSH pour que le serveurs écoute sur le port 443. Dans le fichier /etc/ssh/sshd_config : ... Port 443 ...
Quand j'essaye depuis ma machine la connection suivante : ssh -2 -p 443 Ca marche nickel mais ce ne marche depuis internet.
En logguant netfilter, je vois mes packets de connexions droppés dans /var/log/messages :
mais je n'arrive toujours pas à trouver un bon ensemble de règles pour permettre ma connectionSSH. Les règles concernant SSH sont les suivantes : /sbin/iptables -A INPUT -p tcp --sport 443 -m state --state NEW,ESTABLISHED -j ACCEPT /sbin/iptables -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
Les règles à mettre sur le serveur exécutant sshd :
iptables -A INPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT
Les règles à mettre sur le poste client ssh : iptables -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT -- "Tout ce qui se conçoit bien s'énonce clairement, Et les mots pour le dire viennent aisément."
(Nicolas Boileau, l'Art poétique)
Jeannot Lelapin
Je vous remercie tous pour ces explications claires. J'avais oublié d'inverser le raisonnement. Ma machine est désormais un serveur ssh.
Jeannot Lelapin
Je vous remercie tous pour ces explications claires.
J'avais oublié d'inverser le raisonnement. Ma machine est désormais un
serveur ssh.