Server SFTP: meglio usare il sottosistema sftp SSH interno o il plugin ProFTPD?


11

Mi è stato assegnato il compito di installare un nuovo server SFTP. Di per sé, si tratta di un'operazione molto semplice: è sufficiente utilizzare il internal-sftpruolo dell'onnipresente servizio SSH (con chrooting) per disporre di un server SFTP affidabile.

Tuttavia è nella mia natura provare sempre almeno due approcci diversi per lo stesso problema, e mi sono reso conto che posso usare ProFTPDun plug-in sftp per fare la stessa cosa, con l'ulteriore vantaggio di opzioni più granulari relative al filetransfer (ad esempio: limitazione della larghezza di banda ). D'altra parte, questo plugin non è compilato (e raggruppato) per impostazione predefinita, e vorrei evitare (forse) una soluzione "meno testata".

Al momento, l'unico servizio richiesto è SFTP; tuttavia, sto giocando in anticipo e vorrei implementare una soluzione che non può funzionare solo con SFTP, ma anche con FTP / S.

Considerando che chrooterò gli utenti all'interno delle loro case, quale ritieni sia una soluzione migliore?

  1. utilizzare SSH internal-sftpe un server FTP autonomo ( vsftpdo proftpd) per i servizi FTP / S
  2. utilizzare il servizio ProFTPD solo con il plugin pertinente

1
questo è probabilmente basato sull'opinione. Se non si utilizza internal-sftpdi sshd, probabilmente si dovrà utilizzare SFTP su diversi dalla porta deffault (se si vuole ancora sshd) che è certamente problema di usabilità.
Jakuje,

Ciao, grazie per il tuo contributo. Non sono alla ricerca di opinioni, piuttosto di un consiglio delle migliori pratiche da parte di qualcuno che ha già valutato le due opzioni descritte. Indichi che la porta TCP in ascolto è corretta, ma in questa configurazione l'utilizzo di una porta diversa per SSH non è un problema.
shodanshok,

1
Non sono sicuro che "non testato" sia un giudizio equo del mod_sftpmodulo di ProFTPD ; ci sono molti siti che infatti lo usano quotidianamente.
Castaglia,

Grazie per il commento Quindi è mod_sftppiù comunemente usato di me? Grande. Comunque, non giudicherei non mod_sftptestato, è stato per questo motivo che ho usato le virgolette. Rielaborerò quella parte della domanda.
shodanshok,

Risposte:


4

Il server sftp di SSH ha alcuni requisiti aggiuntivi per le directory chroot, ad es. l'utente non può avere accesso in scrittura alla directory chroot in alcuni ambienti, questo potrebbe essere un problema.

Se hai bisogno anche di ftp / ftps, suggerirei di provare mod_sftp. Lo stiamo usando in produzione su circa 20 server con oltre 10k account con problemi quasi nulli (sftp è il protocollo meno utilizzato). Il rovescio della medaglia potrebbe essere che non supporta il metodo di autenticazione con password, ma supporta la chiave rsa e la tastiera interattiva, quindi è solo un problema per i client molto vecchi.


20 servers with over 10k accounts- molte grazie per il tuo rapporto, è molto apprezzato. A proposito della differenza nel permesso di scrittura di casa, ci ho già lavorato;)
shodanshok,

3

Questo è un thread più vecchio, ma vorrei solo aggiungere ai futuri lettori che abbiamo configurato server per utilizzare proftpd con mod_sftp per anni senza alcun problema. Mi piace moltissimo che la separazione dei servizi offra un controllo approfondito sulla sicurezza, sul servizio stesso e sulla gestione degli utenti.

È possibile configurare proftpd per supportare una o entrambe le password / chiavi con mod_sftp se si include anche il modulo sftp_pam. Ecco un esempio di configurazione che abilita entrambi:

# Include all available modules
Include /etc/proftpd/modules.conf

<Global>
  <IfModule mod_sftp.c>
    <IfModule mod_sftp_pam.c>
      SFTPPAMEngine on
      SFTPPAMServiceName sftp
    </IfModule>

    SFTPEngine on
    SFTPLog /var/log/proftpd/sftp.log

    # Configure both the host keys
    SFTPHostKey /etc/ssh/ssh_host_rsa_key
    SFTPHostKey /etc/ssh/ssh_host_dsa_key

    SFTPAuthMethods publickey password keyboard-interactive
    SFTPAuthorizedUserKeys file:/etc/proftpd/authorized_keys/%u

    # Enable compression
    SFTPCompression delayed
  </IfModule>
</Global>
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.