L'installazione openssh-server
ti consentirebbe di accedere in modo sicuro all'intera unità su Internet o dai dispositivi di casa tua, a condizione che supportino sFTP. In caso contrario, per qualsiasi motivo, una condivisione Samba potrebbe integrarla come indicato in un'altra risposta. Ecco come ho impostato il mio:
Installa OpenSSH Server :apt-get install openssh-server
Apri la porta 22 : ci sono molti modi per farlo, io uso gufw
(potresti aver bisogno di installarlo, non sono sicuro che sia predefinito). Se vuoi aprirlo a Internet in un secondo momento, dovrai inoltrare la porta 22 al server dal tuo router. Normalmente è possibile farlo tramite un'interfaccia Web sul router. Se possibile, assegnare anche al server un indirizzo IP statico (ovvero disattivare il DHCP per il server).
Modifica le impostazioni di configurazione ssh : esegui il backup e apri il file /etc/ssh/sshd_config
e modifica / aggiungi le impostazioni
PermitRootLogin no
AllowUsers guarav_java other_user_if_necessary
Per la massima sicurezza, è possibile impostare accessi basati su chiave come dettagliato qui https://help.ubuntu.com/community/SSH/OpenSSH/Keys , ma sarebbe sufficiente se si imposta una password davvero sicura e la si salva su ogni macchina client.
Potresti creare un utente per ogni persona che si connette. Se lo fai, puoi aggiungerli tutti allo stesso gruppo (ssh_users, diciamo) e consentire a tutti i membri di quel gruppo di connettersi usando AllowGroups ssh_users
. (Per ulteriori informazioni, consultare http://knowledgelayer.softlayer.com/learning/how-do-i-permit-specific-users-ssh-access )
Verifica che le impostazioni siano valide : puoi verificare se hai commesso un errore di sintassi nel file di configurazionesshd –t
Connetti dal server a se stesso : a questo punto dovresti essere in grado di connetterti alla macchina da se stesso in un terminale ssh localhost
(supponendo che tu lo abbia già openssh-client
). Quindi provare da un'altra macchina sulla rete, ssh <ip-address>
.
Se l'ip del server è statico sulla tua rete domestica, puoi aggiungere una voce /etc/hosts
su un computer Ubuntu che si connette ad esso con la linea
server_ip_address theserver
Ciò significa che puoi connetterti semplicemente ssh theserver
o come lo hai chiamato. Puoi fare lo stesso per Windows (vedi qui: http://helpdeskgeek.com/windows-7/windows-7-hosts-file/ )
Connessione tramite sFTP : se è possibile connettersi al server da un altro computer della rete domestica in un terminale, è possibile connettersi ad esso tramite sFTP e sfogliare e trasferire i file in modo sicuro. Personalmente, ho impostato una scorciatoia da tastiera in modo da poter montare / smontare il mio server con i comandi da tastiera (su Ubuntu):
gvfs-mount sftp://user@ipaddress
gvfs-mount -u sftp://user@ipaddress
(La -u
bandiera è il comando umount)
Inserisci quelli nella casella "Comando:" di Impostazioni di sistema> Tastiera> Scorciatoie> Scorciatoie personalizzate> + (Nuova scorciatoia), assegnagli un nome, fai clic su Applica, quindi fai clic sulla colonna a destra e inserisci una combinazione di tasti ( CTRL+SHFT++
e CTRL+SHFT+-
rispettivamente sembra logico) .
È possibile sostituire l'indirizzo IP con ciò che è dentro /etc/hosts
. Questo monterà il server come unità in Nautilus e potrai sfogliare le cartelle proprio come quelle sul tuo computer locale. In Windows, è possibile connettersi utilizzando il software FTP (Filezilla ecc.). Non l'ho provato, ma sono sicuro che probabilmente c'è anche l'integrazione sFTP in Windows Explorer.
Un altro vantaggio degli accessi basati su chiave a questo punto è che non ti viene richiesta una password ogni volta che ti connetti (a meno che tu non ne imposti uno per proteggere la chiave). Potresti esaminarlo dopo averlo fatto funzionare con gli accessi con password (e prima di aprirlo all'esterno).
Connessione dall'esterno : il passaggio finale sarebbe vedere se riesci a connetterti da Internet, cioè dalla porta accanto o altro. Se non hai un indirizzo IP statico per la tua casa, potrebbe essere difficile tenere il passo con il tuo indirizzo IP. Uso personalmente un servizio DNS dinamico ( http://afraid.org/ è gratuito), ma potresti trovare un'altra soluzione migliore. Quindi sostituirai l'indirizzo ip nei comandi di mount sopra con l'indirizzo web dinamico che punta alla tua rete domestica.
Un ultimo suggerimento sulla sicurezza, tieni d'occhio il tuo registro SSH se cerchi questo ( /var/log/auth.log
), solo per assicurarti che non stia succedendo nulla di spiacevole. Se lo trovi, Fail2Ban è una soluzione ( http://www.fail2ban.org/wiki/index.php/Main_Page e https://help.ubuntu.com/community/Fail2ban ). Per ridurre al minimo il rischio, è possibile modificare la porta che SSHD ascolta su qualcosa di non standard come 500 e modificare le corrispondenti regole di port forwarding sul router e sul firewall del server (Perché: /server/189282 / why-change-default-ssh-port ) anche se non l'ho testato personalmente con gvfs-mount
.