Editing remoto sicuro di file accessibili tramite root su SSH


8

Secondo le migliori pratiche di sicurezza, non si dovrebbe consentire l'accesso root su SSH con password o chiavi. Invece, sudo dovrebbe essere usato.

Tuttavia, se si desidera utilizzare SSH (SFTP) per la modifica remota dei file di configurazione del server, come quelli che vivono in / etc (Apache, Cron, lo si chiama), come dovrebbe essere fatto?

  • La modifica remota dei file con accesso root su SFTP può essere compatibile con le migliori pratiche di sicurezza

  • Come si dovrebbero impostare le autorizzazioni per i file, i gruppi di utenti e tali da seguire le migliori pratiche di sicurezza

Attualmente utilizzo l'autenticazione con chiave pubblica protetta da passphrase per accedere come root, ma non sono sicuro che ci sia qualcosa di più sicuro che potrei fare, in modo che gli accessi SSH con root siano disabilitati del tutto.

Il server è Ubuntu 12.04.


Quindi qual è il tuo sistema operativo client? Sii più specifico nella tua domanda!
SPRBRN,

Non riesco a capire perché l'accesso root diretto basato su chiave dovrebbe essere meno sicuro di sudo.
jpc

Risposte:


2

Se la modifica remota è davvero desiderata, una soluzione semplice potrebbe essere quella di conservare una copia di / etc (o parti di essa) su un altro utente locale e configurare il sistema per copiare le modifiche da lì a real / etc. Ancora meglio sarebbe usare un git - o svn, o qualsiasi altro sistema di controllo della versione di tua scelta - e avresti anche un registro aggiuntivo delle modifiche.

È anche possibile impostare chroot su SFTP e disabilitare l'accesso normale per un account specifico - o limitare l'accesso a quell'utente solo da indirizzi IP specifici - con la stessa funzionalità di OpenSSH (Match Group ecc.). A tale proposito, consultare http://www.thegeekstuff.com/2012/03/chroot-sftp-setup/

Tuttavia, ricorda che la maggior parte dei file di configurazione su / etc rende possibile ottenere l'accesso root semplicemente modificandoli. Ho visto i sistemi configurati con svn / git per verificare la convalida dei file di configurazione prima di accettare le modifiche dei file, che potrebbero essere utilizzate per accettare solo formati di configurazione sicuri.

Ad ogni modo, ci sono molte soluzioni diverse per il problema. Questo era solo un approccio.


1

Non vedo perché non sarebbe giusto sudo modificare quei file tramite SSH. Lo faccio sempre, ad es

sudo nano /etc/apache2/sites-available/default

Se si desidera utilizzare un editor GUI, è possibile utilizzare il tunneling X. Devi permetterlo nel tuo file conf ssh e quindi usare l' -Xopzione sulla tua riga di comando ssh.

ssh -X server.example.com

Quindi è possibile modificare il file file un editor GUI:

sudo gedit /etc/apache2/sites-available/default

Questo è il montaggio remoto come senso a cui mi riferivo; Stai eseguendo gedit sul server, non un editor di testo locale che modifica i file su SSH / SFTP
Mikko Ohtamaa,

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.