Archives par mot-clé : ssh

Utiliser votre ordinateur portable comme deuxième écran avec synergy et ssh sous ubuntu lucid

Pas de place pour un double écran mais vous avez votre portable sur votre bureau ? Autant l’utiliser, non ?

Beaucoup de solutions sont possibles mais j’ai choisi de partager la souris et le clavier par le réseau grâce à synergy (http://synergy-foss.org) et de lancer les programmes par ssh (http://www.openssh.com) avec la redirection X. Cela limite plusieurs comportements par rapport à un vrai deuxième écran (pas de passage d’une fenêtre d’un écran à l’autre par exemple) mais cette solution convient parfaitement à mon besoin et surtout elle est très simple à mettre en œuvre.

Synergy

Vous pouvez utiliser les paquets synergy et quicksynergy (configuration graphique) sur le serveur (la machine qui va partager sa souris, son clavier et son presse-papiers) et synergy sur le ou les clients (machines qui vont afficher les entrées serveur).

Serveur

Sur le serveur, lancer quicksynergy (Accessoires -> QuickSynergy), entrez le nom de la machine client à l’emplacement que vous voulez. Par exemple pour moi le portable est pile sous l’écran du fixe donc dans l’interface de quicksynergy je rentre le nom du portable dans le champ sous la petite maison qui représente le serveur. Puis cliquez sur Execute.

Client

Sur le client, je préfère lancer synergy à la demande dans un terminal, je peux surveiller les logs et je ne le laisse pas tourner hors de mon réseau local (cf. http://synergy-foss.org/pm/projects/synergy/wiki/UserFAQ#Q-How-secure-is-your-application).

synergy -f 192.168.0.1

-f : pour ne pas passer l’application en daemon
192.168.0.1 : adresse du serveur

SSH

Pour la partie serveur, il vous faut le paquet openssh-server et sur le client openssh-client. C’est trop bien fait.

Serveur

La configuration par défaut suffit.

Client

Là aussi, je préfère lancer à la main le lien SSH pour vérifier les messages, etc.

ssh -X 192.168.0.1

-X : ouverture des programmes sur le serveur mais affichage graphique sur le client
192.168.0.1 : adresse du serveur

Nota

  • Il est possible de configurer un tunnel SSH pour augmenter la sécurité mais l’utilisation est souvent en réseau local @Home.
  • Si le serveur est un nomade également, il faut absolument sécuriser la partie SSH (limitation des IPs de connections, des comptes autorisés, etc.).

Sauvegarde avec rsync dans un container Truecrypt distant monté par ssh avec sshfs

Le but de ce tutoriel est de monter une sauvegarde distante sur un PC ami qui héberge nos données. Les données hébergées sont chiffrées dans un container Truecrypt. Ce container est visible en local grâce à l’accès à distance par sshfs (système de fichier monté par ssh).

Liens

Chiffrement

Synchronisation

Divers

Situation

Voilà comment je range mes données :

  • /donnee/agile : donnée qui change souvent (programmation, certaines conférence, etc.) et qui ne sont pas privées (je publie mon code)
  • /donnee/dormante : données qui changent très peu et n’ont pas de  caractère « trop » privées (photos, sauvegardes de jeux, etc.)
  • /donnee/jetable : données que je garde mais que je peux perdre (fond d’écran, musique, etc.)
  • /donnee/privee : données privées (suivi de budget, correspondance, généalogie, etc.)
  • /donnee/temporaire : téléchargement en cours, photos en trie, test, etc.

Prérequis

Client  (c’est nous !)

  • openssh-client
  • sshfs
  • truecrypt
  • rsync
  • (gtkrsync)

Serveur (celui qui nous héberge)

  • openssh-server

Préparation à la sauvegarde sur le client

  • créer un répertoire où sera monté le système distant par SSH :
mkdir -p /donnee/sauvegarde/ssh
  • créer un répertoire où sera monté le container TrueCrypt accessible lorsque le serveur sera monté sur /donnee/sauvegarde/ssh
mkdir -p /donnee/sauvegarde/truecrypt
  • créer un certificat particulièrement pour cet accès sans passphrase
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/rangzen/.ssh/id_rsa): /home/rangzen/.ssh/backup
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/rangzen/.ssh/backup.
Your public key has been saved in /home/rangzen/.ssh/backup.pub.
The key fingerprint is:
84:--:--:-a:-n:ic:e-:-f:in:ge:r-:pr:in:t-:--:55 rangzen@myhome

Préparation à la sauvegarde sur le serveur

  • créer un utilisateur avec un home à l’emplacement où le responsable de la machine serveur veut bien vous faire un peu de place
adduser backup-rangzen
  • restreindre l’accès ssh backup-rangzen en éditant /etc/ssh/sshd_config
AllowUsers backup-rangzen
Key Authentification
  • initialiser ssh et ajouter backup.pub dans .ssh_key_authorised
# su backup-rangzen
ssh-keygen
mv /tmp/backup.pub > ~/.ssh/authorized_keys
  • test depuis le client, vous ne devriez pas avoir à fournir de mot de passe et vous retrouver dans le home de backup-rangzen sur le serveur
$ ssh -i /home/rangzen/.ssh/backup.pub backup-rangzen@192.168.0.2

Montage de l’emplacement de sauvegarde par sshfs

  • montage par sshfs sur /donnee/sauvegarde/ssh. /donnee/sauvegarde/ssh doit contenir le home de backup-rangzen.
sshfs -o IdentityFile=/home/rangzen/.ssh/backup backup-rangzen@192.168.0.2: /donnee/sauvegarde/ssh

Préparation de l’emplacement Truecrypt

  • création du container (en gras les réponses utilisateur)
rangzen@myhome:/donnee/sauvegarde/ssh$ truecrypt --text --create
Volume type:
1) Normal
2) Hidden
Select [1]: 1

Enter volume path: backup.tc

Enter volume size (sizeK/size[M]/sizeG): 10G

Encryption algorithm:
1) AES
2) Serpent
3) Twofish
4) AES-Twofish
5) AES-Twofish-Serpent
6) Serpent-AES
7) Serpent-Twofish-AES
8) Twofish-Serpent
Select [1]:(Entrée)

Hash algorithm:
1) RIPEMD-160
2) SHA-512
3) Whirlpool
Select [1]:(Entrée)

Filesystem:
1) FAT
2) None
Select [1]: 2

Enter password:(Votre mot de passe)
Re-enter password:(Encore votre super mot de passe)

Enter keyfile path [none]:(Entrée)

Please type at least 320 randomly chosen characters and then press Enter:(Partie fait du Dance Dance Revolution avec ton clavier)

The TrueCrypt volume has been successfully created.
  • montage du container pour formatage
truecrypt --text --filesystem=none backup.tc
  • formatage en ext2 (trouver le dev dans /dev/mapper/truecryptn)
mkfs.ext2 /dev/mapper/truecrypt1

Fermer truecrypt et sshfs

truecrypt -d
fusermount -u /donnee/sauvegarde/ssh/

Procédure de sauvegarde

  • monter le système
sshfs -o allow_other,IdentityFile=/home/rangzen/.ssh/backup backup-rangzen@192.168.0.2: /donnee/sauvegarde/ssh
  • monter le container
truecrypt --text /donnee/sauvegarde/ssh/backup.tc /donnee/sauvegarde/truecrypt
  • sauvegarde
(gtk)rsync --archive --delete-excluded --compress --stats --progress --verbose --include-from=/donnee/agile/configuration/rsync/pattern /donnee/ /donnee/sauvegarde/truecrypt/
  • tout refermer
truecrypt -d
fusermount -u /donnee/sauvegarde/ssh/