Tuto pour les nuls pour : serveur débian ovh : clé

nb : les phases précédentes seront affiché quand j’aurai terminé tout le tuto. Car il me faudra créer un nouveau topic avec des posts successifs.

[size=150][TUTO] - Configurer de la connexion[/size]
Créé le 10 Avril 2012.
Auteur : Association an16 (http://www.an16.org)

But de la phase 2
N’importe quelle serveur contient un accès dit root. C’est à dire un accès à la gestion du serveur. Vous devez protéger cet accès comme vous protégez l’entrée de votre maison. Plus même. Pour ce faire vous allez concevoir un stratagème :

  • Condamner la porte d’entrée (root) que personne ne puisse l’utiliser, même pas vous.
  • Créer une nouvelle porte secrète (le user), que personne ne connais sauf vous.
  • Créer un clé pour cette porte, vous serez le seul à la posséder.
    Cette porte donne accès à une partie privative du serveur, sans aucun droit de configurer ce dernier. Toutefois dans cette partie privative il y a aussi une porte verrouillée, identique à la porte d’entrée, menant à la configuration du serveur. Et devant la porte un gardien prêt à vous jeter dehors si vous ne donnez pas le bon mot de passe. Il est gentil, il vous laisse 5 tentatives. Après quoi dès qu’il vous verra, il vous jettera dehors sans vous poser de question.
  • Donnez le mot de passe.
  • Changer le mot de passe.

Ainsi pour se connecter à votre serveur il faudra connaitre le nom du locataire qui détient le mot de passe. Parvenir à crocheter sa serrure ou lui voler sa clé. Trouver son mot de passe sans se tromper.

Version moins imagées, pour se connecter il faut être un user muni d’une clé d’autorisation valide sur le serveur, puis avoir le mot de passe root qui été personnalisé.

[size=150]Phase 2.1 :
Sécurisation par mot de pass.
[/size]

Personnaliser son mot de passe root (root = admin serveur)
(La plus compliqué possible genre $'M)2/"9?>aK)

Créer un utilisateur (hors root, utilisateur de base)
(les caractères alphabétique du nom doivent tous être en minuscule)

Modifier et personaliser le port ssh du serveur

(Cherche et modifier)

[quote] # Package generated configuration file
# See the sshd_config(5) manpage for details

# What ports, IPs and protocols we listen for	

Port [b]3546 [/b]# (max 65000) <----[/quote]

Interdire la permission de connexion de la part d’ovh
(Attention vous ne pourrez plus demander d’infogérance), cela augmente la sécurité mais abaisse l’aide à distance. NE le faites pas ou revenez à la valeur d’origine si vous souhaitez une aide de la part d’ovh.
(Cherche et modifier dans le même fichier)

[quote] LoginGraceTime 120
PermitRootLogin no # <----[/quote]

Sortez de nano
Sauver : Ctrl+O : Confirmer
Sortir : Ctrl+X

[size=150]Phase 2.2 :
Sécuriser l’accès au dossier .ssh[/size]

Le chmod permet de définir de manière générale qui peut ou ne peut accéder à un dossier, ou un fichier et ce qu’il peut y faire.
R = read (lire)
W = write (écrite)
X = execute (exécuter)
Ces trois modes peuvent être définit pour l’utilisateur en cours, un groupe d’utilisateur, le serveur (admin).

dirigez vous dans le dossier ssh
Toujours sous putty, en session admin (root)

Accès aux fichier uniquement par le serveur (session admin) en RW
(un lien qui permet de calculer une chmod : http://www.pascalex.net/static.php?op=chmod.txt&npds=1)

Accès aux dossier uniquement par le serveur (session admin) en RWX

[size=150]Phase 2.3 :
Créer une clé sécurisé[/size]

(comme une vraie clé pour ouvrir une porte, mais numérique)

Vérifier les clé déjà présentes

Si vous devez être le seul à avoir accès au serveur le contenu doit être vide. S’il ne l’est pas c’est une personne c’est autorisé un accès au serveur. Vous pouvez supprimer une ligne entière avec ctrl+k. Si vous laissez des lignes déjà présentes noté la quantité de ligne sur une pense-bête.

Fermez le fichier
Ctrl+x

Laissez putty ouvert

AVEC PUTTYGEN

Créer votre clé

Issue du tutoriel suivi :
http://notes.mazenod.fr/connexion-avec-cles-ssh-avec-putty-et-puttygen.html

Que je résumé ici :

  • Lancer puttygen
  • Sélection le mode SSH-2 DSA pour une plus grande sécurité.
  • Cliquer générate
  • Bouger la souris dans l’espace blanc de puttygen jusqu’à compléter la barre bleu de progression.
  • Sélectionnez le texte de clé intégralement, il fait plusieurs lignes
  • Clic droit -> copier
  • Cliquez save pubic key -> sauvez dans le dossier contenant putty.exe
  • Cliquez save private key -> sauvez dans le dossier contenant putty.exe
    Are you sure you want to save this key without a passphrase to protect it ?
    Cliquez oui
  • Ne perdez jamais ces deux fichiers.

Laissez puttygen ouvert, sait on jamais…

[size=150]Phase 2.4 :
Coller la clé sécurisé[/size]

AVEC PUTTY

[i]Si vous avez fermé putty, revenez au fichier de clé.
Comme déjà vu plus haut :

  • Connectez vous avec votre user déjà créé.
  • Ouvrez une session admin su root[/i]

Collez y la clé que vous venez de copié
IMPERATIF : une seule clé par ligne

  • clic droit (ou) Ctrl+insert

Sauvez
Ctrl+O (pas 0 mais O)

Sortez du fichier
Ctrl+X

Quittez putty proprement
Tapez exit puis validez, deux fois.
Une fois pour quitter la session admin.
Une fois pour quitter la session user.

[size=150]Phase 2.5 :
Paramétrer Putty pour votre clé[/size]

Relancez putty

Paramétrer une connexion par clé sur putty
Dans le menu de gauche se trouve la navigation de la configuration

Connection -> SSH -> Auth :
cliquez sur [b]browse /b et sélectionnez votre fichier privé client_id_dsa.ppk

Connection -> Data :
Notez votre_nom_userdans Auto-login username.

window -> translation
selectionnez UTF-8 pour remote character set.

Session

  • host-name : adresse ip du serveur.
  • Port : [p]22[/b] (à moins que vous ayez déjà relancé le service ssh, auquel cas il sera celui que vous avez personnalisé.)
  • Donner un nom à la session.
  • Cliquer save

[size=150]Phase 2.6 :
Vérifications [/size]

Vérification du user

  • Quitter putty
  • Relancer putty sans utiliser la clé.
    c’est à dire avec uniquement l’ip du serveur et le port
  • Loggin : votre_nom_user
  • password : votre_pass_user
  • password : votre_pass_root

Si tout c’est bien passé c’est que votre utilisateur est bien enregistré.

Le serveur accepte-il une connexion par clé ?

Cherchez :

La valeur doit être “yes”

Vérification de la clé

  • Fermer Putty
  • Relancer Putty
  • Sélectionner votre session enregistré avec la clé.
  • Cliquer open

Si tout a été bien réalisé vous devriez être immédiatement connecté.
Le serveur devrait répondre quelque chose comme ceci :

Aucun mot de passe ne vous ai demandé pour cet accès et vous pouvez travaillé sous putty dans votre partie privative.

Tenter une connexion root :

mot de pass root

Vous devriez avoir un accès total au serveur.

[quote]votre_nom_user@vks10108:~$ su root
Password:
root@vks10108:/home/votre_nom_user# [/quote]

Si ce n’est pas le cas, vous avez un problème soit avec la clé soit avec la configuration de putty. Reprenez le chapitre 5.

[size=150]Phase 2.7 :
Verrouillage des accès direct à root.[/size]

Sous putty, avec votre connexion par clé, suivi de [quote]su root[/quote].

Relancer nano

Interdire toute connexion non authentifié par mot de passe.
(Chercher et modifier dans le même fichier)

[quote] # Change to no to disable tunnelled clear text passwords
PasswordAuthentication no # <---- [/quote]

[size=150]Phase 2.8 :
Valider et vérifier le verrouillage [/size]

Relancer pour appliquer

Vérifier la sécurité
Tentez les connexion suivantes :

  • En root sans clé
  • En user sans clé
    Aucun des deux ne doit donner accès au serveur.

Puis :

  • En user avec sa clé clé
  • Ouvrir une session root depuis le user
    Ceci doit fonctionner

Information de netstat
(si vous ne comprenez le résultats de ce test, postez un message avec votre propre résultat.)


SUITE :

Comment interpréter les résultats de netstat ?
Autre chose à relancer ?
Autres vérification à faire à ce moment précis ?

A première vue c’est bon.
Il manque quand même le parefeu… :wink:

isalo.org/wiki.debian-fr/ind … troduction

Avec ça t’es couvert! :wink:

oui je sais, je fais pas à pas.
Et je corrige encore quelques petits oublies, genre la 1ere connexion root lol

Mais je pense que j’ai un souci ici :

sous cygwin
ssh-keygen -t dsa

sous putty
Envoyer alors la clé sur le serveur.

ssh-copy-id -i ~/.ssh/id_dsa.pub "mon_nom_user@37.59.125.3 -p 3546"

Le chemin ne va pas être bon car ca va pas chercher sous cgywin. je tente de trouver sans me bloquer.

Si je me plante faut encore que je réinstall…

Re,
Là je ne peux pas te dire, je ne travaille pas sur mes serveurs à partir de Windows… Alors Cygwin, putty ou autre…
Tu ne peux pas te faire un dual boot pour avoir une Debian sous la main localement (de plus ça t’évitera de planter ton OVH avec des essais…)

Personnellement, je ne désactiverais l’authentification par mot de passe dans SSH qu’après avoir vérifié que l’authentification par clé fonctionne.

[quote=“lol”]Re,
Là je ne peux pas te dire, je ne travaille pas sur mes serveurs à partir de Windows… Alors Cygwin, putty ou autre…
Tu ne peux pas te faire un dual boot pour avoir une Debian sous la main localement (de plus ça t’évitera de planter ton OVH avec des essais…)[/quote]

Je lui recommande (comme à vous tous) l’utilisation de machine virtuelle.

VMWARE serveur est gratuit et permet à un débutant d’installer des machines virtuelles (sous Linux, xBSD, Windows) en un rien de temps et tout ça gratuitement. Pour mes adeptes di libre, il existe Virtualbox qui est très bien lui aussi (et très simple d’utilisation).

De plus, cela permet de tester et valider des procédures et de revenir en arrière d’un simple clic grâce à l’utilisation des snapshots. On applique ainsi sur son “vrai” serveur des commandes déjà testées par nos soins.

[quote]En cas de plantage
Vous pouvez demander une réinstallation depuis votre compte ovh ou kimsufi selon le cas. ovh.com/managerv3/ par exemple.
Attention : Votre port ssh sera de nouveau par défaut à 22.[/quote]

NON NON et NON, ici lorsque un PC plante et que l’on a le matériel physique sous la main on dépanne soit par un système live soit par la console, et lorsque la machine est distante on demande un KVM.

Stop une bonne fois pour toute on ne “RAZ” pas une machine dès que l’on sait plus trop quoi faire.

[quote]0 / Installation des outils personnels sur la machine utilisateur

Télécharger (ici version windows):
putty.exe
CGWebInstall-fr.exe (Cygwin)[/quote]

Personnellement mais j’avoue c’est très personnel, j’ai un penchant pour Cygwin lorsque j’ai besoin de véritablement passé du temps sur une machine, Putty seulement pour la communication serial ou la simple vérification SSH.
Mais si je navigue sur plein de serveur, que je fais du ssh, du sftp ou autre j’utilise un tunnelier éprouvé … Bitevise tunnelier : putty.org/.

nano est déjà installé de base, sinon vi et vim sont très bien aussi ( vi étant aussi installé de base ), il y a aussi Ed.

[quote]Interdire la permition de connection de la part d’ovh
(Attention vous ne pourrez plus demande d’infogérance)
(Cherche et modifier dans le même fichier)
Citation:

LoginGraceTime 120 PermitRootLogin no # <----[/quote]

Quel est l’intérêt de leur interdire l’accès à ta machine ? tu saura te libérer et utilisé un KVM ?
Si oui effectivement le simple fais de déplacer le port SSH vers autre chose que le 22 t’assure que OVH ne perdront pas de temps à retrouver ton ports SSH :005

[quote]Créer votre clé (comme une vraie clé pour ouvrir une porte, mais numérique)
(A l’aide de Cygwin si vous êtes sous windows)
(laisser les informations par défaut à savoir le répertoire caché dans le /home: ~/.ssh)
(SAUVER LA CLE SUR DVD, HD ET USB !! elle se trouve sous C:\cygwin\home\votre_user_windows.ssh)[/quote]

Une clé stocker sous Windows et une sur une clé USB me paraît déjà rassurant mais plus tu l’éparpille plus ta de chance de t’emmerder à devoir les changer en cas de compromission ainsi que de les perdes physiquement.

  • EDIT -
    La première chose à faire serait de mettre en place un bon friewall ( je t’ai dit que sur notre wiki et dans la rubriques trucs et astuces tu trouvera ton bonheur ), ensuite tu rajoute “fail to ban” pour protéger un peu plus ta machine, pour portsentry je suis pas utilisateur donc bon …

Ensuite si tu utilise du serveur web comme apache2 c’est de gros morceaux de MODrewrite, MODevasive, etc …

Pour le FTP mettre en place un chroot correct et travaillé avec de l’enregistrement d’utilisateur virtuelle et physique selon les besoins.

En bref t’a du boulot ==> c’est pourquoi que je te disais dans un autre fil que 2 mois c’est juste d’après moi :confused:

lol et secuip
N’oubliez pas que j’ai dis noob.
Une machine virtuelle va demande un apprentissage supplémentaire d’unix.
Putty simplifie la démarche.
Mais je pense comprendre que tu veux dire un serveur virtuel chez moi pour remplacer celui d’ovh. Je ne sais pas comment ça marché coté serveur mais je sais que coté programmation web, j’ai été obligé de le faire sans serveur d’évaluation car il yh a toujours des différences, même des détails qui font que j’ai due tout revoir en distant réel. Donc j’ai arrête définitivement le genre émulation/évalution.

Si c’est pour apprendre des truc qui peut être n’iront plus une fois sur le serveur ovh, autant ne pas m’embrouiller avec.

Si tout le monde m’assure que ce sera 100% identique (et pas 99%) alors je veux bien essayer. Mais déjà réseau local vs réseau internet j’ai des doutes.

PascalHambourg
J’acquisse sans broncher.
Y-a-t-il moyen avec putty ou au pire Cygwin de vérifier sa clé avant de verrouiller l’accès ?

Clochette
Je vais précise "si vous ne pouvez plus rein faire"
Perso je pense que ma clé a pas marché alors que j’ai verrouillé du coup impossible de se connecter. Et donc de faire quoi que ce soit.

Si c’est juste pour réussir une installation, je ne comprend pas en quoi cgywin est mieux que putty. Surtout que j’arrive pas a utiliser cgywin alors que putty c’est facile. Je vais re-essaye de comrpendre.

C’est juste que c’était dans le tuto de Soroje.
Il conseil de tout faire même et de ne laisser aucune faille potentielle.

Pour la clé, je vais modifier, mais c’est un détail, il faut juste la sauvé précieusement.

Pour le temps à consacré au serveur il y a des trucs que je ne comprend pas.
Si je prend un serveur chez nuxit en virtuel (que j’ai actuellement) C’est monté très vite. Comment se fait il qu’il me faille plus de 2 mois pour configurer un truc qui semble être commun. Il n’existe aucune base pré-construite ? Le tuto que je fais tout comme n’importe quelle de vos installations peuvent convenir à plein de serveurs, seul certaines valeur présentes et précises sont change pour la majorité des cas. Il n’existe pour tant rien d’automatisé dans cet univers informatique qui en regorge. Et encore une fois certain serveurs sont monté en quelques minutes par les services d’hébergeur. D’où mon incompréhension.

Au pire que ce passera-t-il si je ne fais presque aucune configuration et que je balance les services de base, rapidement, histoire que mon forum et mes mail fonctionne sans chercher plus loin ?

Bonne journée

Je ne suis pas sûr de comprendre la question. Il suffit d’essayer de se connecter en utilisant la clé et de voir si l’authentification réussit.

Quel est la différence dans la connexion avec et sans clé.
En général je tape mon username puis mon pass, puis su root, puis le poss admin.

Avec une clé est-ce différent ?
Bonne journée

L’authentification par clé ne nécessite pas d’entrer le mot de passe de l’utilisateur. A la place, on entre la “passphrase” de la clé privée si celle-ci est chiffrée.

Ca doit venir de là mon plantage.
J’ai pas due la configurer comme il faut.
Je vais chercher plus d’info la dessus.
On voit visiblement un oubli à ce sujet dans mon tuto :frowning:
Merci beaucoup

Salut,
Sur le Wiki il y a ce qu’il faut: Utilisation de clefs et raccourcis ssh

Salut,

Dès que ton tuto sera sur le wiki je me ferais un plaisir d’intervenir :slightly_smiling:

[quote=“ggoodluck47”]Salut,

Dès que ton tuto sera sur le wiki je me ferais un plaisir d’intervenir :slightly_smiling:[/quote]

C’est vrai que la page d’introduction à smxi/sgfxi sur le wiki est… lacuanire :wink:

Salut,

[quote=“lol”][quote=“ggoodluck47”]Salut,

Dès que ton tuto sera sur le wiki je me ferais un plaisir d’intervenir :slightly_smiling:[/quote]

C’est vrai que la page d’introduction à smxi/sgfxi sur le wiki est… lacuanire :wink:[/quote]

Expliques, je ne vois pas le rapport :slightly_smiling:

Il n’y en a pas, je me suis planté de sujet… :laughing: :033

Quand je vous dis que pour les novice c’est pas clair … du tout

[quote=“lol”]Salut,
Sur le Wiki il y a ce qu’il faut: Utilisation de clefs et raccourcis ssh[/quote]

Je supposerai que ‘labas’ désigne l’ip du serveur ?
Ce qui veut dire que je crée la clé sur le serveur ?
A moins que labas désigne un emplacement local sur mon pc ?


[quote]Host labas
HostName nomtreslong.lichtenstein.loin
User bouvardetpecuchet.flaubert
PasswordAuthentication no
IdentityFile ~/.ssh/labas[/quote]

labas = ipserveur ?
Hostname = le nom du serveur fournis par ovh (vks10509.ip-37-59-125.eu)
User = le user que l’on a créé juste avant
IdentityFile le chemin vers le fichier créé ?

Bonne journée

Salut,
La clef est crée localement dans le dossier /home/ton-nom/.ssh (ou ~/.ssh c’est pareil)

Le chemin:~/.ssh/
Le nom des clefs:labas

[quote]labas = ipserveur ?[/quote] Non, c’est le nom que tu donne à ta connexion (tu choisi ce que tu veux)

[quote]Hostname = le nom du serveur fournis par ovh (vks10509.ip-37-59-125.eu)[/quote] Oui, IP ou nom du serveur (si la résolution fonctionne convenablement)

[quote]IdentityFile le chemin vers le fichier créé ?[/quote]Oui: /home/ton-nom/.ssh/labas (chemin vers la clef privée)

Ok je vais essayé.
Nouvelle question

sur : $ ssh-keygen -t dsa -f ~/.ssh/mot_peu_importe
On me demande un pass phrase.
Je peux laisser vide ?
Je dois laisser vide ?
Je dois donner un passphrase quelconque ? genre “toto” ?

Merci :slightly_smiling: