Съдържание:
- Стъпка 1: А) Създайте частен PPK файл, Б) Създайте публичен ключ и В) Копирайте го на отдалечения сървър
- Стъпка 2: D) Конвертирайте частен PPK файл в OpenSSH ключ и E) Копирайте го в Raspberry Pi
- Стъпка 3: Съображения за сигурност
Видео: Защитена SSH / SCP връзка от Raspberry Pi към облачен сървър за архивиране и актуализации: 3 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:52
Целта на тази инструкция е да ви покаже как да се свържете автоматично и сигурно от вашия 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 файл, отворете 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 задания и т.н. Решението за използване на тази и други функции трябва да се определи чрез оценка на риска, например, ако обработвате лични данни, тогава имате нужда от по -голям / пропорционален контрол.
Препоръчано:
Отваряне на гаражни врати с обратна връзка, използвайки Esp8266 като уеб сървър .: 6 стъпки
Отваряне на гаражни врати с обратна връзка, използвайки Esp8266 като уеб сървър: Здравейте, ще ви покажа как да направите лесен начин за отваряне на гаражни врати.-ESP8266 е кодиран като уеб сървър, вратата може да бъде отворена навсякъде по света-С обратна връзка, ще знаете дали вратата е отворена или затворена в реално време-просто, само един пряк път, за да
RF предавател Flysky, захранван чрез USB + кабелна сигнална връзка към компютър + безплатен софтуер за симулатор: 6 стъпки
Радиочестотен предавател Flysky, захранван чрез USB + кабелна сигнална връзка към компютър + безплатен софтуер за симулатор: Ако сте като мен, бихте искали да тествате вашия радиочестотен предавател и да научите, преди да катастрофирате вашия скъп RF самолет/дрон. Това ще ви достави допълнително забавление, като същевременно спестите много пари и време. За да направите това, най -добрият начин е да свържете вашия RF предавател към вас
TCP/IP връзка през GPRS: Как да изпращате данни към сървър с помощта на модул SIM900A: 4 стъпки
TCP/IP връзка през GPRS: Как да изпращате данни към сървър с помощта на модул SIM900A: В този урок ще ви разкажа как да изпращате данни към TCP сървър, използвайки модул sim900. Също така ще видим как можем да получаваме данни от сървър до клиент (GSM модул)
Връзка към OpenManipulator: 20 стъпки (със снимки)
OpenManipulator Link: Роботните манипулатори са разработени за много видове структури. OpenManipulator има най -простата структура на серийни връзки, но другата структура може да бъде полезна за конкретни задачи, затова предоставяме манипулатори с различна структура като OpenManipulat
Направете своя Pi (местен) облачен сървър!: 19 стъпки (със снимки)
Направете своя Pi (локален) облачен сървър!: Запазете и осъществете достъп до документи, снимки и музика на вашия собствен локален Pi Cloud сървър! Най -хубавото: можете да го използвате, ако или когато интернет падне (или ако сте на отдалечено място и искате достъп до Уикипедия). О, хей, и ако твоят приятел получи едно и то