Talaan ng mga Nilalaman:
2025 May -akda: John Day | [email protected]. Huling binago: 2025-01-13 06:58
Ang layunin ng pagtuturo na ito ay upang ipakita sa iyo kung paano awtomatikong kumonekta nang ligtas mula sa iyong Raspberry Pi sa isang remote cloud server (at kabaliktaran) upang maisagawa ang mga pag-back up at pag-update atbp. Upang magawa ito, gumagamit ka ng mga pares ng SSH key kung saan ibigay ang pangangailangang tandaan ang mga password at bigyan ka ng isang mas ligtas na koneksyon.
(CAVEAT - Huwag subukang ito kung hindi ka may kakayahan sa pag-configure ng mga pahintulot sa Linux kung hindi man ay gagawin mo ang iyong system na mas mahina laban sa pag-atake ng mga hacker.)
Mga Kinakailangan
1. Raspberry Pi na may isang interface ng command line (CLI) tulad ng makikita mo sa Putty.
2. Pag-access sa isang remote cloud server na naka-host sa pamamagitan ng say OVH o DigitalOcean, na may isang CLI.
3. Isang Windows laptop o PC na may naka-install na Putty at PuttyGen.
Mga palagay
1. Mayroon kang ilang kaalaman sa mga utos ng Linux
2. Maaari mong ma-access ang iyong remote server gamit ang maginoo na mga manu-manong proseso, hal. FTP.
3. I-preinstall mo ang PuttyGen sa iyong Windows PC
Mga hakbang
Bilang buod, - Tingnan ang Larawan 1
a) Sa iyong Windows PC, lumikha ng isang Pribadong file ng PPK gamit ang PuttyGen
b) Sa iyong Windows PC, lumikha ng isang pampublikong file ng PPK gamit ang PuttyGen (awtomatiko itong ginagawa sa hakbang a)
b) Sa iyong Windows PC, kopyahin ang Public Key mula sa iyong Windows PC sa remote cloud server
d) Sa iyong Windows PC, i-convert ang Pribadong PPK file sa isang OpenSSH key gamit ang PuttyGen
e) Kopyahin ang OpenSSH key mula sa iyong Windows PC sa Raspberry Pi
f) Subukan ang pag-access at paglipat ng file mula sa Raspberry Pi sa iyong Remote server
Hakbang 1: A) Lumikha ng isang Pribadong PPK File, B) Lumikha ng isang Public Key at C) Kopyahin Ito sa Remote Server
Upang lumikha ng isang pribadong PPK file, buksan ang PuttyGen sa iyong Windows PC. Maaari mong ma-access ang PuttyGen sa pamamagitan ng pag-right click sa icon ng putty sa taskbar ng Windows. Mula sa menu ng PuttyGen, piliin ang key pagkatapos bumuo ng isang key pares, piliin ang pagpipilian na SSH2 -RSA key. Sasabihan ka na magtakda ng isang passphrase kapag nilikha mo ang pribadong key, at kung magtakda ka ng isang passphrase, hihilingin sa iyo ito sa mga pagpapatakbo sa hinaharap. I-save ang pribadong key sa isang lugar na ligtas sa iyong Windows PC. Makikita mo pagkatapos ang pampublikong key sa window pane tulad ng ipinakita sa Larawan 2.
Susunod, ilipat natin ang pampublikong key sa remote cloud server. Buksan ang isang session ng Putty sa remote cloud server gamit ang Putty. Sabihin nating nag-log in ka bilang remoteuser1 pagkatapos gawin ang sumusunod sa remote cloud server CLI
cd / home / remoteuser1 (kung wala na) mkdir.ssh
nano.ssh /uthorised_keys (Makakakita ka ng isang walang laman na screen - i-paste ang pampublikong key na ipinakita sa figure 2 pagkatapos ay i-save at isara ang file na ito)
chmod 0700.ssh
chmod 0600 / home /remoteuser1/.ssh/authorized_keys
Hakbang 2: D) I-convert ang Pribadong PPK File sa OpenSSH Key at E) Kopyahin Ito sa Raspberry Pi
Upang mai-convert ang pribadong key sa OpenSSH, buksan ang PuttyGen at pagkatapos buksan ang pribadong key na nilikha mo nang mas maaga - pumunta sa opsyong Mga Conversion sa menu pagkatapos piliin ang I-export ang OpenSSH key - pakitiyak na ang file na iyong nilikha ay may filetype.key. I-save ito sa isang lugar nang ligtas pagkatapos buksan ang isang masilya session upang mag-log in sa iyong Raspberry Pi. Kopyahin ang key file sa direktoryo ng bahay sa Raspberry Pi ng account ng gumagamit na ginamit mo upang mag-log sa Raspberry Pi. Sabihin na ang susi ay tinatawag na pitobot.key pagkatapos ay sundin ang mga hakbang na ito:
cd / bahay / pi
sudo mv pitobot.key / home / pi /
sudo chmod 600 pitobot.key
Handa ka na ngayong subukan kung matagumpay ang iyong pag-install - Muli, tapos na ito mula sa Pi. Tandaan, ang remoteuser1 ay ang account sa remote cloud server kung kaninong direktoryo sa bahay ang nai-save mo ang pampublikong key, at ang ipaddress ay ang ipaddress ng remote cloud server.
Una mula sa Raspberry Pi, mag-log on sa remote cloud server gamit ang Putty. I-type ang mga sumusunod na utos sa Raspberry PI CLI. (Kung nagtakda ka ng isang passphrase noong lumikha ka ng isang pribadong key, hihilingin sa iyo ngayon.)
sudo ssh -i /home/pi/pitobot.key remoteuser1 @ ipaddress
Ito ay mai-log ka sa CLI ng remote cloud server sa direktoryo ng home ng remoteuser1. Sa pamamagitan ng pag-type ng 'exit; babalik ka sa CLI ng iyong Raspberry Pi.
Susunod, subukang ilipat ang mga file mula sa remote cloud server papunta sa Raspberry Pi. Gamitin ang mga sumusunod na utos: (Muli, kung nagtakda ka ng isang passphrase noong lumikha ka ng isang pribadong key, hihilingin sa iyo ngayon.)
sudo scp -i /home/pi/pitobot.key remoteuser1 @ ipaddress: //var/www/html/*.* / home / pi /
Ililipat nito ang lahat ng mga file mula sa / var / www / html / folder sa remote server patungo sa / home / pi / folder sa iyong Raspberry Pi. (Napakahalaga ng colon) Maaari mong siyempre baguhin ang pagkakasunud-sunod ng mga utos at ilipat ang mga file mula sa Pi sa remote server.
Hakbang 3: Mga Pagsasaalang-alang sa Seguridad
Habang ang SSH key na diskarte ng pares ay nagpapabuti ng seguridad, isaalang-alang ang sumusunod:
1. Sa pinapagana ang mga pares ng key ng SSH, dapat mong isaalang-alang ang pag-alis ng kakayahang mag-log ang mga gumagamit nang direkta sa remote server (Maaari mo ring ma-access ang iyong mga server gamit ang mga key pares na Putty sa Windows gamit ang parehong key pares, at maaari mo ring isaalang-alang ang hindi pagpapagana mag-log in din sa iyong Pi). Mag-ingat kung pipiliin mong gawin ito at huwag gumawa ng isang malaking diskarte. Upang magawa ito, kailangan mong huwag paganahin ang ilang mga pagsasaayos sa ssh config file. Mag-ingat ka sa paggawa nito. Ang mga utos ay
nano / etc / ssh / sshd_config
At sa loob ng file gawin ang mga sumusunod na pagbabago
Ang PasswordAuthentication no
UsePAM no
I-save, lumabas pagkatapos ay muling simulan ang SSH sa pamamagitan ng systemctl restart ssh (Ito ay para sa Debian. Maaaring magkakaiba ito sa iba't ibang mga distro ng Linux)
2) Panatilihing ligtas ang lahat ng iyong mga susi kung hindi man ipagsapalaran mo ang isang paglabag sa data o walang pag-access sa iyong mga server. Inirerekumenda kong panatilihin ang mga ito sa isang ligtas na vault tulad ng bitwarden.com, at paghigpitan ang pag-access dito sa pamamagitan ng iyong patakaran sa control control.
3) Ang paggamit ng isang passphrase ay nagpapabuti ng seguridad ngunit maaari nitong gawing mas mahirap ang pag-automate ng mga trabaho sa cron atbp. Ang desisyon na gamitin ito at iba pang mga tampok ay dapat na matukoy ng pagtatasa ng peligro, halimbawa, kung nagpoproseso ka ng personal na data kung gayon kailangan mo ng mas malaki / proporsyonal na mga kontrol.