lunedì, giugno 23, 2014

Accedere in SSH senza effettuare sempre il LOGIN

Per accedere ad una macchina tramite SSH senza dover tutte le volte digitare la password bisogna generare una chiave da posizionare nella directory utente\.ssh

- generare la chiave
[utente@linuxbox1 ~]$ ssh-keygen -b 2048 -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/utente/.ssh/id_rsa):
Created directory '/home/utente/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/utente/.ssh/id_rsa.
Your public key has been saved in /home/utente/.ssh/id_rsa.pub.
The key fingerprint is:
90:98:4f:f5:69:39:57:5d:46:83:a4:a2:d6:63:3c:25
 A questo punto dovremmo copiare la chiave pubblica sul server SSH. Questa essendo pubblica può essere letta da chiunque, senza problemi di sicurezza. Per copiarla possiamo usare anche scp, programma per la copia di SSH. Ipotizzando che il server si chiami linuxbox2 e che l’utente si chiami utente2, il comando sarà:

[utente@linuxbox1 ~]$ scp /home/utente/.ssh/id_rsa.pub utente2@linuxbox2:.

Ci verrà chiesta la password di utente2 e il file id_rsa.pub, contenente la chiave pubblica, verrà copiata nella home di utente2 su linuxbox2. A questo punto facciamo il login su linuxbox2 (ovviamente come utente2), e copiamo il contenuto del file appena copiato nel file /home/utente2/.ssh/authorized_keys:

cat /home/utente2/id_rsa.pub >> /home/utente2/.ssh/authorized_keys

A questo punto basterà provare a collegarsi dall’host linuxbox1 su linuxbox2 per connettersi a patto di inserire la passphrase scelta (per quanto sconsigliabile questa può anche non essere inserita, a patto di creare una coppia di chiavi con passphrase vuota):

ssh utente2@linuxbox2

Trasferire file da Linux a Linux

Mi trovo con la necessità di trasferire i dati da un vecchio server Linux ad uno nuovo, ho usato il comando SCP (ssh)

da ALTRO PC ad QUESTO PC
# scp -r user@ip:/dir/da/copiare .
# scp -r user@ip:/dir/da copiare /destinazione
nota: usare il punto per directory corrente e -r per directory comprese

da QUESTO PC ad ALTRO PC
# scp <miofile> user@ip:/dir/destinazione

mercoledì, giugno 04, 2014

[GNU/Linux] Montare disco di rete da shell

Per montare un disco di rete da shell, la sintassi del comando è la seguente:
mount -t protocollo //percorso_da_montare/directory /directory_destinazione -o username=user,password=pwd,sec=ntlm

Dove al posto di protocollo è necessario specificare il protocollo/file system da usare per la condivisione dei file (cifs, nfs), come avviene similmente nel caso si debba montare un disco locale (ntfs, ext2, ext3, ext4, …).

esempio da un sistema Windows:
mount -t cifs //reteazienda.it/documenti /mnt/dati_condivisi -o username=matteo,password=12345678,sec=ntlm

OpenVPN server - installazione su Windows 10

SERVER