Baassüsteem: 2 Linuxi tööjaama graafilise liidesega kaughalduse tarbeks (võib ka nii, et 1 tööjaam on isiklik ja teine on kaastudengil - saab teha paaristööd) 1 Linuxi server SSH proxy tarbeks http://upload.itcollege.ee/edmund/ova/inf-hw/ -> UbuntuDesktop16041-template.ova -> UbuntuServer16041-template.ova Importimisel luua ka uus MAC-aadress. Kui on kaks desktop masinat siis võib nimetada näiteks: desktop1 desktop2 mugavam teha kui graafilise liidesega masinates Guest Additions paigaldatud: - töötab ka copy-paste virtuaalmasina ja füüsilise masina vahel - võimalik aktiveerida virtuaalmasinas Shared Clipboard ja Drag'n'drop väärtuseks Bidirectional - pilti (eraldusvõimet) saab suuremaks muuta, vajadusel ka täisekraanile panna - jne - https://www.virtualbox.org/manual/ch04.html How To Add VirtualBox Guest Additions https://www.youtube.com/watch?v=29PXbbXFD8c SSH proxy masina nimeks võibki sama nime kasutada. Peale virtuaalmasinate importimist kasulik ära teha hetktõmmis (snapshot), et oleks võimalik taastada esialgne olukord kiirelt kui peaks midagi valesti minema. Võimalus teha kahel viisil: - sisevõrgu IP-aadresside baasil - välisvõrgu IP-aadresside baasil, kasutades VPN'i (Hamachi) Võrkude seadistamine -------------------- Siin näites on kasutatud sisevõrgu IP-aadresse. Võib ehitada ka ainult VPN'i baasil välisvõrguaadresside peale. desktop masinad: 1 NAT liides 1 internal network (intnet) - nähtav vaid virtuaalmasinate poolt, seadistada käsitsi sisevõrgu IP peale sama võrk kui SSH proxy masinas võib vabalt valida sisevõrgu IP-aadressi, pikemalt vt http://enos.itcollege.ee/~edmund/inf-hw/praktikumid/virtuaallaborid.txt võrkude vaatamine: ifconfig ifconfig -a (-a all - näitab ka seadistamata võrguliideseid) võrguliidese seiskamine: ifdown enp0s8 võrguliidese käivitamine: ifup enp0s8 (asendada enp0s8 konkreetse võrguliidese nimega) võikide võrguliideste puhul, mis on kirjeldatud /etc/network/interfaces failis: seiskamine: ifdown -a käivitamine: ifup -a näiteks desktop1: sudo -i nano /etc/network/interfaces --------------------------- # intnet adapter: auto enp0s8 iface enp0s8 inet static address 172.16.10.2/24 broadcast 172.16.10.255 network 172.16.10.0 näiteks desktop2: sudo -i nano /etc/network/interfaces --------------------------- # intnet adapter: auto enp0s8 iface enp0s8 inet static address 172.16.10.3/24 broadcast 172.16.10.255 network 172.16.10.0 kui tudengid teevad paaris siis võiks olla eraldi võrgud, näiteks 172.16.10.0/24 192.168.10.0/24 näiteks: # intnet adapter: auto enp0s8 iface enp0s8 inet static address 192.168.10.3/24 broadcast 192.168.10.255 network 192.168.10.0 SSH proxy: 1 NAT liides 1 internal network (intnet) - nähtav vaid virtuaalmasinate poolt, seadistada käsitsi sisevõrgu IP peale sama võrk kui SSH proxy masinas 1 host-only adapter - sama võrk, mis on host-only Virtualboxis (vaikimisi 192.168.56.0/24 - vaadata klassimasinas kui see virtuaalmasina töötab, ifconfig -a - siis näete võrguliidest vboxnet0, mille IP on ilmselt 192.168.56.1) Host-Only Adapter'i lisamiseks virtuaalmasinas tuleb eelnevalt VirtualBox'i sätetes lisada vastav võrguliides: File -> Preferences (CTRL+G) Network -> Host-only Networks Add new host-only network (klõpsata plussmärki) näiteks: sudo -i nano /etc/network/interfaces --------------------------- # intnet adapter: auto enp0s8 iface enp0s8 inet static address 172.16.10.1/24 broadcast 172.16.10.255 network 172.16.10.0 # host-only adapter: auto enp0s9 iface enp0s9 inet static address 192.168.56.10/24 broadcast 192.168.56.255 network 192.168.56.0 SSH võtmed ----------- Desktop masina(te)s paigaldame ka SSH serveri: sudo apt update && sudo apt install ssh openssh-blacklist* -y && sudo apt clean metapakett ssh sisaldab nii OpenSSH serverit kui ka klienti kontroll kas SSH server töötab: service ssh status ... väljumiseks q Luua klassimasinas (füüsilises masinas) SSH võtmepaar: ssh-keygen -t rsa -b 4096 -C "Eesnimi Perenimi posti@aadress.ee +372xxxxxxxx" kui soovite oma nimega võtmepaari siis: ssh-keygen -t rsa -b 4096 -f ~/.ssh/voti -C "Eesnimi Perenimi posti@aadress.ee +372xxxxxxxx" -C kommentaar aitab serveri adminnidel faili ~/.ssh/authorized_keys lugedes teha kindlaks kellele avalik võti kuulub Kopeerida võti ka teise masinasse kas siis intnet või VPN kaudu. 1. klassimasin -> SSH proxy 2. SSH proxy -> desktop1 3. SSH proxy -> desktop2 kopeerimiskäsud: ssh-copy-id -i ~/.ssh/voti kasutaja@IP-aadress #see tekitab serveris faili ~/.ssh/authorized_keys scp ~/.ssh/voti* kasutaja@IP-aadress:/home/kasutaja/.ssh/ #sellega kopeeritakse SSH võtmepaar serverisse kui ~/.ssh/ kaustas on ainult üks võtmepaar vaikimisi nimega (nt: id_rsa) siis piisab ka: ssh-copy-id kasutaja@IP-aadress kasutaja on ilmselt student, salasõna on sama õigused ka paika (seda teha igas masinas): chmod 700 ~/.ssh/ && chmod 600 ~/.ssh/* Püüda ühenduda teise masinasse kasutades VPN'i liidese ham0 IP-aadressi. Ühendumisel kasutada SSH võtmefaile. Kiireks ligipääsuks luua graafilises Linuxi tööjaamas vastavad bash'i aliased (~/.bash_aliases). alias kh='ssh -X -i .~/ssh/voti student@serveri_IP-aadress' kh - kaughaldus -X lubab graafilise liidese edastuse, võimalik serverist GUI rakendusi üle SSH tunneli kliendimasinas käivitada (eeldab ka serveri sätetefailis /etc/ssh/sshd_config parameetrit X11Forwarding yes - vaikimisi aktiivne) # # # SSH proxy --------- ssh -At student@192.168.56.10 ssh -At student@172.16.10.2 kus: ssh-proxy: 192.168.56.10 desktop: 172.16.10.2 kontrolliks mõlemas masinas: w ... näitab kes on sees ja mida teeb Sama asja (SSH proxy) võib ka ainult üle VPN'i proovida: - lülitada välja intnet võrguliidesed -- sudo ifdown enp0s8 -- VirtualBox'il lülitada välja "Cable Connected" intnet võrguliidestel - seejärel kasutada ainult VPN-liideseid (ham0 - Hamachi) selliselt, et masinad on küll Hamachi võrgus aga ei ole veel ühendatud ühte sessiooni kus nad üksteist näevad. VPN'i puhul on see olukord, et neile IP-aadressidele saab ligi ka otse füüsilisest masinast kuna Hamachi VPN'i võrgud on otse üle välise interneti ligipääsetavad. SSH proxy on vajalik ennekõike siis kui otseligipääs puudub, näiteks ettevõtte sisevõrgus olevale masinale ligipääsemiseks. # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # Võrgust sõltumatu ja katkematu kaughalduse puhul on tuntud Teamviewer. Kuna aga Teamviewer katkestab ärikasutuse kahtluse korral iga 5 min järel 2 minutiks ühenduse siis on vaja midagi stabiilsemat. Kui IP-aadress asub vahemikus, mis on tuntud kui juriidilistele isikutele eraldatud vahemik siis see ühendus ka ärikasutuse kahtluse alla langeb. Sisevõrgu liidesed olid eelnevalt selleks, et virtuaalmasinad üksteist näeksid VirtualBox'i sees. Kui soovime luua olukorda kus nad üksteist ei näe siis tuleb need võrguliidesed välja lülitada. Seiskame eelnevalt loodud intnet liidesed desktop1 ja desktop2 masinates: sudo ifdown enp0s8 Ühendame kaabli lahti (Cable connected välja lülitada) ka Virtualboxis intnet liidestel. VPN vastavalt nõudele --------------------- Kasutama Hamachi tarkvara https://www.vpn.net/linux arch - näitab Linuxi arhitektuuri (ka: uname -m) tekib võrguliides ham0 alternatiivid - http://alternativeto.net/software/hamachi/?license=opensource Graafiline liides Hamachi'le on Haguichi: sudo add-apt-repository -y ppa:webupd8team/haguichi sudo apt update && sudo apt install -y haguichi && sudo apt clean Käivitada Haguichi -> Configure (nõuab superkasutaja õigusi) Siis luua VPN sessioon nimega: <1. tudengi ÕIS'i kasutaja>-<2. tudengi ÕIS'i kasutaja>, salasõna student näiteks: jsuur-mmuru Selle sessiooni abil ühendub ka teine tudeng Hamachi ainult käsureal (CLI) ----------------------------- - laadida Linuxile alla http://vpn.net/linux - paigaldada: sudo dpkg -i pakinimi.deb #asendada pakinimi tegeliku nimega - logida sisse: sudo hamachi login #sellega antakse hamachi võrgu IP, mida näeb käsuga hamachi - valime masina hüüdnime võrgus: sudo hamachi set-nick uusnimi - ühineda sessiooniga: sudo hamachi join v6rgunimi #asendada v6rgunimi tegeliku nimega - lisainfo: hamachi -h Ka peale taaskäivitamist pannakse hamachi käima ja logitakse automaatselt võrku Kui vahetatakse võrku (nt LAN<->WiFi<->4G) siis võib olla vajalik ühenduse kiiremaks ümberlülitamiseks Hamachi teenuse taaskäivitamine: sudo service logmein-hamachi restart #kasutada TAB-lõpetust vigade vältimiseks kirjutamisel NX server --------- Paigaldada NX server https://www.nomachine.com Seadmete seadistamiseks võimalus minna ühendatud olekus hiirekursoriga kaughalduse ülemisse paremasse nurka või kasutada vaikimisi kiirklahve CTRL+ALT+0. SSH võtmega isikutuvastus NX'is - https://www.nomachine.com/AR02L00785 sisuliselt: cat ~/.ssh/keyfile.pub >> ~/.nx/config/authorized.crt seda teha kasutaja kodukataloogis kellena hakatakse edaspidi NX'iga sisse logima. Veel vajalikke nippe NX'i kasutamiseks -------------------------------------- Getting started with NoMachine https://www.nomachine.com/getting-started-with-nomachine Getting started with NoMachine for Android https://www.nomachine.com/getting-started-with-nomachine-for-android Quick Guide to the NoMachine GUI https://www.nomachine.com/DT11M00106 What's new? https://www.nomachine.com/what-s-new-in-nomachine Enabling and disabling the NoMachine device sharing services manually https://www.nomachine.com/DT07M00089 Creating new virtual desktop sessions https://www.nomachine.com/creating-new-virtual-desktop-sessions How to transfer files between computers https://www.nomachine.com/sharing-files-between-computers Managing the NoMachine 'Connection preferences' https://www.nomachine.com/managing-nomachine-connection-preferences How can I send Ctrl+Alt+Delete to a remote Windows computer? https://www.nomachine.com/AR02L00784 Changing how you view the remote host https://www.nomachine.com/changing-how-you-view-the-remote-host Switching the view between multi-monitors during a remote desktop session https://www.nomachine.com/switching-the-view-between-multi-monitors-during-a-remote-desktop-session Default ports used by NoMachine 4 or later https://www.nomachine.com/AR01L00770 Piirangutest: https://www.nomachine.com/AR08M00858 Küsimusi ja vastuseid NX teemadel: https://superuser.com/questions/tagged/nomachine Ühendumine NX'iga ------------------ Kliendimasin määrab SSH võtmefailiga ühendumise ja näitab ette privaatse võtme kohalikus masinas. Servermasin kuhu ühendutakse - seal peab olema tehtud see cat ~/.ssh/keyfile.pub >> ~/.nx/config/authorized.crt liigutus kasutaja kodukataloogis Ühendunud olekus siis määrata ka teise masina kõvaketas ühendatuks juba edaspidise ühenduse loomise ajal. Tulemüür -------- Turvaline oleks kasutada ka tulemüüri. Seda kõikides masinates. sudo -i ufw allow ssh ufw allow 4000 ufw enable oleku vaatamine: ufw status ufw status verbose #detailsem info lisalugemist: https://help.ubuntu.com/community/UFW https://wiki.ubuntu.com/UncomplicatedFirewall Võrgu skaneerimine ------------------ vaatame, mis masinad on "elus" kogu võrgus: nmap -sn xxx.xxx.xxx.0/24 lisainfo: http://lmgtfy.com/?q=nmap+howto https://www.google.ee/search?q=nmap+howto