Friday, 8 September 2017

Trojan Ssh Daemon Componente Hwclock Binario Options


Steve Friedls Unixwiz Tech Tips Molti utenti hanno implementato Secure Shell (SSH) per fornire accesso protetto ad un sistema Linux a distanza, ma non lo si rende conto che, consentendo l'autenticazione tramite password, sono ancora aperte a forza bruta attacchi da qualsiasi punto Internet. Ci sono vermi in esecuzione dilagante su Internet che fanno un lavoro efficace trovare combinazioni usernamepassword deboli, e questi non vengono fermati con l'uso di Secure Shell. Questo Tech Tip dettagli come utilizzare il client gratuito PuTTY SSH per connettersi a un sistema Linux in esecuzione il server OpenSSH, il tutto mentre utilizzando la crittografia a chiave pubblica e il sostegno agente SSH. Molte di queste informazioni si applica a qualsiasi installazione OpenSSH su qualsiasi sistema UNIX - Solaris, BSD, OpenServer - ma weve mirati questo per la piattaforma Linux quando le specifiche sono chiamati per. Installazione e semplice configlogin per assicurare piena senza password, l'accesso agent-based richiede un sacco di passaggi, in modo e approccio questo in passi da prima prevedendo regolare l'accesso con password al sistema. Ciò consente di collaudare l'installazione iniziale e la possibilità di accesso prima di abilitare le funzioni più avanzate. Scaricare e installare i programmi differenza della maggior parte dei programmi Windows, la suite PuTTY non richiede un programma di installazione: i singoli file exe vengono semplicemente caduto in una directory in cui vengono eseguiti direttamente. Ammiriamo l'economia e lo stile che PuTTYs autore dimostra. I file possono essere trascinati in qualsiasi directory che si trova nel percorso di comando degli utenti, e che normalmente utilizzano C: BIN (vedere l'elemento successivo per come configurare questo). Cinque file devono essere scaricati dal sito stucco. Putty. exe mdash Secure Shell cliente PuTTYgen. exe mdash SSH pubblico-privato chiave generatore Pagent. exe mdash SSH agente chiave PSCP. exe mdash Secure Copy da linea di comando PSFTP. exe mdash Secure Copy con interfaccia FTP come Assicurare la directory di installazione è nel comando percorso Anche se la sua possibile eseguire PuTTY con un percorso completo o un collegamento, in pratica i suoi file quando la sua piena disponibilità al prompt CMD per accedere o copiare utile da qualsiasi parte del file system. Pulsante destro del mouse su Risorse del computer sul desktop e selezionare Proprietà. Fare clic sulla scheda Avanzate in alto, quindi fare clic sul pulsante Variabili d'ambiente. Ciò fa apparire la finestra di dialogo mostrata a destra. C'è sempre variabile PATH nella sezione Variabili di sistema, e, talvolta, nella sezione Variabili utente pure. Solo gli amministratori hanno accesso a variabili di sistema, in modo da modificare o aggiungere il percorso come richiesto. Noi di solito messo la nuova directory all'inizio del percorso, e la sua separati dal resto della lista con un punto e virgola. Fare clic su OK per salvare tutte le modifiche. Creare un collegamento sul desktop PuTTY è spesso usato pesantemente da un lavoratore IT, per cui il suo utile avere un collegamento sul desktop per rendere per un facile accesso. Per aggiungere questo, fare clic destro sul desktop e fare clic su Nuovo collegamento. In entrambi i casi Individuare, o digitare il nome, il percorso del file eseguibile stucco. Nel nostro esempio, il suo stato C: binputty. exe. Fare clic su OK e dare il collegamento un nome conveniente. Avviare PuTTY e configurare per il sistema di destinazione lanciare PuTTY tramite la scorciatoia, e visualizzerà la finestra di dialogo di configurazione: ci sono molte opzioni qui. Bene compilare diversi per fornire un accesso con password al sistema, quindi configurare per l'accesso a chiave pubblica in seguito. Categoria: Nome host: dbserver Protocollo: () connessione SSH. nome utente dati Auto-login: steve connessione. SSH preferita SSH Protocol Version: () 2 Solo Una volta che queste semplici impostazioni sono state inserite, possono essere salvati per rendere per un facile accesso la prossima volta. Clicca sessione a sinistra, quindi inserire un nome in Saved Sessions - questo nome di solito è legato alla macchina sei connessione a. Fare clic su Salva per salvare le impostazioni nel Registro di sistema: weve scelto il nome del server di database. Accedi con le impostazioni salvate dalla fase precedente, wed come usarli per connettersi al sistema di destinazione. Avviare PuTTY (se non è già aperta), e nella sezione Sessione, fare clic sul nome della sessione salvata e fare clic su Carica. Fare clic su Apri per avviare la connessione. Quando richiesto, digitare la password per il proprio account sul sistema remoto, e se corretta, youll ricevere una conchiglia. Ora si può iniziare a lavorare sul sistema. Tuttavia - ogni volta PuTTY collega con un server, scambia l'identificazione in forma di chiavi host. Se la chiave host è sconosciuto, o una partita doesnt cosa weve visto in precedenza, si avvisa l'utente. Per host sconosciuti, questo è principalmente un'operazione pro forma, ma per sistemi precedentemente noti, può suggerire che l'host non è lo stesso come originariamente collegato. Le chiavi degli host che hanno cambiato senza preavviso può verificarsi quando il sistema operativo di destinazione viene reinstallato senza ripristinare le chiavi host dal backup, o potrebbe essere qualcosa di più nefasto come ad esempio una serie ladro mascherato da quella genuina. Si dovrebbe sempre indagare chiavi host inaspettatamente-cambiati Creazione e utilizzando più sessioni Quando l'utente ha solo bisogno di connettersi con un unico sistema, la sua possibile programmare in questi parametri nella sessione di default, ma la sua molto più comune per accedere a più sistemi. Con un po 'di messa a punto, si può facilmente creare e collegare a questi sistemi con un solo clic. Creare e salvare le sessioni Come abbiamo fatto nel paragrafo precedente, creare e salvare il maggior numero di sessioni di nome come necessario, e prendere nota dei nomi di sessione. Questi nomi possono fare riferimento sulla riga di comando con il parametro - load, e possono essere incorporati nella scorciatoia. Tasto destro del mouse sulle proprietà del collegamento e selezionare, quindi inserire il parametro - load insieme al nome della sessione (tra virgolette, se necessario). Fare clic su OK per salvare le proprietà del collegamento. E 'anche una buona idea di rinominare il collegamento per riflettere il nome del server propria connessione a: tasto destro del mouse sul collegamento e selezionare Rinomina. Una volta che il collegamento sessione è completamente configurato, fare doppio clic sull'icona lancia il collegamento. Creare il numero di tasti di scelta rapida pre-programmati in base alle esigenze. Creare e installare una coppia di chiavi pubblico-privato Il vero potere di Secure Shell entra in gioco quando si usano i tasti pubblico-privato. Diversamente autenticazione della password, accesso con chiave pubblica viene effettuata eseguendo una creazione di una volta di una coppia di molto lunghi numeri binari che sono matematicamente correlate. La fase di configurazione iniziale è moderatamente coinvolto, ma deve essere fatto solo una volta: una volta creata, la chiave può essere facilmente installato su quanti più sistemi remoti, se lo desideri. Esegui PuTTYgen una coppia di chiavi pubblico-privato mdash piccoli file che contengono molto grandi numeri binari è richiesta mdash, e PuTTYgen fa questo. La sua corsa solo una volta per creare una coppia di chiavi personali, che vengono poi installati ovunque sia necessario. Fare clic su Start. quindi su Esegui. Quindi immettere PuTTYgen nella casella della riga di comando. Verrà visualizzata la finestra di dialogo principale, mostrata a destra. Selezionare i parametri chiave come indicato, quindi fare clic su Genera. Poiché la dimensione della chiave DSA è fissato a 1024 bit, e la dimensione della chiave RSA può essere reso molto più grande, si consiglia una chiave RSA a 2048 bit. Si noti che il default è 1024 bit, è necessario sostituire manualmente per selezionare 2048. Nota: Non creare una versione 1 chiave di qualsiasi tipo: theyre non protetto. Ti saranno richieste per creare un po 'di casualità spostando il mouse: questo conferisce al sistema un po' di entropia aggiuntivo che contribuisce a creare chiavi migliori. Questo richiede solo pochi secondi per generare appieno la coppia di chiavi. Proteggere e salvare le chiavi Ora la coppia di chiavi è stato generato, ma esiste solo nella memoria PuTTYgens: deve essere salvato su disco per essere di qualche utilità. Anche se la chiave pubblica non contiene informazioni sensibili e verrà installato su sistemi remoti, la chiave privata deve essere protetta con forza: nessuno sappia la chiave privata ha piena corsa di tutti i sistemi remoti. La chiave privata viene generalmente protetto da una passphrase, e questa frase è entrato due volte nei campi indicati. Il commento è facoltativo ma è abitualmente l'indirizzo e-mail del proprietario della chiave. Potrebbe anche essere solo il nome proprietari. Non dimenticare la passphrase la coppia di chiavi è inutile senza di essa. La chiave generata deve ora essere salvato, e questo è fatto in tre parti: Salva chiave pubblica e chiave privata Salva sia pronta per un nome di file, e la chiave privata (con estensione. ppk) devono essere salvati in un luogo sicuro. La chiave pubblica è in un formato standard e può essere utilizzato direttamente o indirettamente da altri software, e sembra che questo: la chiave privata è in un formato PuTTY-specifico che cant essere utilizzato da qualsiasi altro software. E 'abitudine mai essere guardato direttamente dall'operatore. Installare la chiave pubblica sul sistema Linux con puttygen ancora aperto, evidenziare l'intera chiave pubblica per l'incollatura in OpenSSH authorizedkeys zona di file e il tipo di controllo-C per copiare negli appunti sistemi locali. Questo è essenzialmente gli stessi dati come si trova nel file chiave pubblica salvato, ma la sua in una forma che può essere utilizzata direttamente sul sistema Linux. Accedi al computer Linux utilizzando la password account, creare la directory. ssh, se necessario, quindi modificare le. sshauthorizedkeys file. Questo sarà un file di testo e gli appunti dovrebbe essere incollato in esso. La chiave pubblica sarà solo una lunga fila, ed è veramente facile incollare i dati in modo che tronca i primi caratteri. Questo rende la chiave inutilizzabile, in modo da essere sicuri che la chiave inizia ssh-rsa o ssh-DSA. Salvare il file. Assicurare che sia la directory. ssh ei file all'interno di esso sono leggibili solo dall'utente corrente (si tratta di una precauzione di sicurezza), e questo può essere realizzato utilizzando il comando chmod con i parametri per l'applicazione in tutta la directory: Esci dal sistema. Nota - il file authorizedkeys deve essere di proprietà dell'utente e unreadableunwritable da chiunque altro - il server OpenSSH potrà negare gli accessi se questo non è il caso. Si può verificare questo con il comando ls: Il file deve essere in modalità - rw -------. Fissare la chiave privata per la sessione SSH Ora che la coppia di chiavi pubblico-privato è stato creato, può essere associato ad una sessione SSH. In primo luogo, bene farlo in PuTTY con il lancio del programma e caricare la sessione di interesse. Passare alla connessione. SSH. Auth nel riquadro Categoria a sinistra, quindi popolare il file della chiave privata per il campo di autenticazione si naviga al file. ppk salvato in precedenza. Nota - con altri client Secure Shell, weve visto la possibilità di allegare una chiave privata per tutte le sessioni (come parte di una configurazione globale), ma con mastice sembra richiedere una configurazione per ogni sessione. non erano sicuri perché. Ritorno al livello di categoria di sessione e salvare la sessione corrente. A questo punto, PuTTY (su Windows) e OpenSSH (su Linux) sono entrambi configurati per l'accesso a chiave pubblica sicuro. Collegare tramite la chiave pubblica Ora che sono state completate le operazioni di configurazione, erano pronti per accedere realmente utilizzando il meccanismo chiave pubblica, evitando completamente il passo password. Collegare in modo sicuro Avviare PuTTY con la possibilità di caricare la sessione salvata con la chiave privata: Piuttosto che richiedere la password account (che sarà diverso per ogni sistema remoto), la sua invece chiedere la passphrase che protegge la chiave privata locale. Quando la chiave privata si inserisce la chiave pubblica del server OpenSSH, accesso concesso e un guscio presentato all'utente. E 'importante notare che, anche se l'utente deve digitare una parola segreta momento del login, la password è associato con la chiave privata locale. Non l'account remoto. Anche se la chiave pubblica degli utenti è installato su 1.000 diversi server remoti, la stessa passphrase-chiave privata è richiesta per tutti loro. Questo semplifica notevolmente il compito di ricordare le credenziali di accesso e incoraggia la scelta di forti, quelle sicure. Disattivazione autenticazione della password su OpenSSH Una volta che gli utenti coppia di chiavi pubblica e privata vengono verificati corretta, la sua possibilità di disabilitare l'autenticazione password sul server Linux del tutto. Questo previene completamente tutti i possibili tentativi di password guessing e assicura in modo drammatico una macchina. Tuttavia, per le macchine non fisicamente locale, il suo saggio di rinviare sulla disattivazione password di autenticazione fino alla sua assolutamente chiaro che l'accesso a chiave funziona correttamente, soprattutto se più utenti sono coinvolti. Una volta che l'autenticazione tramite password è stata disabilitata, anche la password di root non permetterà uno nel sistema. Quelli nuovi a chiave di accesso del pubblico sono invitati a verificare con molta attenzione. La configurazione del demone SSH si trova nel file sshdconfig, spesso memorizzati nella directory etcssh. Si tratta di un file di testo che è relativamente facile da leggere anche essere alla ricerca di due voci per modificare. In primo luogo è quello di impostare PasswordAuthentication al valore no. Questo può essere impostata in modo esplicito sì. o può essere commentata a fare affidamento sul valore predefinito, ma desideriamo disabilitare esplicitamente questo: In secondo luogo, vogliamo disabilitare versione del protocollo SSH 1: questo è vecchio, ha diversi punti deboli della sicurezza sostanziali, e non deve essere consentito dal mondo esterno . Modificare il file di configurazione e assicurarsi che le due voci di parole chiave sono impostate correttamente commentare le vecchie voci, se necessario. Una volta che il file di configurazione è stato salvato, la Secure Shell daemon deve essere riavviato sulla maggior parte delle piattaforme di questo può essere fatto con il meccanismo di servizio: Questo uccide il demone di ascolto e lo riavvia, ma non termina le sessioni utente individuali esistenti. Coloro che si sentono questo potrebbe essere un passo rischioso sono invitati a riavviare semplicemente la macchina. A questo punto, OpenSSH non accetterà più le password di qualsiasi tipo, con accesso concesso solo per gli utenti con chiavi pubbliche prestabilite. L'attivazione di SSH agente di supporto Fino a questo punto, weve fornito un grande modo di sicurezza di accesso al sistema, ma la sua ancora non particolarmente conveniente: abbiamo ancora necessario digitare un (si spera) passphrase complessa ogni volta. Questo può diventare noioso quando un gran numero di sistemi sono coinvolti. Per fortuna, la suite SSH fornisce un meraviglioso meccanismo per sbloccare la chiave privata una volta, e permettendo singole connessioni ssh di spalle su di esso senza interrogare per la passphrase ogni volta. Avviare l'agente Individuare e lanciare il programma pageant. exe dalla stessa posizione degli altri file PuTTY-correlati, e si metterà nella barra di sistema (in basso a destra vicino all'orologio). Fare doppio clic sull'icona nella barra delle applicazioni, e lancia una finestra di dialogo con un elenco vuoto di chiavi. Fai clic su Aggiungi chiave e selezionare il file. ppk che contiene la chiave privata. Quando viene richiesto il passphrase, immetterla e fare clic su OK. Fare clic su Chiudi per chiudere l'agente. Ora, lanciare una delle sessioni SSH già configurati ad un host remoto pubkey-fissata: sarà interrogare l'agente per la chiave privata, lo scambio con il telecomando, e concedere l'accesso senza ulteriore intervento da parte dell'utente. Nota - il lettore attento potrebbe chiedersi quanto l'agente memorizza i dati, e se i programmi non attendibili sono in grado di ottenere questa chiave segreta di nascosto. non erano sicuri di come funziona, ma non weve mai sentito parlare di problemi di sicurezza reali su questo fronte. Bene aggiornare questo documento se si impara qualcosa. Precaricare la chiave privata La prima cosa che molti utenti PuTTY fanno durante l'accesso al sistema per il giorno è quello di lanciare l'agente e aggiungere la chiave privata. Questo è a pochi passi, ma siamo in grado di ottimizzare solo un po 'di più. Se lanciamo l'agente con il file di chiave privata come parametro, si carica automaticamente la chiave. Passare pageant. exe e fare clic destro per copiare questa icona. Incollare questo come un collegamento sul desktop, quindi fare clic destro e selezionare Proprietà. Immettere il percorso completo del file della chiave privata. ppk come parametro, quindi salvare le modifiche. Facendo doppio clic su questa icona verrà caricato il file di chiavi, chiedendo la passphrase. Una volta inserito, questo è l'ultima volta la sua richiesta finché l'agente resta nella zona. C'è molto poco non piace sul supporto agente SSH. Spedizioniere Ma weve non esauriti i benefici di sostegno dell'agente SSH. La sua una vittoria chiara per evitare di digitare la password ogni volta che una nuova connessione viene lanciato, ma SSH fornisce anche spedizioniere che può passare la credenziale giù per la connessione al server remoto. Questa credenziale può quindi essere passato a un altro server in cui è stato installato gli utenti a chiave pubblica, le password o la passphrase ovviando segreto per tutta la durata di una navigazione in rete. Utente lancia una connessione al server A: PuTTY sulla macchina locale ottiene la chiave privata dall'agente e fornisce al server remoto. Server remoto elabora i dati principali e le sovvenzioni pubbliche e private. L'utente viene dato un guscio sul sistema locale. L'utente cerca di connettersi a SystemB con ssh - A SystemB (-A consente spedizioniere), e si connette al server SSH lì. Sistema B chiede sistema A per gli utenti dei dati chiave privata e il server SSH sul sistema A in avanti sua volta questo ritorno alla workstation originale dove viene interrogato l'agente. L'agente locale passa i dati di back up della connessione, dove la sua inoltrato da SystemA a SystemB. SystemB riceve questa credenziale, e l'accesso è garantita dal confronto con la chiave pubblica memorizzata su quella macchina per quell'utente. Questo avviene automaticamente e rapidamente: ci vogliono non più di due o per l'intero scambio si verifichi un secondo, e questo invio può andare oltre piuttosto una lunga catena di connessioni SSH. Questo prevede trasparente, accesso sicuro ad una vasta gamma di sistemi remoti. Nota - Tutto questo richiede che l'utente dispone di un account su ogni macchina in questione, e che la chiave pubblica degli utenti sia installato correttamente su ciascuno di essi. SSH inoltro doesnt fornire qualsiasi accesso che non verrebbe concesso l'inoltro assente solo aggiunge un più comodo meccanismo per che cosa è già previsto. Abilitare l'inoltro in PuTTY attivazione di inoltro agente è fatto nelle finestre di dialogo di configurazione PuTTY molto come tutti gli altri, e solo una scatola aggiuntiva bisogno di essere controllato. Questa opzione richiede, ovviamente, l'uso di sfilata del sistema locale - senza un agente, non c'è niente di trasmettere. Se un collegamento chiave protetto da essere tentata con nessun agente presente, PuTTY semplicemente chiederà la passphrase in quanto ha tutto il tempo (e lo farà su ogni connessione). Abilitare l'inoltro sul server Nell'esempio precedente, abbiamo visto che l'utente ha digitato ssh host - A. ma il suo comune a fare uso spedizioniere l'impostazione predefinita per rimuovere la necessità di digitare il - A. La configurazione del server OpenSSH è trovato in sshdconfig. mentre la configurazione del client è in sshconfig (in genere nella directory etcssh). Il file può essere modificato e ForwardAgent impostazione impostata su yes: Questa impostazione non interessa il server, in modo da non richiede il riavvio o il funzionamento speciale per essa abbia effetto: la prossima connessione in uscita consentirà l'inoltro automatico. Questo cambiamento deve essere fatta solo una volta (e il suo default su alcuni sistemi). Copia dei file in modo sicuro con la configurazione di stucco, l'accesso a chiave pubblica, e il supporto agente (con forwarding), erano pronti a fare un passo oltre l'accesso shell e spostare i file. Secure Shell fornisce diversi metodi per la copia di file da una macchina all'altra, il tutto in collaborazione con le stesse chiavi e gli agenti. PSCP consente la riga di comando di copia di file da e verso un server SSH remoto e PSFTP fornisce un'interfaccia tipo FTP per il trasferimento di file conveniente. Bene discutere entrambi. PSFTP - un client FTP simile Il programma PSFTP può essere lanciato da riga di comando o da un collegamento sul desktop, e in entrambi i casi accetta sia un nome host o un nome di sessione salvata. Una volta lanciato, si connette al server di destinazione (tenendo pienamente vantaggio di chiavi pubbliche e l'agente locale, se del caso), e presenta una richiesta psftpgt: gli utenti regolari di client FTP da riga di comando troveranno questo familiare, anche se la sua non certo fino a la facilità d'uso come client GUI popolari. Il comando help può fornire qualche indicazione. PSCP - Secure Copy utenti nella riga di comando potrebbe desiderare di copiare direttamente i file, e questo è fatto con PSCP. il comando sicuro di copia. Proprio come la copia di file regolari sul file system locale, PSCP prende il nome di computer e la directory come origine o destinazione. PSCP può trasferire un file alla volta, o un set intero in una singola istanza. Curiosamente, non sia necessario fornire il nome della sessione salvata solo il nome host e il nome utente corrente (che di solito è preso automaticamente dall'ambiente Sembra che PSFTP e PSCP sia consultare l'elenco salvato sessione, trovare una corrispondenza appropriata, e quindi utilizzare le informazioni di accesso associato. Questo lo rende un liscio esperienza di trasferimento file. le preoccupazioni di sicurezza e i punti più delicati questo suggerimento Tech ha destinati a fornire un percorso veloce per l'impostazione un ambiente di Secure Shell dalla workstation al server, ma ha saltato molti dei punti più delicati. il punto di usare Secure Shell è la sicurezza, e mercoledì negligente se vi abbiamo mangiato tocco su alcuni di questi punti qui. Bene fanno la più ampia punto che si deve fare attenzione quando si lavora su un sistema non attendibile: quando si utilizza funzioni avanzate come l'inoltro agente o chiavi private, si è alla mercé di un operatore di ostile keylogger kernel-based e binari binssh trojan sono solo alcuni dei tanti evidente. rischi quando si opera in quel tipo di ambiente. Qui ben toccano alcuni dei punti non ovvie e notare che in un ambiente affidabile e controllato, semplicemente dont sorgono questi problemi. Proteggere la chiave privata se la chiave pubblica è unica preoccupazione minore, la chiave privata deve essere protetto con forza. Chiunque può ottenere alla chiave privata decodificata (sia per l'apprendimento della passphrase, o brute-forzarla) ha la piena esecuzione di tutte le reti in cui è installata la chiave pubblica. Si consiglia vivamente di limitare drasticamente il numero di posizioni in cui sono la chiave privata. Si presume che le applicazioni esistenti che può richiedere un file-chiave privata e tentare di forza bruta la chiave, anche se weve non ancora imbattuto in uno. uso Agente richiede macchine di fiducia Ogni volta che un agente chiave SSH è presente, sia che si tratti sulla macchina locale, che avvia la connessione in uscita, o su macchine intermedie che li sta inoltrando, la sua tecnicamente possibile per intrusi su quelle macchine per ottenere l'accesso al canale protetto . In OpenSSH, un client ssh comunica con l'agente tramite un socket di dominio UNIX nella directory tmp (un file rappresentativo è tmpssh-DeB10132agent.10132), e la sua ristretta per l'utente locale. Ma superuser hanno anche accesso alla presa, e la sua relativamente semplice dirottare l'agente di connettersi allo stesso computer di destinazione. Articolo correlato ResourcesThis è parte della serie BackupYourSystem. Maggiori informazioni introduttive si possono trovare lì. Introduzione Dalla pagina man: Rsync è uno strumento di copia dei file veloce e straordinariamente versatile. Si può copiare localmente, tofrom un altro host su qualsiasi shell remota, o tofrom un demone rsync remota. Offre un gran numero di opzioni che controllano ogni aspetto del suo comportamento e permettono specifica molto flessibile del set di file da copiare. E 'famosa per il suo algoritmo delta-trasferimento, che riduce la quantità di dati inviati attraverso la rete inviando solo le differenze tra i file di origine ei file esistenti nella destinazione. Rsync è ampiamente usato per i backup e mirroring e come un comando di copia migliorata per l'uso quotidiano. In altre parole, rsync è uno strumento per la copia in modo efficiente e il backup dei dati da una posizione (la fonte) a un altro (la destinazione). È efficace perché trasferisce solo i file che sono diversi tra le directory di origine e di destinazione. Rsync è una utility a riga di comando. Gli utenti che tentano di usarlo dovrebbero avere familiarità con la riga di comando (vedere Uso del terminale). Se preferite un'interfaccia grafica, vedere la sezione grsync di questa pagina. Installazione Rsync è installato in Ubuntu di default. Assicuratevi di controllare se i seguenti pacchetti siano installati prima di iniziare (vedere Installazione di un pacchetto): rsync, xinetd, ssh. Eseguire un backup semplice Il metodo più semplice per eseguire il backup su una rete è quello di utilizzare rsync tramite SSH (utilizzando l'opzione ssh - e). In alternativa, è possibile utilizzare il demone rsync (vedi Rsync demone che richiede molto più di configurazione. Il backup locale richiede solo rsync e l'accesso readwrite alle cartelle di essere sincronizzati. Qui di seguito troverete esempi di comandi che possono essere utilizzati per il backup in entrambi i casi. E ' va notato che una sincronizzazione di rete può essere eseguita localmente finché la cartella è condivisa (diciamo da Samba) e poi montato sulla macchina con folder1. Questo processo ottiene intorno dover utilizzare ssh ma è meno sicuro e deve essere utilizzato solo in reti private sicure, come a casa vostra Backup su rete una spiegazione di opzioni di cui sopra ai comandi:. --dry conduzione Questo dice rsync per fare in realtà non nulla sarà solo scrivere un registro di quello che sarebbe fare per lo schermo.. Una volta che avete fatto in modo tutto funzionerà come ci si aspetta, è necessario rimuovere questa opzione, ed eseguire nuovamente il comando per eseguire il backup vero e proprio. --delete elimina i file che dont esiste sul sistema sottoposti a backup. (opzionale) - a conserve la data e gli orari, e permessi dei file (stessi come - rlptgoD). Con questa opzione rsync: Si scende ricorsivamente in tutte le directory (-r), copiare i collegamenti simbolici come link simbolici (-l), conservare i permessi dei file (-p), conservare i tempi di modifica (-T), conservare la proprietà del file (-o), e - z comprime i dati - vv aumenta il livello di dettaglio del processo di rendicontazione - e specifica shell remota da utilizzare cartella1 e cartella2 Negli esempi sopra, folder1 e 2 sono segnaposto per le directory da sincronizzare. Folder1 è la cartella originale e 2 è la nuova cartella, o uno esistente per essere portato in sincronia con il primo. Sostituirli con le cartelle youd piace. A è stato aggiunto dopo folder1 modo che solo i contenuti, piuttosto che intera cartella, verrebbero spostate nella seconda. Una sinossi completa di tutte le opzioni con il comando rsync può essere trovata nelle pagine man in Opzioni Riepilogo. La pagina man per rsync si possono trovare anche sul linux. die grsync è una interfaccia grafica per l'utilità rsync. La semplice interfaccia del GUI espone molte delle opzioni di base disponibili con rsync. E 'utile per coloro che preferiscono non usare la linea di comando. Installazione Il programma grsync non viene installato di default su Ubuntu o qualsiasi altro distrubtion ma è facilmente disponibile dai principali repository. Per get grsync ensure section universo dei repository di Ubuntu è abilitata nelle Sorgenti Software. Poi, per installare questo software in Ubuntu, installare il seguente pacchetto. grsync. Configurazione Per avviare grsync passare attraverso i seguenti menu: Applicazioni --gt Strumenti di sistema --gt grsync. Su start up youll essere presentato con la finestra principale, in cui tutta la configurazione avviene. Su questa finestra sono tutte le opzioni maggior parte degli utenti mai bisogno. Per spiegare, le opzioni saranno elencate e dei loro effetti menzionati. Sessions - Questa funzione è la stessa di profili in altri. Ogni sessione sarà memorizzare un diverso insieme di directory di origine e di destinazione, nonché le opzioni di configurazione associati alla coppia di cartelle. Questo consente la sincronizzazione delle diverse serie di cartelle secondo diverse opzioni. Gestione delle sessioni è semplice, è sufficiente premere il pulsante Aggiungi per aggiungere una nuova. Per eliminare, selezionare la sessione che si desidera non è più dal menu a tendina e spingere Elimina. Origine e di destinazione - elencano Queste due scatole le due cartelle (tecnicamente denominato directory) che verranno sincronizzati. Quello superiore è la fonte e la parte inferiore della destinazione. Così, quando si esegue la sincronizzazione, i file dalla sorgente verranno copiati verso la destinazione in base alle opzioni di un utente seleziona. Per specificare le directory o sfogliare per loro dalla GUI o digitare secondo le convenzioni di percorso standard. Switch - Il segno di ricarica universale situato a destra dei pulsanti Sfoglia è un comodo pulsante. Sarà passare istantaneamente la sorgente con la destinazione. Importazione ed esportazione - Dopo aver sessioni configurate, un utente può decidere di farne un backup per la conservazione. Per farlo, basta andare al menu sessioni in alto e selezionare Importa o Esporta. Il primo sarà ripristinare una sessione da un backup precedentemente fatto, quest'ultimo effettuare un backup della sessione corrente. Nota: Questa funzione di backup lavora su una base per sessione. Questo significa che, ogni sessione si desidera eseguire il backup deve essere selezionato dal menu a tendina e poi eseguito il backup. Se si dispone di 3 sessioni differenti, selezionare a turno ed esportarli. Lo stesso durante l'importazione sessioni. Opzioni di base - La maggior parte degli utenti troveranno la maggior parte delle opzioni che avrete mai bisogno qui. I primi quattro preservare le proprietà dei file trasferiti. Gli altri di modificare il modo i file vengono copiati. Per maggiori informazioni su ciò che ciascuno fa specifico, posizionare il cursore del fermo sopra l'opzione e verrà visualizzato un piccolo spiegazione. Le opzioni controllato sono naturalmente quelli che saranno applicate durante la sessione. Opzioni avanzate - Questa scheda contiene più opzioni, molti sono utili e di auto-explanitory. Per chi non è capito, le descrizioni dei comandi vengono visualizzate quando il mouse rimane sopra un'opzione abbastanza a lungo. Opzioni aggiuntive - Questa casella di immissione permette l'ingresso di opzioni aggiuntive non presenti nella GUI, ma noto per l'utente. L'uso è consigliato solo per utenti esperti, inserendo opzioni malformati possono avere conseguenze inaspettate. Simulazione ed esecuzione Gli ultimi due pulsanti della finestra sono Simulazione e Esegui. Il pulsante per la simulazione è molto utile quando incerto cosa accadrà in base alle opzioni selezionate. La schermata di dialogo trasferimento normale si aprirà e nel pannello principale, un elenco di file che sarebbero stati copiati sopra è quotata. L'utente può quindi verificare se questo è come desiderato o apportare modifiche. Una volta che la sessione è iniziata con il pulsante Esegui, la finestra di dialogo apparirà di nuovo, ma questa volta sarà effettivamente elaborare le cartelle di conseguenza. Assicurarsi che prima di spingere Execute che si è soddisfatti con la simulazione. Backup remoto su una rete è possibile, preferibilmente l'utente deve montare la condivisione di rete per eseguire il backup prima di essere messa al programma. La quota sarebbe poi elencato nel Sfoglia GUI e potrebbe essere facilmente aggiunto. Non vi è alcuna sezione separata per la rete, se sono necessarie funzioni più avanzate l'utente è invitato a cercare alternative, di cui ci sono molti. Alternative Ci sono molte alternative, in vari stadi di sviluppo. Per un elenco incompleto, vedere qui. Rsync Daemon Il demone rsync è un'alternativa a SSH per backup remoti. Anche se più difficile da configurare, fornisce alcuni benefici. Ad esempio, utilizzando SSH per fare un backup remoto di un intero sistema richiede che il demone SSH permette login di root, che è considerato un rischio per la sicurezza. Utilizzando il demone rsync permette di login di root tramite SSH da disabilitare. Configurazione del rsync Daemon 1. Modificare il file etcdefaultrsync per avviare rsync come demone utilizzando xinetd. L'ingresso elencati di seguito, deve essere modificato da false a inetd. 2. Installare xinetd perché la sua non è installato per impostazione predefinita. 3. Creare il file etcxinetd. drsync per lanciare rsync tramite xinetd. Dovrebbe contenere le seguenti righe di testo. 4. Creare la configurazione del file etcrsyncd. conf per rsync in modalità daemon. Il file deve contenere la seguente. Nel file, l'utente dovrebbe essere sostituito con il nome utente sulla macchina remota viene effettuato l'accesso. 5. Creare etcrsyncd. secrets per la password agli utenti. User should be the same as above, with password the one used to log into the remote machine as the indicated user. 6. This step sets the file permissions for rsyncd. secrets. 7. StartRestart xinetd Run the following command to check if everything is ok. The output listed is just a sample, should be what is on your shared remote machine. Hostname can be replaced by the IP address of the machine. Backup With Rsync and Ssh (scroll to bottom if you want a much less informative synopsis of what will be covered) When I first began tinkering with this idea, the whole SSH thing kind of confused me, mostly because I didnt think SSH would be easy for an end user to utilize. While SSH is very complex in design, theyve made it super easy for the end user to set up an authentication key set. Essentially, SSH is a 1 to 1 authenticated connection that can be obtained without a password. Once this is in place, you can utilize rsync to run automatically. Before we begin, please ensure you have openssh-server installed on your file server in question. Next, we need to set up a key pair. You will receive a public key and private key. You will be asked some questions, such as whether or not you want a password to the key pair, etc. I chose no and basically left everything else default. I went with no password because SSH keys are pretty -- secure, and plus I wanted this to be automated. I was not sure how I could automate this process while still having a password on it. The public key needs to get copied to the authorizedkeys file on the server. Thanks to a handy command, this is painless. Replace jason192.168.1.150 with what your setup would be. Itll ask you for your password. Put in your password to the user account youre authenticating against on the file server. Once done, you should be able to run: If it did not ask for a password and your prompt changed, youre good to go. If it asked you for a password, something is likely off. Please note, if you mess around with the SSH keys (by deleting them, adding new ones, etc.) itll require a reboot (some people have told me log out log in works fine too) to reset. I dont know enough about that to explain whats happening besides taking the educated guess that the SSH key is getting locked to your session. Unless you plan to tinker around like I did, where I would delete the SSH keys and re-generate them over and over for learning purposes, you wont run into this issue. But if you do, I wanted to throw this out there. So, SSH is set up and youre good to go. Now what Its rsyncs turn. You have opened the door with SSH, now you need to put it in gear with rsync. Rsync is a remote synchronization tool. For my uses, its pretty much awesome. I suggest you folks read the rsync man page for more information. Just a side note, anybody reading this who uses Linux, please keep man pages in mind. Theyre quicker than Google. Honestly. You can read them up by going to terminal and typing man rsync. Of course, you can substitute rsync for any other command to read more about it as well, aka man cp etc. The man page will go over the functionality of a bunch of flags. Theres a few I personally use and Ill cover them in my own words below. - a Archive mode. This keeps the time, permissions, owner, group, and other various settings the same as the source. I like using - a because it ensures that my data on the file server match my data on the desktop, even down to who owns what and the time stamps. - z Compression mode. I havent really used this until recently. Im not sure if I notice a difference because rsync is pretty fast to begin with, but I tack it in there, mostly because, why not --exclude Exclude mode. This is if you want to exclude a specific directory, trash, videos, etc. For example, lets say you want to exclude ALL hidden filesfolder. you would do --exclude. Notice after the equals sign there is a period and That ensures youre doing the wild card, meaning EVERYTHING, but only after the period. Since hidden filesfolders are began with a period, you can see how it would include. folder1.folder2.folder3, etc. Note - Personally, I would definitely recommend excluding. gvfs. gvfs is the gnome virtual file system. It essentially acts as a mount point for network resources. Lets say your file server is accessible through. gvfs. If you rsync everything and dont exclude. gvfs, youre in essence duplicating the data on your file server that already exists, because itll exist in its primary folder, as well as through. gvfs thanks to your file server. homejasonDocuments homejasonMusic homejasonPictures homejason. gvfsDocuments homejason. gvfsMusic homejason. gvfsPictures By excluding. gvfs, you avoid this all together. If youre backing up a home directory, Id suggest doing it. Using simply --exclude. gvfs works for me, but if you need the full path, it would of course be --excludehomejason. gvfs --delete This will delete files on the destination that dont exist on the source. Lets say you have a folder that contains 100 GB of data and its simply named data. If you rename it to data2, your server would contain a copy of data and data2 a grand total of 200 GB. If you want the data on your server to be identical, use --delete. If you want to have some sort of older file redundancy (I know some people prefer this), dont use --delete. --progress If you run rsync manually, youll be able to see the progress of whats going on instead of just a flashing cursor. I only use this flag if I want to run the command manually and see what its doing. I dont bother using this when its showtime and I want it automated in the background. Other than that, its just about setting up the source and destination. Lets start with the destination, since after all, were tinkering with SSH here so its a tad bit different. For the destination, youll need the user, server, and folder path. As I said, my name is Jason, and my file server is 192.168.1.150. My folder path on my server in particular is mediaNASjason. In my case, NAS is a network drive I shared out, so its pretty specific to my situation. Yours is likely to differ. Tailor the destination to your own situation. If your backup drive is mediastorage and you have a folder on storage named frank, then use mediastoragefrank, etc. In my case: is my destination. Now, about the sources. Theyre simple enough, as its the same as above except it doesnt include userserver. If you want your entire home directory to be synchronized, you can do so with just: If you want your entire home directory synchronized but with the exclusion of. gvfs and the --delete flag, use: Getting the jist of it now Note, you can have multiple sources as well, which makes it handy if you only want to back up a few specific folders to your file server. In my case, I had limited file server space, so I only wanted to back up the most important data to my file server, which to me is Documents and Pictures. Example: You can then set up a Cron job for this to run at specific times. I never run rsync as root, so when I set it up in Cron I set it to launch as jason and just tagged the above rsync command in. Ive since moved away from the Cron route. I shut down my computer at night, but my file server stays up all the time, I added an entry in Startup Applications to do the backup for me, which is handy because it runs at system startup. I named it NAS Backup and put the above command in the command field. Everything works like a charm with zero input needed from me. imagessmiliesguitar. gif Quick tip, if youd like to check out a decent rsync GUI, fire up grsync. Its easy to use and will help you structure out the rsync command if youre not entirely sure just yet. Just note, there is no --exclude flag in the GUI, so youll have to add it manually under Additional Options, but thats pretty -- easy to do. Grsync also doesnt use - a, but instead it breaks up - a to - t - o - p - g etc. Read the rsync man page under the - a section to see why this makes littleno difference. Once you have it formulated the way you want, you can also do a test run, which is one of the features of grsync to make sure it works properly prior to giving it the green light. Assuming all is well and youre done, you can schedule this grsync job with, you guessed it, either Startup Applications or Cron. Keep in mind, the syntax for it is grsync - e jobname. So if you named the job backup, youd run grsync - e backup. This would be the same for Cron or Startup Applications. I tested it running it in Startup Applications. It comes up with a GUI window when I log in showing me the status of the data transfer. If I go the route with Startup Applications and just throwing the full rsync command in, it does it completely in the background. Depending on how much of a visual status you want may dictate which route you go. At any rate, serious kudos to the SSH, Rsync, and Grsync team, as theyve brewed up some very impressive technologies here. The above was meant to be super informative. I hope some users can set up a backup system that works for them. Keep in mind, you never know when Mr. HardDrive is going to tank on you, so plan ahead. Below is a rough summary of what youre doing for the users who dont want to read through a mountain of text. Note: Change the below settings to match your setup, unless your name happens to be Jason and your file server happens to be 192.168.1.150. Client Startup Applications - Select New - Name it backup or whatever you please, and add desired rsync line in the command box, such as:CentOS SSH Installation And Configuration Darr247 December 18, 2011, 5:38 am There are a couplefew things I don8217t get8230 e. g. for Make sure port 22 is opened: netstat - tulpn grep :22 What are we supposed to see if port 22 is opened Add the line - A RH-Firewall-1-INPUT - m state 8211state NEW - m tcp - p tcp 8211dport 22 - j ACCEPT add it where. In the :INPUT ACCEPT section in the :OUTPUT ACCEPT section after :COMMIT No matter which line I put it on, when I restart the iptables service I get a red FAILED message for that line. And then you change the SSH port to 1235 but don8217t revisit iptables What am I missing here Boymix81 February 28, 2012, 9:20 pm - A RH-Firewall-1-INPUT - s 192.168.1.024 - m state 8211state NEW - p tcp 8211dport 22 - j ACCEPT - A INPUT - s 192.168.1.024 - m state 8211state NEW - p tcp 8211dport 22 - j ACCEPT

No comments:

Post a Comment