Paano mag-SSH sa iyong VirtualBox Bisita

How Ssh Into Your Virtualbox Guest



May mga oras kung nais mong magkaroon ng isang malayuang pag-access sa iyong VM. Marahil, ito ay isang server operating system lamang na tumatakbo bilang isang VM, kung saan sinubukan mo ang iyong mga application bago mo talaga ideploy ang mga ito.

Ang pagkakaroon ng kakayahan sa SSH sa iyong Guest OS ay maaaring maging madaling gamiting kapag hindi mo nais na gamitin ang GUI ng iyong Virtual Machine. Simulan lamang ang iyong VM sa isang mode na walang ulo at SSH sa loob at labas nito nang hindi binubuksan ang maraming mga bintana sa iyong terminal.







Para sa mga bago sa ideya ng SSH, magkakaroon kami ng isang maikling pagpapakilala sa mga paggana ng SSH bago sumisid sa setup. Kailangan din naming talakayin ang mga setting na nauugnay sa network ng iyong VM upang matiyak na mayroon kang access sa VM na iyon mula sa kahit saan sa iyong LAN.



Narito ang pinasimple na modelo ng kung paano gumagana ang SSH. Lumilikha ka ng isang pares ng mga susi sa iyong lokal na computer. Isang pampublikong key at isang pribadong key. Ang mga mensahe na naka-encrypt gamit ang Public key ay maaaring ma-decrypt gamit ang pribadong key at kabaligtaran. Karaniwang nakaimbak ang mga key na ito sa iyong lokal na computer sa isang landas ~/.ssh/id_rsa (pribadong key) at ~/.ssh/id_rsa.pem (ang pampublikong key).

Pagkatapos ay pumunta ka sa iyong remote server, mag-login sa isang console bilang isang regular o root user, buksan ang file ~/.ssh/authorized_keys ng server na iyon. Dito ipinasok mo ang mga nilalaman ng iyong pampublikong key kung ano ito. Kapag tapos na iyan, maaari mong ssh bilang gumagamit na iyon sa server na ang .ssh direktoryo ay mayroong mga awtorisadong_keys, mula sa iyong lokal na aparato.

Ang .NS ipinapahiwatig ng extension na ang file na iyon ay ang pampublikong key na maaari mong ibahagi sa sinuman. Ang id_rsa bahagi nangangahulugan lamang kung anong ginagamit ang pag-encrypt na cipher (sa kasong ito nangyayari itong RSA). Ang pribadong key ay maaaring maprotektahan ng isang passphrase na nais mong ipasok, sa tuwing nais mong mag-login sa isang remote server gamit ang pribadong key.

Kung mayroon kang isang Mac, Linux o anumang iba pang sistema na tulad ng UNIX bilang iyong lokal na computer maaari kang makabuo at mamahala ng mga key gamit ang terminal, at maaari mo ring SSH sa mga malalayong server gamit ang parehong terminal. Para sa mga gumagamit ng Windows, iminumungkahi kong gamitin PuTTY o Git Bash ang huli ay ang aking personal na kagustuhan. Ang mga utos ay halos magkapareho kapag mayroon kang isang SSH client.

Pag-setup ng SSH-keys

Siguraduhin muna, kung walang mga ssh-key na nasa iyong direktoryo sa bahay. Suriin ang mga nilalaman ng iyong direktoryo sa bahay .ssh folder. Kung may pag-aalinlangan, i-back up ang mga nilalaman nito bago ipatupad ang sumusunod na utos. Ang mga programang tulad ng Filezilla ay gumagamit ng mga SSH key sa lahat ng oras, nang walang kaalaman ng gumagamit kaya't ang hakbang na ito ay napakahalaga.

Sa iyong lokal na makina , buksan ang terminal at ipasok ang utos:

$ssh-keygen

Susundan ito ng mga sumusunod na senyas na may mga halaga sa bracket na nagpapahiwatig ng mga default na halaga. Magpatuloy sa mga pahiwatig at bigyan ang iyong mga key ng isang ligtas na passphrase.

I-verify na ang mga susi ay nilikha sa pamamagitan ng pag-check sa mga nilalaman ng iyong ~ / .ssh folder.

$ls -sa~/.ssh

Kung nakikita mo ang mga file na tumutugma sa mga default na halagang ipinapakita sa ssh-keygen prompt pagkatapos lahat ay gumana ng maayos.

Ngayon buksan ang isang console sa iyong Virtual Machine . Suriin muna kung ang iyong VM ay mayroong SSH server na tumatakbo o hindi.

$katayuan sshd serbisyo

Kung hindi ito naka-install, gamitin ang iyong manager ng package upang maghanap at mai-install ang OpenSSH server. Kapag tapos na iyon siguraduhin na ang firewall ng iyong VM ay bukas sa numero ng port 22. Halimbawa, kung gumagamit ka ng Ubuntu bilang isang VM, ang default na firewall ufw dapat na hindi pinagana o dapat payagan ang mga koneksyon sa port 22 tulad nito:

$sudoufw katayuan

Kung kung hindi bukas sa port 22, gamitin ang sundin ang utos:

$sudopayw payaganssh

Susunod na buksan ang file ~ / .ssh /uthor_keys sa iyong VM, gamit ang iyong paboritong text editor. Maaari mong paganahin ang host-to-panauhin o bidirectional clipboard para sa susunod na hakbang na ito.

Sa loob ng file na ito (sa ilalim ng file, kung hindi ito walang laman) i-paste ang mga nilalaman ng iyong public key. Ang huling bahagi kung saan sinasabi ang iyong pangalan at ang lokal na host kung saan nabuo ang mga susi ay hindi ganon kahalaga sa natitirang string.

(Opsyonal) Hindi gumagamit ng mga SSH-key

Kung pinagkakatiwalaan mo ang iyong lokal na network, maaari mong gamitin ang hindi gaanong ligtas na paraan ng paggamit ng iyong UNIX password, upang maipasok sa iyong VM. Buksan ang file / etc / ssh / sshd_config sa iyong VM at palitan ang linya:

#PasswordAuthentication no

Sa

Pagpapatotoo ng Passwordoo

Kapag nakalagay na iyan, i-restart ang iyong SSH server.

$serbisyo sshd restart

Ngayon ay maaari mong gamitin ang regular na password na ginagamit mo upang mag-login sa iyong VM upang maipasok din ito.

Iyong Virtual Machine at Network

Para sa iyo na mag-ssh sa iyong VM, kapwa ang iyong lokal na computer (ang isa na may pribadong key) at ang VM ay dapat na nasa parehong network. Kaya maabot mo ang IP address ng VM na iyon. Ipapakita namin sa iyo kung paano idagdag ang VM sa iyong LAN.

Isaalang-alang natin ang halimbawa ng isang karaniwang pag-setup ng router ng bahay. Ang iyong computer, kasama ang iba pang mga aparato, ay nakakonekta sa home router. Gumaganap din ang router na ito bilang isang DHCP server, nangangahulugang nagtatalaga ito ng bawat aparato na nakakonekta dito, isang natatanging pribadong IP address. Nakakakuha ng iyong IP ang iyong desktop, ganoon din ang iyong telepono at iyong laptop. Ang mga aparato lamang na konektado sa router na ito ang maaaring makipag-usap sa isa't isa sa pamamagitan ng kanilang mga IP address.

Paganahin ang bridged networking mode sa mga setting ng iyong VM at lilitaw ang VM bilang konektado sa iyong home router (o isang katulad na server ng DHCP) na may isang pribadong IP. Kung ang isang pangalawang aparato ay konektado sa parehong network (sabihin, sa parehong home router) pagkatapos ay maaari itong magamit upang ssh sa VM.

Buksan ang VirtualBox Manager, piliin ang iyong target na VM, buksan ang Mga setting → Network at piliin ang Bridge Networking sa halip na NAT.

Tulad ng nakikita mo ang aking host ay konektado gamit ang Wireless upang ang koneksyon ay ibinabahagi din ng VM, kung gumagamit ka ng Ethernet, isang iba't ibang pangalan ng interface ang lalabas kung alin ang mabuti.

Ngayon, ang aking VM, na pinangalanan ubuntuvm, lalabas sa aking pag-setup ng LAN tulad ng sumusunod. Suriin ang iyong mga setting ng router upang makita kung ang parehong gumagana para sa iyo.

Kapag alam mo ang IP address ng iyong VM, maaari mong SSH dito sa pamamagitan ng pagpapatakbo ng utos:

$ssh <username> @ip.address.of.your.vm

Kung naglagay ka ng isang passphrase para sa iyong pribadong key sa mga hakbang sa itaas, sasabihan ka na muling ipasok ito.

Ayan yun! Ngayon ay maaari mong simulan ang iyong VM sa mode na walang ulo at ssh lamang sa kanila mula sa kahit saan sa iyong bahay. Inaasahan kong nahanap mong nakakainteres ang tutorial na ito, ipaalam sa amin kung mayroong anumang paksa na nais mong saklaw namin.