Salve a tutti,
ho da poco configurato un server ftp su ubuntu server ed ho abilitato anche il protocollo ssl/tls.
Ho la necessità di vincolare un account ftp alla propria cartella e per questo motivo ho utilizzato il chroot_local impostandolo su YES.
Il server ftp si collega correttamente però non appena un utente ftp prova ad accedere tramite un client, viene stampato il seguente errore
Errore: Errore GnuTLS -15 in gnutls_record_recv: An unexpected TLS packet was received.
Errore: Impossibile leggere dal socket: ECONNABORTED - Connessione interrotta
Errore: Impossibile collegarsi al server
Qualcuno saprebbe spiegarmi come risolvere il problema o cosa lo causa? Grazie a tutti
Edit: mi sono accorto dopo vari tentativi e sperimenti che il problema, quando viene abilitato il chroot_local_user, è che il permesso di scrittura della home directory (dell'utente ftp) non può essere concesso. Se venisse dato, allora si riscontrerebbero gli errori riportati in alto. Per risolvere questo problema, oltre al chroot_local_user, bisogna inserire la seguente configurazione nel file vsftpd.conf
allow_writeable_chroot=YES
In questo modo, si da il permesso all'utente di scrivere nella propria home directory con il chroot abilitato.
Per maggiori dettagli, la soluzione è spiegata in questo post viewtopic.php?t=630056
Grazie per le risposte ed il supporto.
[Risolto]chroot server ftp
-
- Prode Principiante
- Messaggi: 11
- Iscrizione: domenica 20 dicembre 2020, 13:00
- Desktop: Gnome
- Distribuzione: 20.10
- Sesso: Maschile
[Risolto]chroot server ftp
Ultima modifica di xAstyle il mercoledì 8 settembre 2021, 20:03, modificato 2 volte in totale.
- DoctorStrange
- Imperturbabile Insigne
- Messaggi: 2867
- Iscrizione: mercoledì 14 ottobre 2015, 9:33
- Desktop: Gnome3
- Distribuzione: Ubuntu 22.04 LTS Jammy Jellyfish
- Sesso: Maschile
- Località: Roma, Italia
Re: chroot server ftp
Il chroot è una speciale directory all'interno del proprio sistema operativo, nella quale si "crea" una specie di sandbox, per confinare in un posto sicuro applicazioni sospette.
Non capisco per quale motivo tu abbia cercato di abilitare il chroot su un server ftp.
Se vuoi fare in modo che le utenze autorizzate a connettersi al tuo server tramite ftp, non possano uscire da una specifica directory, ti basterà creare una (o piu) utenze sul sistema operativo, specificanto "/sbin/nologin" tra gli attributi al momento della creazione dell'utenza stessa, in modo che questa non possa loggarsi sul sistema, e poi assegnare a questa utenza accesso completo alla sola directory FTP condivisa alla quale possa accedere.
In questo modo, quell'utenza potrà acedere a quell'unica sua directory e, anche quando sarai connesso da remoto non potrai andare oltre quell'unica directory.
Non capisco per quale motivo tu abbia cercato di abilitare il chroot su un server ftp.
Se vuoi fare in modo che le utenze autorizzate a connettersi al tuo server tramite ftp, non possano uscire da una specifica directory, ti basterà creare una (o piu) utenze sul sistema operativo, specificanto "/sbin/nologin" tra gli attributi al momento della creazione dell'utenza stessa, in modo che questa non possa loggarsi sul sistema, e poi assegnare a questa utenza accesso completo alla sola directory FTP condivisa alla quale possa accedere.
In questo modo, quell'utenza potrà acedere a quell'unica sua directory e, anche quando sarai connesso da remoto non potrai andare oltre quell'unica directory.
-
- Prode Principiante
- Messaggi: 11
- Iscrizione: domenica 20 dicembre 2020, 13:00
- Desktop: Gnome
- Distribuzione: 20.10
- Sesso: Maschile
Re: chroot server ftp
Per mia ignoranza in quest'ambito ho cercato in rete ed avevo trovato alcuni post che facevano uso del chroot_local_user per vincolare gli utenti alla propria home directory. Visto e considerato che è un procedimento sbagliato ed in rete non ho trovato altro, potresti darmi le direttive per vincolare un utente alla propria home directory quando si collega tramite server ftp?DoctorStrange ha scritto: ↑mercoledì 8 settembre 2021, 9:58Il chroot è una speciale directory all'interno del proprio sistema operativo, nella quale si "crea" una specie di sandbox, per confinare in un posto sicuro applicazioni sospette.
Non capisco per quale motivo tu abbia cercato di abilitare il chroot su un server ftp.
Se vuoi fare in modo che le utenze autorizzate a connettersi al tuo server tramite ftp, non possano uscire da una specifica directory, ti basterà creare una (o piu) utenze sul sistema operativo, specificanto "/sbin/nologin" tra gli attributi al momento della creazione dell'utenza stessa, in modo che questa non possa loggarsi sul sistema, e poi assegnare a questa utenza accesso completo alla sola directory FTP condivisa alla quale possa accedere.
In questo modo, quell'utenza potrà acedere a quell'unica sua directory e, anche quando sarai connesso da remoto non potrai andare oltre quell'unica directory.
- DoctorStrange
- Imperturbabile Insigne
- Messaggi: 2867
- Iscrizione: mercoledì 14 ottobre 2015, 9:33
- Desktop: Gnome3
- Distribuzione: Ubuntu 22.04 LTS Jammy Jellyfish
- Sesso: Maschile
- Località: Roma, Italia
Re: chroot server ftp
Ti basterà creare un nuovo utente "fittizio" nel tuo sistema operativo. Usando il comando
creerai un nuovo utente, il cui nome è <nomeUtenteFTP> e la cui home directory è /path/assoluto/alla/directory/ftp/condivisa . Logicamente questi due parametri li dovrai cambiare in funzione delle tue scelte e del tuo sistema.
Questo utente inoltre non sarà in grado di fare login sul sistema operativo, questo vuol dire che non potrà fare alcuna operazione sul sistema.
A questo punto, imposterai la directory FTP condivisa in modo che l'utente FTP appena creato possa accedere in lettura e scrittura a questa directory:
A questo punto devi configurare il server FTP vero e proprio. Questa parte non la conosco molto bene. C'è qui sul forum questa guida: viewtopic.php?f=28&t=609698 fatta benissimo dall'utente thece.
Saluti
Codice: Seleziona tutto
sudo adduser --disabled-login --home /path/assoluto/alla/directory/ftp/condivisa --firstuid 1000 <nomeUtenteFTP>
Questo utente inoltre non sarà in grado di fare login sul sistema operativo, questo vuol dire che non potrà fare alcuna operazione sul sistema.
A questo punto, imposterai la directory FTP condivisa in modo che l'utente FTP appena creato possa accedere in lettura e scrittura a questa directory:
Codice: Seleziona tutto
sudo chown -R nomeUtenteFTP /path/assoluto/alla/directory/ftp/condivisa && sudo chgrp -R nomeUtenteFTP /path/assoluto/alla/directory/ftp/condivisa && sudo chmod -R 0664 /path/assoluto/alla/directory/ftp/condivisa
Saluti
Chi c’è in linea
Visualizzano questa sezione: 0 utenti iscritti e 8 ospiti