web-dev-qa-db-fra.com

qui essaie de forcer mon mot de passe?

Je cherchais dans mes fichiers journaux sur mon serveur et j'ai trouvé les lignes suivantes dans: /var/log/.auth.log.1:

pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruse      r= rhost=218.87.109.156  user=root
Failed password for root from 218.87.109.156 port 7612 ssh2
message repeated 5 times: [ Failed password for root from 218.87.109.156 port 7      612 ssh2]
error: maximum authentication attempts exceeded for root from 218.87.109.156 po      rt 7612 ssh2 [preauth]
Disconnecting: Too many authentication failures [preauth]
PAM 5 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=      218.87.109.156  user=root
PAM service(sshd) ignoring max retries; 6 > 3
pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruse      r= rhost=218.87.109.156  user=root
Failed password for root from 218.87.109.156 port 50092 ssh2
message repeated 5 times: [ Failed password for root from 218.87.109.156 port 5      0092 ssh2]
Failed password for invalid user service from 188.187.119.158 port 52722 ssh2
pam_unix(sshd:auth): check pass; user unknown
Failed password for root from 113.195.145.79 port 6500 ssh2
Received disconnect from 121.18.238.39 port 58070:11:  [preauth]
Failed password for root from 121.18.238.119 port 57538 ssh2
Failed password for root from 121.18.238.39 port 57268 ssh2
Failed password for root from 121.18.238.106 port 34360 ssh2
Disconnected from 92.222.216.31 port 58960 [preauth]
Invalid user truman from 92.222.216.31
Received disconnect from 92.222.216.31 port 33922:11: Normal Shutdown, Thank you       for playing [preauth]
input_userauth_request: invalid user truman [preauth]

Et cela continue ainsi pendant des milliers de lignes!

Et aussi quelque part j'ai:

Nov 30 13:17:01 Aran CRON[6038]: pam_unix(cron:session): session opened for user root by (uid=0)

Que signifie CRON ici? alors quelqu'un peut-il m'expliquer s'il vous plaît ce sont ces journaux? Suis-je en danger? Que dois-je faire pour être plus en sécurité?

2
yukashima huksay

Cette réponse n'indique pas vraiment qui essaie de se connecter à votre hôte, mais elle peut vous donner une idée de la provenance de la personne.

Si vous allez utiliser des mots de passe pour vous connecter via ssh, vous devez prendre certaines précautions pour éviter que des personnes ne tentent de pirater votre système. Pour mon usage personnel, j'aime bien utiliser fail2ban puis j'ai écrit mon propre script qui utilise iptables et ipset. La dernière partie que j'utilise pour le blocage complet des adresses IP de pays venant de mon hôte sur le port 22. J'ai également installé geoiplookup comme moyen de voir d'où vient l'adresse IP pour décider si je souhaite bloquer le pays. ou pas. Le script que j'ai ci-dessous obtient les ensembles d'adresses IP de ipdeny.com. Cela a considérablement réduit le nombre de tentatives sur mon hôte depuis que je laisse le port 22 ouvert la plupart du temps.


Installation de fail2ban:

Sudo apt install fail2ban

Habituellement, avec fail2ban, les paramètres par défaut sont OK. Si vous souhaitez les modifier, veillez à copier /etc/fail2ban/jail.conf en tant que /etc/fail2ban/jail.local et à modifier le fichier jail.local que vous avez créé. Vous pouvez également voir les tentatives infructueuses dans le fichier /var/log/fail2ban.log.


Installation de geoiplookup:

Sudo apt install geoip-bin

Ensuite, vous pouvez voir d'où proviennent les adresses IP.

~$ geoiplookup 218.87.109.156
GeoIP Country Edition: CN, China

Le script de blocage de pays que j'ai créé.

Une application requise pour le bloc de pays est ipset. Cette application permet à iptables d’utiliser un bloc d’adresses IP au lieu d’afficher chaque adresse IP lorsque vous vérifiez l’état de iptables.

Sudo apt install ipset

Je suis certain qu'il y a beaucoup de choses qui peuvent être nettoyées. Je mets le mien dans mon dossier personnel et l’appelle country_block.bsh. Le script apportant des modifications à iptables, il doit être appelé depuis Sudo. J'ai ajouté la vérification au script.

#!/bin/bash

function custom(){
    echo "Removing CUSTOM_IP set..."
    prts=$(iptables -nvL INPUT | grep "CUSTOM_IP" | awk '{print $15}')
    iptables -D INPUT -p tcp -m set --match-set CUSTOM_IP src -m multiport --dport ${prts} -j DROP 2>/dev/null
    ipset destroy CUSTOM_IP
    ipset -N CUSTOM_IP hash:net
    echo "Creating CUSTOM_IP set..."
    for i in $(cat custom.zone); do ipset -A CUSTOM_IP $i; done
    echo "Creating rules for CUSTOM_IP set..."
    iptables -A INPUT -p tcp -m set --match-set CUSTOM_IP src -m multiport --dports ${ports} -j DROP
}

function tablecheck(){
    iptables -S INPUT | grep -v ACCEPT 
}

# Check for ipset
which ipset >/dev/null
case $? in
1) echo "ipset not found on system.  Please install ipset application."
exit 1;;
0);;
esac


# Check for root
if [ "$EUID" -ne 0 ]; then
  echo "Please run this script as root"
  exit 1
fi

# Set ports
ports=22,10000

# Check for country codes, if none, print list.
if [[ $@ == "" ]]; then
    curl http://www.ipdeny.com/ipblocks/ 2>/dev/null | grep "<td>" | awk -F'<p>' '{print $2}' | awk -F'[' '{print $1}' | grep -v -e '^$'
    echo "Choose any of the countries by typing in the two letter code between the ( )."
    exit
fi

if [[ $1 == "custom" ]]; then
    if [ ! -f custom.zone ]; then
        echo "Missing custom.zone file.  Please create custom.zone file with IP addresses for blocking."
        exit
    fi
    custom
    tablecheck
    exit
fi


#Set ISO to country code(s).
ISO=$@

#Start Loop for country IP blocks and creating IPTABLES chain(s).
for c in $ISO; do

    #Convert to lowercase.  If already lowercase, ignored.
    c=$(echo $c | awk '{print tolower($0)}')
    #Match code to country name
    country=$(curl http://www.ipdeny.com/ipblocks/ 2>/dev/null | grep \($(echo $c | awk '{print toupper($0)}')\) | awk -F'<p>' '{print $2}' | awk -F'(' '{print $1}' | sed 's/ //g' | sed 's/,//g')

    # Truncate to 31 characters if too long.
    country=${country:0:31}
    echo "Got country $country..."

    echo "Removing Existing Rule for $country (if any)..."
    prts=$(iptables -nvL INPUT | grep "$country" | awk '{print $15}')
    iptables -D INPUT -p tcp -m set --match-set "$country" src -m multiport --dport ${prts} -j DROP 2>/dev/null
    ipset destroy $country
    ipset -N $country hash:net
    rm $c.zone 2>/dev/null

    echo "Downloading IP block for $country..."
    wget -P . http://www.ipdeny.com/ipblocks/data/countries/$c.zone 2>/dev/null
    echo "Checking for invalid IP ranges in $country zone..."
    for i in $(seq 1 7); do grep "/$i$" $c.zone; if [[ $? == "0" ]]; then sed -i "s/\/${i}$/\/24/" $c.zone; echo "Fixed..."; fi; done
    echo "Creating iptable block for $country..."
    for i in $(cat $c.zone); do ipset -A "$country" $i; done

    echo "Adding rule to firewall..."
    iptables -A INPUT -p tcp -m set --match-set "$country" src -m multiport --dports ${ports} -j DROP

    echo "Added Firewall Rule for $country"
    rm $c.zone 2>/dev/null
done

if [[ $# == "1" || $1 -ne "custom" ]]; then
    tablecheck
else
    if [ ! -f custom.zone ]; then
        echo "Missing custom.zone file.  Please create custom.zone file with IP addresses for blocking."
        tablecheck
        exit
    fi
    custom
fi

if [[ $# -ne "1" ]]; then
    tablecheck
fi

#iptables -S INPUT | grep -v ACCEPT 

Vous pouvez ensuite créer un custom.zone dans le même dossier que le fichier country_block.bsh avec uniquement les adresses IP susceptibles de tenter de multiplier les tentatives de piratage de votre système. Ajoutez-les avec un /32 à la fin de l'adresse IP comme 256.99.265.106/32. Après avoir ajouté vos propres adresses IP personnalisées, vous pouvez les recharger simplement en exécutant:

Sudo ./country_block.bsh custom

Veillez à ne pas bloquer votre propre pays ou votre propre adresse IP publique.

Veillez également à ne pas bloquer les autres ports non ouverts. Si vous bloquez le port 80, il est possible que le site ne se charge pas si vous visitez un site Web de ce pays car ce dernier ne peut pas revenir sur votre système via le port 80.

Ensuite, j'ai créé un autre script dans mon dossier personnel appelé cb_update.bsh, qui contient tous les pays que je souhaite bloquer.

#!/bin/bash

cd /home/terrance/scripts/
./country_block.bsh cn ru nl de dk fr id ie it kr sg tw vn br ua pt il gb jp pk ar co fi in

Ensuite, j'ai ajouté les lignes suivantes à mon fichier /etc/crontab. Il couvre chaque fois que mon système redémarre et met à jour la liste à 01h05 du matin.

$ cat /etc/crontab

@reboot     root    /bin/bash -c 'sleep 20 && /home/terrance/cb_update.bsh'
01 05   * * *   root    /home/terrance/cb_update.bsh

Si vous exécutez le script lui-même, il vous donnera les codes de pays:

terrance@terrance-ubuntu:~/scripts$ Sudo ./country_block.bsh 
AFGHANISTAN (AF) 
LAND ISLANDS (AX) 
ALBANIA (AL) 
ALGERIA (DZ) 
AMERICAN SAMOA (AS) 
ANDORRA (AD) 
ANGOLA (AO) 
ANGUILLA (AI) 
ANTIGUA AND BARBUDA (AG) 
ARGENTINA (AR) 
ARMENIA (AM) 
ARUBA (AW) 
AUSTRALIA (AU) 
AUSTRIA (AT) 
AZERBAIJAN (AZ) 
BAHAMAS (BS) 
BAHRAIN (BH) 
BANGLADESH (BD) 
BARBADOS (BB) 
BELARUS (BY) 
BELGIUM (BE) 
BELIZE (BZ) 
BENIN (BJ) 
BERMUDA (BM) 
BHUTAN (BT) 
BOLIVIA (BO) 
BOSNIA AND HERZEGOVINA (BA) 
BOTSWANA (BW) 
BRAZIL (BR) 
BRITISH INDIAN OCEAN TERRITORY (IO) 
BRUNEI DARUSSALAM (BN) 
BULGARIA (BG) 
BURKINA FASO (BF) 
BURUNDI (BI) 
CAMBODIA (KH) 
CAMEROON (CM) 
CANADA (CA) 
CAPE VERDE (CV) 
CAYMAN ISLANDS (KY) 
CENTRAL AFRICAN REPUBLIC (CF) 
CHAD (TD) 
CHILE (CL) 
CHINA (CN) 
COLOMBIA (CO) 
COMOROS (KM) 
CONGO (CG) 
CONGO, THE DEMOCRATIC REPUBLIC OF THE (CD) 
COOK ISLANDS (CK) 
COSTA RICA (CR) 
COTE D'IVOIRE (CI) 
CROATIA (HR) 
CUBA (CU) 
CYPRUS (CY) 
CZECH REPUBLIC (CZ) 
DENMARK (DK) 
DJIBOUTI (DJ) 
DOMINICA (DM) 
DOMINICAN REPUBLIC (DO) 
ECUADOR (EC) 
EGYPT (EG) 
EL SALVADOR (SV) 
EQUATORIAL GUINEA (GQ) 
ERITREA (ER) 
ESTONIA (EE) 
ETHIOPIA (ET) 
FAROE ISLANDS (FO) 
FIJI (FJ) 
FINLAND (FI) 
FRANCE (FR) 
FRENCH GUIANA (GF) 
FRENCH POLYNESIA (PF) 
GABON (GA) 
GAMBIA (GM) 
GEORGIA (GE) 
GERMANY (DE) 
GHANA (GH) 
GIBRALTAR (GI) 
GREECE (GR) 
GREENLAND (GL) 
GRENADA (Gd) 
GUADELOUPE (GP) 
GUAM (GU) 
GUATEMALA (GT) 
GUINEA (GN) 
GUINEA-BISSAU (GW) 
GUYANA (GY) 
HAITI (HT) 
HOLY SEE (VATICAN CITY STATE) (VA) 
HONDURAS (HN) 
HONG KONG (HK) 
HUNGARY (HU) 
ICELAND (IS) 
INDIA (IN) 
INDONESIA (ID) 
IRAN, ISLAMIC REPUBLIC OF (IR) 
IRAQ (IQ) 
IRELAND (IE) 
ISLE OF MAN (IM) 
ISRAEL (IL) 
ITALY (IT) 
JAMAICA (JM) 
JAPAN (JP) 
JERSEY (JE) 
JORDAN (JO) 
KAZAKHSTAN (KZ) 
KENYA (KE) 
KIRIBATI (KI) 
KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF (KP) 
KOREA, REPUBLIC OF (KR) 
KUWAIT (KW) 
KYRGYZSTAN (KG) 
LAO PEOPLE'S DEMOCRATIC REPUBLIC (LA) 
LATVIA (LV) 
LEBANON (LB) 
LESOTHO (LS) 
LIBERIA (LR) 
LIBYAN ARAB JAMAHIRIYA (LY) 
LIECHTENSTEIN (LI) 
LITHUANIA (LT) 
LUXEMBOURG (LU) 
MACAO (MO) 
MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF (MK) 
MADAGASCAR (MG) 
MALAWI (MW) 
MALAYSIA (MY) 
MALDIVES (MV) 
MALI (ML) 
MALTA (MT) 
MARSHALL ISLANDS (MH) 
MARTINIQUE (MQ) 
MAURITANIA (MR) 
MAURITIUS (MU) 
MAYOTTE (YT) 
MEXICO (MX) 
MICRONESIA, FEDERATED STATES OF (FM) 
MOLDOVA, REPUBLIC OF (MD) 
MONACO (MC) 
MONGOLIA (MN) 
MONTENEGRO (ME) 
MONTSERRAT (MS) 
MOROCCO (MA) 
MOZAMBIQUE (MZ) 
MYANMAR (MM) 
NAMIBIA (NA) 
NAURU (NR) 
NEPAL (NP) 
NETHERLANDS (NL) 
NEW CALEDONIA (NC) 
NEW ZEALAND (NZ) 
NICARAGUA (NI) 
NIGER (NE) 
NIGERIA (NG) 
NIUE (NU) 
NORFOLK ISLAND (NF) 
NORTHERN MARIANA ISLANDS (MP) 
NORWAY (NO) 
OMAN (OM) 
PAKISTAN (PK) 
PALAU (PW) 
PALESTINIAN TERRITORY, OCCUPIED (PS) 
PANAMA (PA) 
PAPUA NEW GUINEA (PG) 
PARAGUAY (PY) 
PERU (PE) 
PHILIPPINES (PH) 
POLAND (PL) 
PORTUGAL (PT) 
PUERTO RICO (PR) 
QATAR (QA) 
REUNION (RE) 
ROMANIA (RO) 
RUSSIAN FEDERATION (RU) 
RWANDA (RW) 
SAINT KITTS AND NEVIS (KN) 
SAINT LUCIA (LC) 
SAINT PIERRE AND MIQUELON (PM) 
SAINT VINCENT AND THE GRENADINES (VC) 
SAMOA (WS) 
SAN MARINO (SM) 
SAO TOME AND PRINCIPE (ST) 
SAUDI ARABIA (SA) 
SENEGAL (SN) 
SERBIA (RS) 
SEYCHELLES (SC) 
SIERRA LEONE (SL) 
SINGAPORE (SG) 
SLOVAKIA (SK) 
SLOVENIA (SI) 
SOLOMON ISLANDS (SB) 
SOMALIA (SO) 
SOUTH AFRICA (ZA) 
SPAIN (ES) 
SRI LANKA (LK) 
SUDAN (SD) 
SURINAME (SR) 
SWAZILAND (SZ) 
SWEDEN (SE) 
SWITZERLAND (CH) 
SYRIAN ARAB REPUBLIC (SY) 
TAIWAN (TW) 
TAJIKISTAN (TJ) 
TANZANIA, UNITED REPUBLIC OF (TZ) 
THAILAND (TH) 
TIMOR-LESTE (TL) 
TOGO (TG) 
TOKELAU (TK) 
TONGA (TO) 
TRINIDAD AND TOBAGO (TT) 
TUNISIA (TN) 
TURKEY (TR) 
TURKMENISTAN (TM) 
TURKS AND CAICOS ISLANDS (TC) 
TUVALU (TV) 
UGANDA (UG) 
UKRAINE (UA) 
UNITED ARAB EMIRATES (AE) 
UNITED KINGDOM (GB) 
UNITED STATES (US) 
UNITED STATES MINOR OUTLYING ISLANDS (UM) 
URUGUAY (UY) 
UZBEKISTAN (UZ) 
VANUATU (VU) 
VENEZUELA (VE) 
VIET NAM (VN) 
VIRGIN ISLANDS, BRITISH (VG) 
VIRGIN ISLANDS, U.S. (VI) 
WALLIS AND FUTUNA (WF) 
YEMEN (YE) 
ZAMBIA (ZM) 
ZIMBABWE (ZW) 
Choose any of the countries by typing in the two letter code between the ( ).

Vous pouvez alors vérifier à tout moment les problèmes pouvant survenir sur votre système.

$ Sudo iptables -nvL INPUT
Chain INPUT (policy ACCEPT 9523 packets, 3125K bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     udp  --  virbr0 *       0.0.0.0/0            0.0.0.0/0            udp dpt:53
    0     0 ACCEPT     tcp  --  virbr0 *       0.0.0.0/0            0.0.0.0/0            tcp dpt:53
    0     0 ACCEPT     udp  --  virbr0 *       0.0.0.0/0            0.0.0.0/0            udp dpt:67
    0     0 ACCEPT     tcp  --  virbr0 *       0.0.0.0/0            0.0.0.0/0            tcp dpt:67
    0     0 f2b-proftpd  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            multiport dports 21,20,990,989
 2847  170K f2b-sshd   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            multiport dports 22
   12   548 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set CHINA src multiport dports 22,10000
    4   176 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set RUSSIANFEDERATION src multiport dports 22,10000
    1    44 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set NETHERLANDS src multiport dports 22,10000
    2    88 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set GERMANY src multiport dports 22,10000
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set DENMARK src multiport dports 22,10000
  157  8156 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set FRANCE src multiport dports 22,10000
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set INDONESIA src multiport dports 22,10000
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set IRELAND src multiport dports 22,10000
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set ITALY src multiport dports 22,10000
    4   180 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set KOREAREPUBLICOF src multiport dports 22,10000
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set SINGAPORE src multiport dports 22,10000
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set TAIWAN src multiport dports 22,10000
  947 48804 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set VIETNAM src multiport dports 22,10000
    2    92 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set BRAZIL src multiport dports 22,10000
    6   264 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set UKRAINE src multiport dports 22,10000
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set PORTUGAL src multiport dports 22,10000
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set ISRAEL src multiport dports 22,10000
    3   180 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set UNITEDKINGDOM src multiport dports 22,10000
    1    44 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set JAPAN src multiport dports 22,10000
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set PAKISTAN src multiport dports 22,10000
    2    88 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set ARGENTINA src multiport dports 22,10000
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set COLOMBIA src multiport dports 22,10000
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set FINLAND src multiport dports 22,10000
    4   188 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set INDIA src multiport dports 22,10000
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set CUSTOM_IP src multiport dports 22,10000

J'espère que cela t'aides!

2
Terrance

Toutes ces tentatives de connexion sont destinées à l'utilisateur root. Il ne s'agit donc que de tentatives élémentaires de force brute via SSH.

Il est tout à fait normal qu'un serveur public fasse de nombreuses tentatives de force brute SSH par jour. C'est un fait de la vie. Vous pouvez commencer à les signaler au fournisseur de services Internet qui possède l'adresse IP, mais ce n'est pas grave et vous ne ferez pas une grande différence. Ils utilisent des ordinateurs compromis sur Internet et/ou hébergent des comptes auxquels ils se sont inscrits sous de faux détails.

Ce qui ferait une différence, c’est que tout le monde décide de désactiver la connexion root sur SSH et/ou d’exiger une connexion par clé pour root (ou pour tout le monde). Tant que vous avez fait l'une de ces tentatives, les tentatives de force brute seront fondamentalement inefficaces. Mais comme suffisamment de personnes laissent toujours la connexion root pure activée et que leur mot de passe est concevable, ces attaques se poursuivent.

Une autre chose que certaines personnes recommandent est de remplacer votre démon SSH par un numéro de port non standard, bien que je préfère ne pas le faire car les avantages en termes de sécurité ne sont pas énormes et que j'aime utiliser le port standard 22.

En ce qui concerne votre deuxième question, cela ne concerne que Cron, qui est le programme qui exécute les tâches planifiées. Tous les systèmes ont un ensemble de tâches planifiées configurées par défaut par le système. Puisque cron peut exécuter différentes tâches en tant qu’utilisateurs différents, il utilise pam_unix pour gérer le démarrage d’une session utilisateur, même sous root, c’est pourquoi il apparaît dans ce journal.

7
thomasrutter

Sauf si vous avez le contrôle/l'accès au niveau de l'État national sur tous les ordinateurs/réseaux disponibles sur votre serveur, la recherche de la personne à l'origine des tentatives de connexion est fonctionnellement impossible. Vous pouvez cependant travailler pour renforcer votre serveur. voir, Comment renforcer un serveur SSH? , et Que peut-on faire pour sécuriser le serveur Ubuntu?

3
J. Starnes

L'adresse IP 218.87.109.156 n'est pas dans le DNS et tracepath (d'Ottawa, Canada) indique:

  w3@aardvark:~(0)$ tracepath  218.87.109.156
 1?: [LOCALHOST]                                         pmtu 1492
 1:  spark2y                                               0.739ms 
 1:  spark2y                                               0.744ms 
 2:  dsl-173-206-128-1.tor.primus.ca                      31.017ms 
 3:  10.201.117.46                                        31.425ms asymm  5 
 4:  38.88.240.86                                         30.987ms 
 5:  be4181.ccr31.yyz02.atlas.cogentco.com                30.872ms 
 6:  be2993.ccr21.cle04.atlas.cogentco.com                38.281ms 
 7:  be2717.ccr41.ord01.atlas.cogentco.com                45.373ms 
 8:  sjo-b21-link.telia.net                               92.369ms 
 9:  be3035.ccr21.den01.atlas.cogentco.com                68.380ms 
10:  202.97.50.77                                         96.352ms asymm 15 
11:  be3109.ccr21.sfo01.atlas.cogentco.com                96.099ms 
12:  be3179.ccr22.sjc01.atlas.cogentco.com                95.375ms 
13:  202.97.57.26                                        233.831ms asymm 14 
14:  202.97.82.126                                       278.546ms asymm 20 
15:  117.44.130.118                                      250.081ms asymm 21 
16:  111.74.206.105                                      249.725ms asymm 21 
17:  117.44.130.146                                      245.893ms asymm 18 
18:  202.97.57.26                                        232.033ms asymm 14 
19:  202.97.39.58                                        241.135ms asymm 16 
20:  111.74.207.46                                       268.148ms asymm 17 
21:  218.87.109.156                                      246.090ms reached

Faire Dig -x et tracepath sur le reste des adresses IP est laissé comme exercice.

Je suppose que vous êtes attaqué. Si vous n'êtes pas derrière un pare-feu (et pourquoi pas?), Examinez le package fail2ban ou, si vous ne l'utilisez pas, arrêtez l'exécution de sshd.

CRON est le planificateur de travaux du système. Sur mon système, j'en vois des centaines par jour.

2
waltinator

Vous pouvez également remplacer le port par défaut par un autre port non standard si vous n'avez pas nécessairement besoin du port 22 sur Internet.

Même si vous utilisez fail2ban, vous aurez toujours un nombre de tentatives infructueuses/jour. Je ne laisse jamais le port par défaut ouvert sur Internet. Pour SSH au moins. Beaucoup de robots ces jours-ci bruteforcing.

Vous pouvez le faire en modifiant le fichier /etc/ssh/sshd_config Il doit y avoir une ligne semblable à celle-ci:

#Port 22 Supprimez le # situé devant et réglez 22 sur la valeur de port souhaitée (1 à 65535)

Exemple: Port 1337

Ensuite, vous pouvez tester la validité de la configuration (assurez-vous qu'il n'y a pas de caractères supplémentaires, sinon cela pourrait ne pas démarrer - cela est utile lorsque vous redémarrez sshd remote, il se peut qu'il ne redémarre pas correctement et que vous ayez besoin d'accéder via d'autres routes). commande: /usr/sbin/sshd -t

Rappelez-vous: pas de sortie signifie généralement pas d'erreur.

Et ensuite, vous devez redémarrer le service sshd:

Sudo systemctl restart sshd

ou

Sudo service sshd restart

ou

Sudo killall -HUP sshd

Ensuite, vous pouvez SSH sur votre serveur en utilisant le port personnalisé. Depuis un autre terminal, vous pouvez utiliser:

ssh <serverHostname> -p <port>.

Et pour les paresseux comme moi, si vous ne voulez pas spécifier ce port tout le temps, vous pouvez modifier le port par défaut de la même manière dans le fichier /etc/ssh/ssh_config (il s’agit du fichier de la commande ssh). il n'est pas nécessaire d'ajouter l'option -p <port> tout le temps.

1
dubsauce