Come posso creare utenti con accesso FTP remoto solo su server Linux?


11

Sto eseguendo un server Ubuntu 10.04 LTS e voglio creare utenti che possono accedere al server solo da FTP.

Quello che ho fatto finora è:

  • Installare vsftpd
  • Crea un nuovo utente con la shell di accesso predefinita impostata su /bin/false

Gli utenti normali sul server sono tutti in grado di accedere alla loro cartella principale tramite ftp, ma gli utenti a cui viene rimosso l'accesso remoto alla shell impostandolo su /bin/falsenon sono in grado di effettuare l'accesso tramite ftp.

Non capisco come l'accesso alla shell influisca sul vsftpdserver? Come potrei abilitare l'accesso ftp senza riattivare la shell?

Aggiornamento:
ho trovato questo riferimento che afferma che dovrei usare /sbin/nologin(sembra essere /usr/sbin/nologinin Ubuntu) e che non dovrebbe influenzare l'accesso ftp ma non funziona nel mio caso.


Potrebbe essere provare a impostare su / bin / true
balki il

Non ho mai usato vsftpd ma ho trovato una soluzione che fa ciò di cui hai bisogno. Non so se sia la soluzione migliore (penso che dovrebbe funzionare, ma forse c'è qualcosa di meglio).
pbm,

Ho appena provato / bin / true e non funziona.
jmbouffard,

Grazie @pbm ma non è esattamente quello che sto cercando perché preferirei usare utenti reali.
jmbouffard,

Risposte:


12

Non so se è buona norma rispondere alla mia domanda, ma ho trovato una soluzione semplice che abilita l'accesso ftp.

Avevo bisogno di aggiungere la linea

/ Usr / sbin / nologin

al file / etc / shells. Subito dopo questa modifica il server ftp ha iniziato ad accettare l'accesso dagli utenti per i quali è impostata la shell / usr / sbin / nologin. Quindi non possono accedere tramite ssh ma funziona con ftp esattamente come volevo.

Grazie per i tuoi utili commenti.


Ho letto qualche giorno fa che questo apre vulnerabilità di sicurezza. Qualsiasi esperto là fuori che può chiarire questo per me.
Navneil,

0

Set utenti guscio posteriore a /bin/false(o qualche altro shell non valido) quindi impostare /bin/falsein /etc/shells.

Vedo un grave problema di sicurezza con l'impostazione /usr/sbin/nologinin /etc/shells. Stai dando accesso FTP (e forse altro) a tutti i demoni e accessi che hanno /usr/sbin/nologincome shell.


1
Come esattamente? nologin esiste per consentire, beh, nologin - con un messaggio personalizzato opzionale in /etc/nologin.txtmodo che l'utente ftp possa sapere che è solo ftp o qualcosa del genere.
Dani_l

vsftpd è quello che protegge da accessi non autorizzati avendo i propri elenchi di accesso.
Dani_l
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.