Il sistema
Sto usando l'host di Windows 7 con Cygwin e una macchina virtuale con Linux. Il guest in esecuzione reale è un ISO di Arch Linux.
L'obiettivo
Voglio condividere i file tra l'host Cygwin e l'ospite Arch.
Soluzione possibile
Una buona soluzione sembra il protocollo SFTP, che usa l'host Cygwin come server, perché SSH è disponibile immediatamente in Arch ed è facile configurare un deamon SSHD in Cygwin.
Voglio ridurre la superficie di attacco esterna e idealmente solo il guest Linux virtuale dovrebbe essere in grado di loggarsi in remoto.
Vincoli / sfide
-
Il daemon Windows Cygwin SSHD viene eseguito sull'account locale che utilizzo normalmente per i miei progetti, non sarebbe pratico utilizzare una password molto lunga e complessa (poiché questa è la password reinserita ogni volta che lascio la mia scrivania).
Sarebbe bello usare una password diversa per SSH, ma penso che in questo caso dovrei creare un account diverso con una directory home utente diversa, che renderebbe difficile la condivisione dei file. -
L'IP guest viene assegnato dinamicamente dal software dell'applicazione della macchina virtuale. Pertanto è difficile limitare l'accesso degli IP remoti a SSH.
-
Ho bisogno di controllare spesso il mio progetto contro le nuove versioni di Arch Linux, quindi parto da una ISO pulita e installo i miei file di progetto tramite la condivisione SFTP. Pertanto non riesco a inserire facilmente una chiave privata sul client, poiché i file arrivano al sistema guest quando la connessione è già stabilita.
Sicurezza della soluzione
Le mie idee attuali consistono nel combinare una password alfanumerica con una restrizione delle connessioni remote allo spazio degli indirizzi privato, tramite i file di controllo di accesso host:
# /etc/hosts.allow
sshd: 192.168.0.0/255.255.255.0
# /etc/hosts.deny
sshd: ALL
Questo non è ancora soddisfacente, dal momento che un hacker in una rete Wi-Fi pubblica potrebbe forzare la password.
Se esistono modi più sicuri o più efficienti per condividere file tra computer host e guest, si prega di compilare una risposta.
Aggiornamento
Attualmente sto usando VMware Player, ma faccio anche i miei test con Virtual Box.
Cartelle condivise
Qualcuno ha suggerito l'uso di cartelle condivise. Come indicato nel sub 3, ho spesso bisogno di testare i miei progetti rispetto all'attuale ISO.
Le cartelle condivise VMware non hanno un pacchetto Arch ufficiale. Le cartelle condivise di VirtualBox hanno un pacchetto ufficiale di Arch, ma ho visto che spesso è necessario riavviare per rendere effettive le modifiche, il che è inutile nell'ambiente statico ISO.