Perte d'accès extérieur

Salut a tous,

J’ai mis en place un serveur web, accès ftp, ssh et owncloud sur ma rpi avec Raspbian, tout fonctionnait parfaitement bien et pour une raison de sécurité sur mon site j’ai voulu installer le SSL, cela marchait jusqu’au moment ou j’ai activé la ligne LogLevel info ssl:warn et la, en redémarrant le service apache, plus rien.
Je n’étais plus connecté en ssh, le ftp ne marche plus et plus accès au web, en effet le redémarrage d’apache ne sait pas fait. J’ai cherché un moment avant de m’apercevoir que cela venait de cette ligne (j’ai réinstallé apache) dans le vhost de mon site. En corrigeant le vhost, apache démarre mais je ne peux pas y accéder depuis l’extérieur ni ssh ni ftp ni owncloud.
Je redémarre le RPI, cela fonctionne, j’accède au site mais quelque second après plus d’accès.
Je tourne en rond pour savoir qu’est ce qui me bloque cet accès depuis l’extérieur.

Cela devient urgent, car j’ai vraiment besoin de mon site et je ne trouve pas de solution.

J’ai supprimé fail2ban, portsentry mais rien. Tout fonctionnait correctement avant la modification de cette ligne.

Si quelqu’un a une aide ou un chemin à m’aiguiller pour trouver une solution.

tu n’as pas iptables encore d’activé ? ou UFW ? je vois pas le rapport entre apache qui charge pas et l’acces ssh.

Iptables est bien configuré puisqu’il fonctionnait bien avant le problème.
Apache démarre, ce n’est plus le problème, le souci c’est que je n’accède plus à la page web, je ne peux plus me connecter en ssh en local ou en externe, l’accès ftp est coupé.
Je peux me connecter qu’en VNC en local (ce qui est déjà bien).
Est ce que l’installation de certificat SSL Letsencrypt peut provoquer ce type de problème?

service ssh status

juste pour désactiver iptables pour voir

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

iptables -L

et voir ou ssh ecoute

netstat -lataupen |grep ssh

Ok voici pour l’ensemble des commandes

service ssh status
\u25cf ssh.service - OpenBSD Secure Shell server
Loaded: loaded (/lib/systemd/system/ssh.service; enabled)
Active: active (running) since Sun 2017-09-03 21:42:17 CEST; 51min ago
Main PID: 6645 (sshd)
CGroup: /system.slice/ssh.service
\u2514\u25006645 /usr/sbin/sshd -D

sudo iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

sudo netstat -lataupen | grep ssh
tcp 0 0 0.0.0.0:1410 0.0.0.0:* LISTEN 0 10647 540/sshd
tcp6 0 0 :::1410 :::* LISTEN 0 10649 540/sshd

Le ssh écoute en 1410 et cela fonctionnait

ssh ecoute sur le port 1410 t’as changé le port ?
donc tu te connectes par exemple : ssh pi@raspi -p 1410 ? depuis Linux

avec putty depuis windows ?

c’est quoi le message d’erreur ?

Oui le port est changé, depuis mon mac

Test en local
ssh pi@192.168.0.5 -p1410
ssh_exchange_identification: read: Connection reset by peer

Test depuis l’extérieur avec redirection de port configurer sur le routeur
ssh -v pi@IP.DU.SERVEUR -p2307
OpenSSH_6.9p1, LibreSSL 2.1.8
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 21: Applying options for *
debug1: Connecting to IP.DU.SERVEUR [IP.DU.SERVEUR] port 2307.
debug1: Connection established.
debug1: key_load_public: No such file or directory
debug1: identity file /Users/kero/.ssh/id_rsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/kero/.ssh/id_rsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/kero/.ssh/id_dsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/kero/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/kero/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/kero/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/kero/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/kero/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.9
ssh_exchange_identification: read: Connection reset by peer

tail -f /var/log/auth.log sur le Rpi

pendant que tu fais ssh pi@192.168.0.5 -p 1410 sur le Mac

dans ta conf ssh le user Pi est autorisé ?

Voila pour l’autorisation dans le sshd_config

Authentication:

LoginGraceTime 120
PermitRootLogin no
StrictModes yes
AllowUsers pi
RSAAuthentication yes
PubkeyAuthentication yes
#AuthorizedKeysFile %h/.ssh/authorized_keys

fourni les log que je t’ai demandé

Merci Jimbo pour le temps accordé, depuis les commandes iptables j’accède au serveur web, ftp mais pas owncloud…

voici le log demandé
tail -f /var/log/auth.log

Sep 4 12:09:01 raspberrypi CRON[8121]: pam_unix(cron:session): session opened for user root by (uid=0)
Sep 4 12:09:02 raspberrypi CRON[8121]: pam_unix(cron:session): session closed for user root
Sep 4 12:17:01 raspberrypi CRON[8184]: pam_unix(cron:session): session opened for user root by (uid=0)
Sep 4 12:17:01 raspberrypi CRON[8184]: pam_unix(cron:session): session closed for user root
Sep 4 12:37:27 raspberrypi sudo: pi : TTY=pts/0 ; PWD=/home/pi ; USER=root ; COMMAND=/usr/bin/nano /etc/apache2/sites-available/default-ssl.conf
Sep 4 12:37:27 raspberrypi sudo: pam_unix(sudo:session): session opened for user root by (uid=0)
Sep 4 12:39:01 raspberrypi CRON[8224]: pam_unix(cron:session): session opened for user root by (uid=0)
Sep 4 12:39:01 raspberrypi CRON[8224]: pam_unix(cron:session): session closed for user root
Sep 4 12:40:18 raspberrypi sudo: pam_unix(sudo:session): session closed for user root
Sep 4 12:53:12 raspberrypi sshd[8295]: refused connect from 192.168.0.254 (192.168.0.254)
Sep 4 12:53:45 raspberrypi sshd[8297]: refused connect from 192.168.0.10 (192.168.0.10)

PermitRootLogin no

met ca a yes dans ta conf ssh et relance le service

et vérifie aussi tes host.allow et host.deny

Merci Jimbo pour ton aide, j’ai retrouvé mon accès ssh en local et en extérieur!!

Il me reste Owncloud qui n’est plus accessible et je vais aussi paramétrer le ssl sur le serveur

Voici mon iptables pour que tu puisses voir ce qui ne va pas
#!/bin/sh

RÈinitialise les rËgles

sudo iptables -t filter -F
sudo iptables -t filter -X

Bloque tout le trafic

sudo iptables -t filter -P INPUT DROP
sudo iptables -t filter -P FORWARD DROP
sudo iptables -t filter -P OUTPUT DROP

Autorise les connexions dÈj‡ Ètablies et localhost

sudo iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -t filter -A INPUT -i lo -j ACCEPT
sudo iptables -t filter -A OUTPUT -o lo -j ACCEPT

ICMP (Ping)

sudo iptables -t filter -A INPUT -p icmp -j ACCEPT
sudo iptables -t filter -A OUTPUT -p icmp -j ACCEPT

SSH

sudo iptables -t filter -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -t filter -A OUTPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -t filter -A INPUT -p tcp --dport 1410 -j ACCEPT
sudo iptables -t filter -A OUTPUT -p tcp --dport 1410 -j ACCEPT

DNS

sudo iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT
sudo iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT
sudo iptables -t filter -A INPUT -p tcp --dport 53 -j ACCEPT
sudo iptables -t filter -A INPUT -p udp --dport 53 -j ACCEPT

HTTP

sudo iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT

FTP

sudo iptables -t filter -A OUTPUT -p tcp --dport 21 -j ACCEPT
sudo iptables -t filter -A INPUT -p tcp --dport 21 -j ACCEPT

VNC

sudo iptables -t filter -A OUTPUT -p tcp --dport 5900 -j ACCEPT
sudo iptables -t filter -A INPUT -p tcp --dport 5900 -j ACCEPT

Mail SMTP

iptables -t filter -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 25 -j ACCEPT

Mail POP3

iptables -t filter -A INPUT -p tcp --dport 110 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 110 -j ACCEPT

Mail IMAP

iptables -t filter -A INPUT -p tcp --dport 143 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 143 -j ACCEPT

NTP (horloge du serveur)

sudo iptables -t filter -A OUTPUT -p udp --dport 123 -j ACCEPT
sudo iptables -A FORWARD -p tcp --syn -m limit --limit 1/second -j ACCEPT

c’était a cause de ton host allow ?

Non c’est le deny, il y avait l’adresse ip du mac en local et l’ip de la box quand je passe par l’extérieur.
Dans le allow, il n’y avait rien.

parfait
bon alors apres pour owcloud c’est pareil, il faut désactiver ton Iptables et vérifier, deja un simple telenet sur le port 80, mais si tu es passé en SSL check le 443 églament

J’ai désactivé ssl, mis pour le owncloud j’ai l’erreur 404, je suis entrain de voir le paramétrage car j’avais réinstallé apache et php, cela peut être du à ça…

Jimbo peux tu regarder mon script de firewall et me dire s’il est correct?

il a l’air oui mais j’ai pas tout le schéma réseau de se que tu as fait

Ok merci Jimbo pour l’aide apportée, j’ai retrouvé tous mes accès, web, ftp, ssh et owncloud.

Problème résolu encore merci

Pour la configuration SSL, je vais chercher sur le forum afin de trouver une aide pour configurer avec letsencrypt sur apache 2.4.10

j’ai aidé une autre personne avec ca sur ce forum, de a a Z avec A+ au test SSL lab