Съдържание:

Защитена SSH / SCP връзка от Raspberry Pi към облачен сървър за архивиране и актуализации: 3 стъпки
Защитена SSH / SCP връзка от Raspberry Pi към облачен сървър за архивиране и актуализации: 3 стъпки

Видео: Защитена SSH / SCP връзка от Raspberry Pi към облачен сървър за архивиране и актуализации: 3 стъпки

Видео: Защитена SSH / SCP връзка от Raspberry Pi към облачен сървър за архивиране и актуализации: 3 стъпки
Видео: MEGA Chia GPU Farming and Plotting Guide for Linux - Gigahorse Start to Finish - 2023 2024, Ноември
Anonim
Защитена SSH / SCP връзка от Raspberry Pi към облачен сървър за архивиране и актуализации
Защитена SSH / SCP връзка от Raspberry Pi към облачен сървър за архивиране и актуализации

Целта на тази инструкция е да ви покаже как да се свържете автоматично и сигурно от вашия Raspberry Pi към отдалечен облачен сървър (и обратно), за да извършвате резервни копия и актуализации и т.н. За да направите това, използвате двойки ключове SSH, които избягват необходимостта от запомняне на пароли и ви осигуряват по -сигурна връзка.

(CAVEAT - Не опитвайте това, ако не сте компетентни в конфигурирането на разрешения за Linux, в противен случай ще направите системите си по -уязвими за атака от хакери.)

Изисквания

1. Raspberry Pi с интерфейс на командния ред (CLI), както бихте видели на Putty.

2. Достъп до отдалечен облачен сървър, хостван от например OVH или DigitalOcean, с CLI.

3. Лаптоп или компютър с Windows с инсталирани Putty и PuttyGen.

Предположения

1. Имате известни познания за командите на Linux

2. Можете да получите достъп до вашия отдалечен сървър, използвайки конвенционални ръчни процеси, напр. FTP.

3. Ще имате предварително инсталиран PuttyGen на вашия компютър с Windows

Стъпки

В обобщение, - Вижте Фигура 1

а) На вашия компютър с Windows създайте частен PPK файл с помощта на PuttyGen

б) На вашия компютър с Windows създайте публичен PPK файл с помощта на PuttyGen (това става автоматично в стъпка а)

б) На вашия компютър с Windows копирайте публичния ключ от вашия компютър с Windows на отдалечения облачен сървър

г) На вашия компютър с Windows преобразувайте частния PPK файл в ключ OpenSSH с помощта на PuttyGen

д) Копирайте ключа OpenSSH от вашия компютър с Windows в Raspberry Pi

е) Тествайте достъпа и прехвърлянето на файлове от Raspberry Pi към вашия отдалечен сървър

Стъпка 1: А) Създайте частен PPK файл, Б) Създайте публичен ключ и В) Копирайте го на отдалечения сървър

А) Създайте частен PPK файл, Б) Създайте публичен ключ и В) Копирайте го на отдалечения сървър
А) Създайте частен PPK файл, Б) Създайте публичен ключ и В) Копирайте го на отдалечения сървър
А) Създайте частен PPK файл, Б) Създайте публичен ключ и В) Копирайте го на отдалечения сървър
А) Създайте частен PPK файл, Б) Създайте публичен ключ и В) Копирайте го на отдалечения сървър

За да създадете частен PPK файл, отворете PuttyGen на вашия компютър с Windows. Можете да получите достъп до PuttyGen, като щракнете с десния бутон върху иконата на шпакловка в лентата на задачите на Windows. От менюто PuttyGen изберете ключ, след това генерирайте двойка ключове, изберете опцията SSH2 -RSA ключ. Ще бъдете подканени да зададете парола, когато създавате частния ключ, а ако зададете парола, ще бъдете помолени за нея по време на бъдещи операции. Запазете личния ключ някъде сигурно на вашия компютър с Windows. След това ще видите публичния ключ в прозореца, както е показано на Фигура 2.

След това нека прехвърлим публичния ключ към отдалечения облачен сървър. Отворете сесия Putty към отдалечения облачен сървър, като използвате Putty. Да предположим, че сте влезли като remoteuser1, след което направете следното в CLI на отдалечения облачен сървър

cd /home /remoteuser1 (ако вече не е там) mkdir.ssh

nano.ssh/authorized_keys (Ще видите празен екран - поставете публичния ключ, показан на фигура 2, след което запишете и затворете този файл)

chmod 0700.ssh

chmod 0600 /home/remoteuser1/.ssh/authorized_keys

Стъпка 2: D) Конвертирайте частен PPK файл в OpenSSH ключ и E) Копирайте го в Raspberry Pi

За да преобразувате частния ключ в OpenSSH, отворете PuttyGen и след това отворете частния ключ, който сте създали по -рано - отидете на опцията Conversions в менюто, след което изберете Export OpenSSH key - моля, уверете се, че създаденият от вас файл има типа на файла.key. Запишете го някъде сигурно и след това отворете сесия за замазка, за да влезете във вашия Raspberry Pi. Копирайте файла с ключове в началната директория на Raspberry Pi на потребителския акаунт, който сте използвали за влизане в Raspberry Pi. Кажете, че ключът се нарича pitobot.key, след което изпълнете следните стъпки:

cd /home /pi

sudo mv pitobot.key/home/pi/

sudo chmod 600 pitobot.key

Сега сте готови да тествате дали вашата инсталация е успешна - Отново това се прави от Pi. Не забравяйте, че remoteuser1 е акаунтът на отдалечения облачен сървър, в чиято домашна директория сте запазили публичния ключ, а ipaddress е ipaddress на отдалечения облачен сървър.

Първо от Raspberry Pi, нека влезем в отдалечения облачен сървър, използвайки Putty. Въведете следните команди в Raspberry PI CLI. (Ако сте задали парола при създаването на частен ключ, сега ще бъдете помолени за това.)

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

Това ще ви влезе в CLI на отдалечения облачен сървър в домашната директория на remoteuser1. Като напишете 'exit; ще се върнете в CLI на вашия Raspberry Pi.

След това опитайте да прехвърлите файлове от отдалечения облачен сървър към Raspberry Pi. Използвайте следните команди: (Отново, ако сте задали парола при създаването на частен ключ, сега ще бъдете помолени за това.)

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

Това ще прехвърли всички файлове от папката/var/www/html/на отдалечения сървър в папката/home/pi/на вашия Raspberry Pi. (Двоеточието е много важно) Разбира се, можете да промените реда на командите и да прехвърлите файлове от Pi към отдалечения сървър.

Стъпка 3: Съображения за сигурност

Докато подходът на двойката ключове SSH подобрява сигурността, имайте предвид следното:

1. При активирани двойки ключове SSH, трябва да помислите за премахване на възможността потребителите да влизат директно в отдалечения сървър (Можете също да получите достъп до сървърите си, като използвате двойките ключове Putty в Windows, използвайки същата двойка ключове, а също така можете да помислите за деактивиране влезте и във вашия Pi). Бъдете внимателни, ако решите да направите това и не предприемайте голям взрив подход. За да направите това, трябва да деактивирате няколко конфигурации в конфигурационния файл на ssh. Правете това много внимателно. Командите са

nano/etc/ssh/sshd_config

И във файла направете следните промени

PasswordAuthentication no

UsePAM №

Запазете, излезте и след това рестартирайте SSH чрез systemctl restart ssh (Това е за Debian. Може да е различно в различните дистрибуции на Linux)

2) Пазете всичките си ключове в противен случай рискувате да нарушите данните или да нямате достъп до вашите сървъри. Препоръчвам да ги съхранявате в сигурно хранилище като bitwarden.com и да ограничавате достъпа до него чрез вашата политика за контрол на достъпа.

3) Използването на парола подобрява сигурността, но може да затрудни автоматизирането на cron задания и т.н. Решението за използване на тази и други функции трябва да се определи чрез оценка на риска, например, ако обработвате лични данни, тогава имате нужда от по -голям / пропорционален контрол.

Препоръчано: