Innehållsförteckning:

Säker SSH / SCP -anslutning från Raspberry Pi till Cloud Server för säkerhetskopiering och uppdateringar: 3 steg
Säker SSH / SCP -anslutning från Raspberry Pi till Cloud Server för säkerhetskopiering och uppdateringar: 3 steg

Video: Säker SSH / SCP -anslutning från Raspberry Pi till Cloud Server för säkerhetskopiering och uppdateringar: 3 steg

Video: Säker SSH / SCP -anslutning från Raspberry Pi till Cloud Server för säkerhetskopiering och uppdateringar: 3 steg
Video: Передача файлов на Linux сервер | SSH, SCP, SFTP 2024, November
Anonim
Säker SSH / SCP -anslutning från Raspberry Pi till Cloud Server för säkerhetskopior och uppdateringar
Säker SSH / SCP -anslutning från Raspberry Pi till Cloud Server för säkerhetskopior och uppdateringar

Syftet med denna instruerbara är att visa dig hur du ansluter automatiskt och säkert från din Raspberry Pi till en fjärransluten molnserver (och vice versa) för att utföra säkerhetskopior och uppdateringar etc. För att göra detta använder du SSH -nyckelpar som undvika behovet av att komma ihåg lösenord och ge dig en säkrare anslutning.

(CAVEAT - Försök inte detta om du inte är kompetent att konfigurera Linux -behörigheter annars gör du dina system mer sårbara för attacker från hackare.)

Krav

1. Raspberry Pi med ett kommandoradsgränssnitt (CLI) som du skulle se på Putty.

2. Tillgång till en fjärransluten molnserver som är värd av t.ex. OVH eller DigitalOcean, med en CLI.

3. En Windows -bärbar dator eller dator med Putty och PuttyGen installerat.

Antaganden

1. Du har viss kunskap om Linux -kommandon

2. Du kan komma åt din fjärrserver med konventionella manuella processer, t.ex. FTP.

3. Du kommer att ha förinstallerat PuttyGen på din Windows -dator

Steg

Sammanfattningsvis - Se figur 1

a) På din Windows -dator skapar du en privat PPK -fil med PuttyGen

b) Skapa en offentlig PPK -fil på din Windows -dator med PuttyGen (detta görs automatiskt i steg a)

b) Kopiera den offentliga nyckeln från din Windows -dator till din externa molnserver på din Windows -dator

d) På din Windows -dator konverterar du den privata PPK -filen till en OpenSSH -nyckel med PuttyGen

e) Kopiera OpenSSH -nyckeln från din Windows -dator till Raspberry Pi

f) Testa åtkomst och filöverföring från Raspberry Pi till din fjärrserver

Steg 1: A) Skapa en privat PPK -fil, B) Skapa en offentlig nyckel och C) Kopiera den till fjärrservern

A) Skapa en privat PPK -fil, B) Skapa en offentlig nyckel och C) Kopiera den till fjärrservern
A) Skapa en privat PPK -fil, B) Skapa en offentlig nyckel och C) Kopiera den till fjärrservern
A) Skapa en privat PPK -fil, B) Skapa en offentlig nyckel och C) Kopiera den till fjärrservern
A) Skapa en privat PPK -fil, B) Skapa en offentlig nyckel och C) Kopiera den till fjärrservern

För att skapa en privat PPK -fil, öppna PuttyGen på din Windows -dator. Du kommer åt PuttyGen genom att högerklicka på kittikonen i Windows aktivitetsfält. Från PuttyGen -menyn, välj nyckel och generera sedan ett nyckelpar, välj alternativet SSH2 -RSA -nyckel. Du kommer att uppmanas att ange en lösenfras när du skapar den privata nyckeln, och om du ställer in en lösenfras kommer du att bli ombedd att göra det under framtida operationer. Spara den privata nyckeln någonstans säkert på din Windows -dator. Du kommer då att se den offentliga nyckeln i fönsterrutan som visas i figur 2.

Låt oss sedan överföra den offentliga nyckeln till den fjärranslutna molnservern. Öppna en Putty -session till den fjärranslutna molnservern med Putty. Låt oss säga att du har loggat in som fjärranvändare1 och gör sedan följande på den fjärranslutna molnservern CLI

cd /home /remoteuser1 (om det inte redan finns) mkdir.ssh

nano.ssh/Author_keys (Du kommer att se en tom skärm - klistra in den offentliga nyckeln som visas i figur 2 och spara och stäng den här filen)

chmod 0700.ssh

chmod 0600 /home/remoteuser1/.ssh/authorized_keys

Steg 2: D) Konvertera privat PPK -fil till OpenSSH -nyckel och E) Kopiera den till Raspberry Pi

För att konvertera den privata nyckeln till OpenSSH, öppna PuttyGen och öppna sedan den privata nyckeln som du skapade tidigare - gå till alternativet Konverteringar på menyn och välj sedan Exportera OpenSSH -nyckel - se till att filen du skapar har filtypen.key. Spara det säkert någonstans och öppna sedan en kittsession för att logga in på din Raspberry Pi. Kopiera nyckelfilen till hemkatalogen på Raspberry Pi för det användarkonto du använde för att logga in på Raspberry Pi. Säg att nyckeln heter pitobot.key och följ sedan dessa steg:

cd /home /pi

sudo mv pitobot.key/home/pi/

sudo chmod 600 pitobot.key

Nu är du redo att testa om din installation lyckas - Återigen görs detta från Pi. Kom ihåg att remoteuser1 är kontot på den fjärranslutna molnservern i vars hemkatalog du sparade den offentliga nyckeln, och ipaddress är ipaddressen för den fjärranslutna molnservern.

Först från Raspberry Pi, låt oss logga in på den fjärranslutna molnservern med Putty. Skriv följande kommandon på Raspberry PI CLI. (Om du har angett en lösenfras när du skapade en privat nyckel kommer du att bli ombedd att göra det nu.)

sudo ssh -i /home/pi/pitobot.key remoteuser1@ipaddress

Detta loggar in dig på CLI för fjärrmolnservern i hemkatalogen för fjärranvändare1. Genom att skriva 'exit; du kommer att återgå till CLI för din Raspberry Pi.

Försök sedan att överföra filer från den fjärranslutna molnservern till Raspberry Pi. Använd följande kommandon: (Återigen, om du har angett en lösenfras när du skapade en privat nyckel kommer du att bli ombedd att göra det nu.)

sudo scp -i /home/pi/pitobot.key remoteuser1@ipaddress: //var/www/html/*.*/home/pi/

Detta överför alla filer från mappen/var/www/html/på fjärrservern till mappen/home/pi/på din Raspberry Pi. (Tjocktarmen är mycket viktig) Du kan naturligtvis ändra ordningen på kommandona och överföra filer från Pi till fjärrservern.

Steg 3: Säkerhetshänsyn

Medan SSH -nyckelparmetoden förbättrar säkerheten, tänk på följande:

1. Med SSH -nyckelpar aktiverade bör du överväga att ta bort möjligheten för användare att logga in direkt på fjärrservern (Du kan också komma åt dina servrar med nyckelparen Putty på Windows med samma nyckelpar, och du kan också överväga att inaktivera logga in på din Pi också). Var försiktig om du väljer att göra detta och inte ta ett big bang -tillvägagångssätt. För att göra detta måste du inaktivera några konfigurationer i ssh -konfigurationsfilen. Var mycket försiktig med att göra detta. Kommandona är

nano/etc/ssh/sshd_config

Och gör följande ändringar i filen

PasswordAuthentication no

UsePAM -nr

Spara, avsluta sedan starta om SSH med systemctl restart ssh (Detta är för Debian. Det kan vara annorlunda på olika Linux distros)

2) Håll alla dina nycklar säkra annars riskerar du ett dataintrång eller inte har tillgång till dina servrar. Jag rekommenderar att du förvarar dem i ett säkert valv som bitwarden.com och begränsar åtkomsten till det genom din åtkomstkontrollpolicy.

3) Användningen av en lösenfras förbättrar säkerheten men det kan försvåra automatisering av cron -jobb etc. Beslutet att använda denna och andra funktioner bör bestämmas genom riskbedömning, till exempel om du behandlar personuppgifter behöver du större / proportionella kontroller.

Rekommenderad: