Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 26/12/2014, à 17:20

minusculetit

Failed password for root from x.x.x.x port x ssh [issue self resolved]

Ma config
fail2ban running

jail.conf

# Fail2Ban configuration file.
#
# This file was composed for Debian systems from the original one
#  provided now under /usr/share/doc/fail2ban/examples/jail.conf
#  for additional examples.
#
# To avoid merges during upgrades DO NOT MODIFY THIS FILE
# and rather provide your changes in /etc/fail2ban/jail.local
#
# Author: Yaroslav O. Halchenko <debian@onerussian.com>
#
# $Revision$
#

# The DEFAULT allows a global definition of the options. They can be overridden
# in each jail afterwards.

[DEFAULT]

# "ignoreip" can be an IP address, a CIDR mask or a DNS host
ignoreip = 127.0.0.1/8 192.168.1.0/24
bantime  = 600
maxretry = 2

# "backend" specifies the backend used to get files modification. Available
# options are "gamin", "polling" and "auto".
# yoh: For some reason Debian shipped python-gamin didn't work as expected
#      This issue left ToDo, so polling is default backend for now
backend = auto

#
# Destination email address used solely for the interpolations in
# jail.{conf,local} configuration files.
destemail = root@localhost

#
# ACTIONS
#

# Default banning action (e.g. iptables, iptables-new,
# iptables-multiport, shorewall, etc) It is used to define
# action_* variables. Can be overridden globally or per
# section within jail.local file
banaction = iptables-allports

# email action. Since 0.8.1 upstream fail2ban uses sendmail
# MTA for the mailing. Change mta configuration parameter to mail
# if you want to revert to conventional 'mail'.
mta = sendmail

# Default protocol
protocol = tcp

# Specify chain where jumps would need to be added in iptables-* actions
chain = INPUT

#
# Action shortcuts. To be used to define action parameter

# The simplest action to take: ban only
action_ = %(banaction)s[name=%(__name__)s, port="%(port)s", protocol="%(protocol)s", chain="%(chain)s"]

# ban & send an e-mail with whois report to the destemail.
action_mw = %(banaction)s[name=%(__name__)s, port="%(port)s", protocol="%(protocol)s", chain="%(chain)s"]
              %(mta)s-whois[name=%(__name__)s, dest="%(destemail)s", protocol="%(protocol)s", chain="%(chain)s"]

# ban & send an e-mail with whois report and relevant log lines
# to the destemail.
action_mwl = %(banaction)s[name=%(__name__)s, port="%(port)s", protocol="%(protocol)s", chain="%(chain)s"]
               %(mta)s-whois-lines[name=%(__name__)s, dest="%(destemail)s", logpath=%(logpath)s, chain="%(chain)s"]

# Choose default action.  To change, just override value of 'action' with the
# interpolation to the chosen action shortcut (e.g.  action_mw, action_mwl, etc) in jail.local
# globally (section [DEFAULT]) or per specific section
action = %(action_)s

#
# JAILS
#

# Next jails corresponds to the standard configuration in Fail2ban 0.6 which
# was shipped in Debian. Enable any defined here jail by including
#
# [SECTION_NAME]
# enabled = true

#
# in /etc/fail2ban/jail.local.
#
# Optionally you may override any other parameter (e.g. banaction,
# action, port, logpath, etc) in that section within jail.local

[ssh]

enabled  = true
port     = all
filter   = sshd
logpath  = /var/log/auth.log
maxretry = 2

[dropbear]

enabled  = false
port     = ssh
filter   = sshd
logpath  = /var/log/dropbear
maxretry = 6

# Generic filter for pam. Has to be used with action which bans all ports
# such as iptables-allports, shorewall
[pam-generic]

enabled  = false
# pam-generic filter can be customized to monitor specific subset of 'tty's
filter   = pam-generic
# port actually must be irrelevant but lets leave it all for some possible uses
port     = all
banaction = iptables-allports
port     = anyport
logpath  = /var/log/auth.log
maxretry = 6

[xinetd-fail]

enabled   = false
filter    = xinetd-fail
port      = all
banaction = iptables-multiport-log
logpath   = /var/log/daemon.log
maxretry  = 2


[ssh-ddos]

enabled  = false
port     = ssh
filter   = sshd-ddos
logpath  = /var/log/auth.log
maxretry = 6

#
# HTTP servers
#

[apache]

enabled  = false
port     = http,https
filter   = apache-auth
logpath  = /var/log/apache*/*error.log
maxretry = 6

# default action is now multiport, so apache-multiport jail was left
# for compatibility with previous (<0.7.6-2) releases
[apache-multiport]

enabled   = false
port      = http,https
filter    = apache-auth
logpath   = /var/log/apache*/*error.log
maxretry  = 2

[apache-noscript]

enabled  = false
port     = http,https
filter   = apache-noscript
logpath  = /var/log/apache*/*error.log
maxretry = 6

[apache-overflows]

enabled  = false
port     = http,https
filter   = apache-overflows
logpath  = /var/log/apache*/*error.log
maxretry = 2

#
# FTP servers
#

[vsftpd]

enabled  = false
port     = ftp,ftp-data,ftps,ftps-data
filter   = vsftpd
logpath  = /var/log/vsftpd.log
# or overwrite it in jails.local to be
# logpath = /var/log/auth.log
# if you want to rely on PAM failed login attempts
# vsftpd's failregex should match both of those formats
maxretry = 6


[proftpd]

enabled  = false
port     = ftp,ftp-data,ftps,ftps-data
filter   = proftpd
logpath  = /var/log/proftpd/proftpd.log
maxretry = 6


[pure-ftpd]

enabled  = false
port     = ftp,ftp-data,ftps,ftps-data
filter   = pure-ftpd
logpath  = /var/log/auth.log
maxretry = 6


[wuftpd]

enabled  = false
port     = ftp,ftp-data,ftps,ftps-data
filter   = wuftpd
logpath  = /var/log/auth.log
maxretry = 6


#
# Mail servers
#

[postfix]

enabled  = false
port     = smtp,ssmtp
filter   = postfix
logpath  = /var/log/mail.log


[couriersmtp]

enabled  = false
port     = smtp,ssmtp
filter   = couriersmtp
logpath  = /var/log/mail.log


#
# Mail servers authenticators: might be used for smtp,ftp,imap servers, so
# all relevant ports get banned
#

[courierauth]

enabled  = false
port     = smtp,ssmtp,imap2,imap3,imaps,pop3,pop3s
filter   = courierlogin
logpath  = /var/log/mail.log


[sasl]

enabled  = false
port     = smtp,ssmtp,imap2,imap3,imaps,pop3,pop3s
filter   = sasl
# You might consider monitoring /var/log/mail.warn instead if you are
# running postfix since it would provide the same log lines at the
# "warn" level but overall at the smaller filesize.
logpath  = /var/log/mail.log

[dovecot]

enabled = false
port    = smtp,ssmtp,imap2,imap3,imaps,pop3,pop3s
filter  = dovecot
logpath = /var/log/mail.log

# DNS Servers


# These jails block attacks against named (bind9). By default, logging is off
# with bind9 installation. You will need something like this:
#
# logging {
#     channel security_file {
#         file "/var/log/named/security.log" versions 3 size 30m;
#         severity dynamic;
#         print-time yes;
#     };
#     category security {
#         security_file;
#     };
# };
#
# in your named.conf to provide proper logging

# !!! WARNING !!!
#   Since UDP is connection-less protocol, spoofing of IP and imitation
#   of illegal actions is way too simple.  Thus enabling of this filter
#   might provide an easy way for implementing a DoS against a chosen
#   victim. See
#    http://nion.modprobe.de/blog/archives/690-fail2ban-+-dns-fail.html
#   Please DO NOT USE this jail unless you know what you are doing.
#[named-refused-udp]
#
#enabled  = false
#port     = domain,953
#protocol = udp
#filter   = named-refused
#logpath  = /var/log/named/security.log

[named-refused-tcp]

enabled  = false
port     = domain,953
protocol = tcp
filter   = named-refused
logpath  = /var/log/named/security.log

iptables.up.rules

# Generated by iptables-save v1.4.12 on Wed Dec 24 19:05:13 2014
*raw
:PREROUTING ACCEPT [2717:244560]
:OUTPUT ACCEPT [3604:3718828]
COMMIT
# Completed on Wed Dec 24 19:05:13 2014
# Generated by iptables-save v1.4.12 on Wed Dec 24 19:05:13 2014
*nat
:PREROUTING ACCEPT [81:8134]
:INPUT ACCEPT [80:7558]
:OUTPUT ACCEPT [77:4946]
:POSTROUTING ACCEPT [77:4946]
COMMIT
# Completed on Wed Dec 24 19:05:13 2014
# Generated by iptables-save v1.4.12 on Wed Dec 24 19:05:13 2014
*mangle
:PREROUTING ACCEPT [2717:244560]
:INPUT ACCEPT [2716:243984]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [3604:3718828]
:POSTROUTING ACCEPT [3647:3724127]
COMMIT
# Completed on Wed Dec 24 19:05:13 2014
# Generated by iptables-save v1.4.12 on Wed Dec 24 19:05:13 2014
*filter
:INPUT ACCEPT [147:18685]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [132:58088]
:fail2ban-ssh - [0:0]
-A fail2ban-ssh -j RETURN
COMMIT
# Completed on Wed Dec 24 19:05:13 2014

En fait ce qui est fatigant de voir ces logs a répétition de failed, le plus simple serait que je n'autorise le port ssh qu'au local
Donc tout simplement j'ai modifié l'accès que en local ou à une ip spécifique

target     prot opt source               destination
fail2ban-ssh  tcp  --  anywhere             anywhere
ACCEPT     tcp  --  192.168.1.0/24       anywhere             tcp dpt:ssh
DROP       tcp  --  anywhere             anywhere             tcp dpt:ssh

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Chain fail2ban-ssh (1 references)
target     prot opt source               destination
RETURN     all  --  anywhere             anywhere

par ces commandes

iptables -A INPUT -p tcp --dport 22 -s 192.168.1.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j DROP

Je penses ne plus voir de logs extérieurs...
par contre ce que je ne comprends pas c'est que je suis avec une ip dynamique et que les tentatives sur ssh sont faites par mon ip fai (car le dossier de l'ip type xxx.xxx.xxx.xxx est logué et correspond)
Par contre j'ai remarqué un truc qui m'a chatouillé sur un de mes auth.log j'ai vu une correspondance "17track.net/r/handlertest.ashx" et qui s'avère que j'y avais été connecté pour suivre des colis à une autre url de ce site. Ce que je pourrais en conclure c'est que certains site on des logs de visite ouvert au publique donc exploitable par certains, ou le site lui même qui ne serait pas très clair...
Et bnes Fêtes...

Dernière modification par minusculetit (Le 26/12/2014, à 20:28)

Hors ligne

#2 Le 26/12/2014, à 17:31

tiramiseb

Re : Failed password for root from x.x.x.x port x ssh [issue self resolved]

Salut,

Peux-tu préciser ta configuration ?
C'est une machine avec deux adresses IP (passerelle, avec une IP privée et une IP publique) ?
Ou alors tu as mis en place une redirection, sur ta box ?

Dans les deux cas, les règles que tu as mises constituent un palliatif fonctionnel, mais autant faire un truc propre plutôt qu'un palliatif.

Hors ligne

#3 Le 26/12/2014, à 18:00

minusculetit

Re : Failed password for root from x.x.x.x port x ssh [issue self resolved]

Pour ceux que ça intéresse
il est possible d'accéder au ssh via le web, à distance
Pour celà il suffit d'installer un panel admin
moi j'utilise webmin (franchement au top)
vous pouvez y accéder grace à la fonction intégré
ssh login ou le commandshell
shell

passez par iptables pour autoriser le port de webmin (ou un autre que vous aurez modifié...
Bnes Ftes

Hors ligne

#4 Le 26/12/2014, à 18:05

tiramiseb

Re : Failed password for root from x.x.x.x port x ssh [issue self resolved]

Pour ma part, je n'aime pas trop les panels genre webmin, ça cache le "vrai" fonctionnement du système. Et l'applet de connexion SSH de webmin (ou d'autres panels) offre bien moins de fonctionnalités qu'une connexion SSH native : pas de copie avec SCP, pas de connexion par rebond, pas d'authentification par clé SSH, pas de transmission de flux graphique X11...

Hors ligne

#5 Le 26/12/2014, à 19:45

minusculetit

Re : Failed password for root from x.x.x.x port x ssh [issue self resolved]

Pour faire simple car linuxieu depuis longtemps @tiraduweb
une fois que vous avez accès à votre console du panel admin et que vous connaissez l'ip de votre connection (extérieur)
il suffit juste d'autoriser votre ip et donc passez en shell direct sur votre ordi sans passer par le 80...

Hors ligne

#6 Le 30/12/2014, à 19:40

LeoMajor

Re : Failed password for root from x.x.x.x port x ssh [issue self resolved]

443 est le minimum syndical,
et tant qu'à faire, si je suis ton raisonnement, un ListenAddress 127.0.0.1 dans le /etc/ssh/sshd_config

A quoi bon de mettre,

ListenAddress 0.0.0.0
iptables -A INPUT -p tcp --dport 22 -s 192.168.1.0/24 -j ACCEPT

si tu cherches à tout faire passer par webmin.

Hors ligne

#7 Le 30/12/2014, à 20:24

tiramiseb

Re : Failed password for root from x.x.x.x port x ssh [issue self resolved]

443 est le minimum syndical

Euh HTTPS, surtout. Mettre en HTTP sur le port 443, ça n'avancerait à rien smile
Si je me rappelle bien, Webmin est sur le port 10000 et HTTPS est forcé par défaut.

et tant qu'à faire, si je suis ton raisonnement, un ListenAddress 127.0.0.1 dans le /etc/ssh/sshd_config

C'est bien ce que j'évoque en parlant de faire un truc propre, dans mon message #2. Mais bon, vu que minusculetit ne semble pas intéressé par nos réponses, moi j'ai jeté l'éponge...

Hors ligne

#8 Le 30/12/2014, à 22:01

minusculetit

Re : Failed password for root from x.x.x.x port x ssh [issue self resolved]

Ces codes fonctionnent en local,
webmin c'est juste une suggestion pour des accès par poste externes
oups 443 éffectivement et non 80 pour webmin ou autre port ssl

bref je n'ai plus de tentatives ssh sur mon serveur, j'y accède en local...
vous pouvez rééditer le code pour l'externe...

@2015

Hors ligne