itcollege.ee -> wiki Super+R winver https://en.wikipedia.org/wiki/Comparison_of_platform_virtualization_software http://upload.itcollege.ee/edmund/iso/ubuntu/ubuntu-16.04.3-server-amd64.iso virtualbox oma arvutisse: allalaadimine + extension pack toolbar lubamine https://www.virtualbox.org/ VM ei paigaldata füüsilise masina juhtprogramme (driver) ühikud binary prefix https://en.wikipedia.org/wiki/Binary_prefix recovery mode virtuaalmasina haldusnupud töötamise ajal ubuntu boot options SLA apt #Debian, ubuntu jne (Advanced Package Tool) chocolatey #windows https://chocolatey.org/ brew #macOS https://brew.sh/ APT Advanced Persistent Threat ebamääraselt jõuline küberoht http://www.arvutikaitse.ee/apt-jouliselt-ebamaarane-kuber-oht/ umount, grep mount sync lsblk - vaatame plokkseadmeid, sr0 on optiline seade sudo mkdir /mnt/dvd sudo mount /dev/sr0 /mnt/dvd #külgeühendamine umount /mnt/dvd #lahtiühendamine cd /mnt/dvd sudo ./VBoxLinuxAdditions.run eject /dev/sr0 id protsess taustale: CTRL+Z tagasi: fg #foreground fg 2 #kutsub esile 2.protsessi taustalt jobs #näitab taustal olevaid protsesse NB! CTRL+C katkestab protsessi! skriptides kasutamise moment skriptides kasutamise moment snapshot, mida salvestab offline vs online snapshot changed state cat /etc/os-release dkms - dynamic kernel module support .ko - tuuma moodulid Linuxis .so #teek (library) gcc - GNU C Compiler apt purge --auto-remove #eemaldab mittevajalikud pakid koos sätetega apt search dkms | grep -w dkms lsmod #kuvab laaditud tuuma moodulid modprobe #laadib modprobe -r #eemaldab exit codes 0 #viga ei olnud väljumiskoodi vaatamine echo $? ifconfig -a http://enos.itcollege.ee/~edmund/materials/net/network-interface-names-fix.txt cp /etc/network/interfaces /etc/network/interfaces.backup sudo nano /etc/network/interfaces ifup eth0 #võrguliidese käivitamine ifdown eth0 #võrguliidese seiskamine ping 192.168.56.101 #VM 2.võrguliides eth1 ping 192.168.56.1 #klassimasina virtuaalne võrguliides vboxnet0 Linux: ping neti.ee -c2 #2 paketti ping neti.ee #lõputu Windows ping neti.ee #4 paketti ping neti.ee -t #lõputu # # # find . -type f -iname "*.vdi" Miks "Try Ubuntu" on parem? https://www.teamviewer.com/en/ quick support start.teamviewer.com võrguhaldus View->Autoresize guest display WineHQ - ühilduvuskiht (compatibility layer) https://www.winehq.org/ https://www.playonlinux.com/en/ GParted kettajagude tabelitüübid MSDOS (MBR) - vanem (BIOS), max size 2 TiB * kas 4 primaarset (primary partition, /dev/sda1...4) * või 1..3 primaarset (/dev/sda1...3) + 1 laiendkettajagu (extended partition, /dev/sda2,4) koos vähemalt 1 (kuni 128) loogilise kettaga (logical volume, /dev/sda5...) = kokku 131 kettajagu sama tüüpi kettajaod peavad asetsema järjest sd - SCSI disk GPT - uuem (UEFI/EFI BIOS), max size 8 ZiB * kõik kettajaod primaarsed, piiri ei ole kuid üldiselt 128 võimaldatakse levinud OSides BIOS, logo keelamine, klahvivalikud MS Windows nõuab käivitumiseks primaarset kettajagu 50GB saaleala (swap area) 4 GiB juurkataloog / EXT4 15360 MB kodukataloog /home EXT4 ülejäänud restricted extras tarkvarapaketi haldus Uuendada süsteem https://wiki.itcollege.ee/index.php/Ubuntu_Repositooriumid_uusim_tarkvara /etc/apt/sources.list # # # süsteemisalv (system tray) ping Linux: ping neti.ee -c2 #saadetakse 2 paketti ping neti.ee #lõputu Windows: ping neti.ee #saadetakse 4 paketti ping neti.ee -t #lõputu Täidetavate vormidega PDF'i loomine: http://www.libreoffice.ee/2013/03/10/kuidas-writeriga-eelvormistatud-pdf-dokumente-luua/ Uusimad varamud https://wiki.itcollege.ee/index.php/Ubuntu_Repositooriumid_uusim_tarkvara VÕRGUNDUS xxx.xxx.xxx.0 võrk xxx.xxx.xxx.255 leviaadress (broadcast) linux: ifconfig -a windows: ipconfig /all võrgusätted: /etc/network/interfaces failis /etc/network/interfaces.d/ kaustas, mida loetakse siis kui /etc/network/interfaces failis on kirjas rida: source /etc/network/interfaces.d/* Võrk ei tööta siis kui muutunud võrguliideste nimed ei ole muudetud ka võrgusätetes -> seda eriti serveris võrguliideseid saab: ifup eth0 eth1 #käivitada ifdown eth0 eth1 #seisata kõik /etc/network/interfaces failis kirjeldatud liidesed korraga: ifup -a #käivitada ifdown -a #seisata WAN - Wide Area Network (laivõrk) -> internet LAN - Local Area Network (kohtvõrk) -> intranet VPN - Virtual Private Network (virtuaalne privaatvõrk) -> mitmepunkti-VPN (~Tor) ISP - Internet Service Provider VPN - ISP ei näe, mida alla laadin - avalikus võrgus ühenduse turvamine https://www.privacytools.io/ http://jodies.de/ipcalc https://wiki.itcollege.ee/index.php/TTU_VPN https://wiki.itcollege.ee/index.php/Sshuttle Võrkude käsitsi seadistamine 2.võrguliidese puhul üks variant toimib korraga 1.variant auto eth1 iface eth1 inet static address 172.16.0.1/24 network 172.16.0.0 2.variant auto eth1 iface eth1 inet static address 172.16.0.1 netmask 255.255.255.0 network 172.16.0.0 server: 172.16.0.1/24 desktop: 172.16.0.2/24 serverist: ping 172.16.0.2 -c2 tööjaamast: ping 172.16.0.1 -c2 dhclient -r eth1 #IP-aadressi vabastamine dhclient eth1 #IP-aadressi uuestipärimine DHCP serverist ifdown eth1 #liides seisma ifup eth1 #liides käima võrguteenuse taaskäivitus service networking restart nimeserverite vaatamine: cat /etc/resolv.conf internetiühenduse ja nimelahenduse kontroll: ping neti.ee -c2 Väline IP-aadress: netiotsing: what is my ip address https://whatismyipaddress.com/ https://toolbar.netcraft.com/site_report HITSA -> EENet (NREN National Research and Education Network) http://www.eenet.ee/EENet/eeneti_nimeserverid_postiserver.html ns2.eenet.ee (asukohaga Tartus) 193.40.0.12 ns.eenet.ee (asukoht Tallinnas) 193.40.56.245 nmap ---- sudo -i apt update && apt install nmap && apt-get clean kiire võrgu skaneerimine nmap -F 172.16.0.0/24 /etc/services failist leiab kasutuselolevad pordid nimeserverite vaatamine cat /etc/resolv.conf resolvconf ---------- nano /etc/resolvconf/resolv.conf.d/head nameserver 193.40.0.12 nameserver 193.40.56.245 F3 (CTRL+O) F2 (CTRL+X) taaskäivitame võrgu: ifdown eth0 ifconfig eth0 #kontrolliks ifup eth0 kontroll: cat /etc/resolv.conf kui resolvconf ei meeldi siis eemaldada (sudo apt purge resolvconf) see pakett ja kirjutada nimeserverid otse faili /etc/resolv.conf Avalikud nimeserverid (public DNS) https://en.wikipedia.org/wiki/Google_Public_DNS 8.8.8.8 8.8.4.4 https://en.wikipedia.org/wiki/OpenDNS 208.67.222.222 208.67.220.220 hosts fail https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system hosts faili võltsimine xxx.xxx.xxx.xxx neti.ee xxx.xxx.xxx.xxx www.neti.ee xxx.xxx.xxx.xxx 195.50.209.246 Aliasi võib lisada, neid tühikuga eraldades: xxx.xxx.xxx.xxx neti.ee neti neti2 netstat -tulnp #kuvab TCP, UDP ühendused netstat -nltp #kuvab vaid TCP ühendused -l, --listening Show only listening sockets. (These are omitted by default.) --numeric , -n Show numerical addresses instead of trying to determine symbolic host, port or user names. -p, --program Show the PID and name of the program to which each socket belongs. -t TCP connections -u UDP connections man netstat #lisainfo iptraf-ng #võrgu jälgimine reaalajas käsureal # # # SSH ssh student@enos.itcollege.ee ssh student@enos.itcollege.ee -p 2222 -p 2222 mittestandardne port 2222, vaikimisi on 22 ja seda ei ole vaja kirjutada enos.itcollege.ee (193.40.231.204) failis /etc/hosts saab muuta IP ja nime seost https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system pordid (port - virtuaalne pistik): cat /etc/services | grep -i ssh IANA ports - serveri võtmed - /etc/ssh/ $ ll /etc/ssh/ total 356 drwxr-xr-x 2 root root 4096 jaan 30 11:07 ./ drwxr-xr-x 176 root root 12288 veebr 27 11:59 ../ -rw-r--r-- 1 root root 300261 aug 11 2016 moduli -rw-r--r-- 1 root root 1756 aug 11 2016 ssh_config -rw-r--r-- 1 root root 2589 mai 22 2017 sshd_config -rw------- 1 root root 668 mai 5 2017 ssh_host_dsa_key -rw-r--r-- 1 root root 613 mai 5 2017 ssh_host_dsa_key.pub -rw------- 1 root root 227 mai 5 2017 ssh_host_ecdsa_key -rw-r--r-- 1 root root 185 mai 5 2017 ssh_host_ecdsa_key.pub -rw------- 1 root root 419 mai 5 2017 ssh_host_ed25519_key -rw-r--r-- 1 root root 105 mai 5 2017 ssh_host_ed25519_key.pub -rw------- 1 root root 1679 mai 5 2017 ssh_host_rsa_key -rw-r--r-- 1 root root 405 mai 5 2017 ssh_host_rsa_key.pub -rw-r--r-- 1 root root 338 mai 5 2017 ssh_import_id - kasutaja võtmed - ~/.ssh/ -- ~/.ssh/known_hosts ssh-keyscan enos.itcollege.ee ssh-keyscan -t ecdsa enos.itcollege.ee | ssh-keygen -lf - | cut -d':' -f2 | rev | cut -d' ' -f3 | rev > /tmp/var1 ssh-keyscan -t ecdsa enos.itcollege.ee | ssh-keygen -Bf - $ ssh-keyscan -t ecdsa enos.itcollege.ee | ssh-keygen -lf - # enos.itcollege.ee:22 SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.10 256 SHA256:OLl89EFRSLMfPyhF5oWXmJEO1cAaY/3T3PN3tnE0hX0 enos.itcollege.ee (ECDSA) /tmp sisu tühjendatakse taaskäivitamisel /var/tmp sisu ei tühjendata taaskäivitamisel kaustal on eriõigus (kleepbit, sticky bit) > loob või kirjutab olemasoleva faili üle >> loob või lisab olemasoleva faili lõppu >/etc/fail nt: fstab stdout - standard output (konsool, terminal) stdin - standard input stderr - standard error # # # wget -O- -q http://enos.itcollege.ee/ssh-fingerprints.txt | grep ECDSA | grep SHA256 | cut -d':' -f2 | rev | cut -d' ' -f18 | rev > /tmp/var2 wget GUI Windowsile: HTTrack http://www.httrack.com/ wget http://enos.itcollege.ee/ssh-fingerprints.txt wget -O- http://enos.itcollege.ee/ssh-fingerprints.txt grep mitu tingimust korraga wget -O- -q http://enos.itcollege.ee/ssh-fingerprints.txt | grep 'ECDSA\|SHA256' ... ei ole see, mida antud olukorras vaja curl #analoog cat /tmp/var1 cat /tmp/var2 MITM https://en.wikipedia.org/wiki/Man-in-the-middle_attack kui serverivõti on muutunud siis kuvatakse selline teade: ---------------------------------------------------------- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key has just been changed. The fingerprint for the ECDSA key sent by the remote host is SHA256:. Please contact your system administrator. Add correct host key in /home/user/.ssh/known_hosts to get rid of this message. Offending ECDSA key in /home/user/.ssh/known_hosts:1 remove with: ssh-keygen -f "/home/user/.ssh/known_hosts" -R server.address.ee ECDSA host key for server.address.ee has changed and you have requested strict checking. Host key verification failed. https://hakshop.com/products/bash-bunny 1.rea kustutamine (Offending ECDSA key esimesel real) sed -i 1d ~/.ssh/known_hosts # # # apt search ssh | grep -w ssh apt show ssh serverile ligi BIOSi tasandil sõltumata OSist: HP: iLO https://en.wikipedia.org/wiki/HP_Integrated_Lights-Out Dell: iDRaC elliptilise krüpto tugi alates OpenSSH 6.5 ssh-keygen parameetri -E tugi alates OpenSSH 6.8 OpenSSH versioon: ssh -V 8*1024=8192 16*1024=16384 teise pordi peal: ssh-copy-id -i ~/.ssh/voti_rsa student@192.168.0.1 -p 2222 ssh-copy-id tulemusena tekkis serveris ~/.ssh/authorized_keys fail ja sinna salvestati kopeeritava salajase võtme avalik võti sisselogimine: ssh -i ~/.ssh/voti_rsa student@192.168.0.1 ssh -i ~/.ssh/voti_rsa student@192.168.0.1 -o IdentitiesOnly=yes ssh -i ~/.ssh/voti_ed25519 student@192.168.0.1 kasutaja root on lukus: sudo cat /etc/shadow | grep root root:!:17567:0:99999:7::: :!: kasutaja on lukus, salasõna määramata :: salasõna kustutatud (enter'iga sisse) :!sdjsnfsdjfm...: salasõna lukus serverivõtmete tabeli loomine: http://enos.itcollege.ee/~edmund/materials/ssh/ssh-fingerprint-server-bbd.sh ufw GUI (tulemüür) paigaldamine (vajadusel) sudo apt update && sudo apt install gufw && sudo apt clean logifaili jälgimine reaalajas tail -f /var/log/auth.log veaotsing: ssh -v user@IP ssh -vv user@IP ssh -vvv user@IP KAKS OLULIST FAILI ------------------ klient: ~/.ssh/known_hosts #serveri avalikud võtmed N: esimesel sisselogimisel serverisse tehakse siia sissekanne server: ~/.ssh/authorized_keys #desktopi avalikud võtmed N: ssh-copy-id kopeerib avaliku võtme sellesse faili www.dwavesys.com Serverivõtmete sõrmejäljed: ssh-keygen -lf /etc/ssh/*.pub -rw------- 1 student student 3381 Mar 6 13:15 voti_rsa -rw-r--r-- 1 student student 737 Mar 6 13:15 voti_rsa.pub * * * Oma avaliku võtme mugav jagamine ---------------------------------- cat ~/.ssh/voti.pub > index.html VÕI cat ~/.ssh/voti.pub > index.php curl ssh.aadress.ee >> ~/.ssh/authorized_keys wget -O- -q ssh.aadress.ee >> ~/.ssh/authorized_keys - - - ssh.aadress.ee/url hiljem võtmepaari loomisel: ... -C "Nimi ssh.aadress.ee/url" * * * sudo ufw enable ufw allow ssh # # # ssh kasutaja@IP ssh kasutaja@IP -p xxxx # # # shellshare anomaalia: ifconfig xqueuelen:1000 # # # OSADMIN2 -> vt tunnilogi # # # FAILIÕIGUSED käivitusõigus: - käivitav fail (Win: exe (GUI), msi (GUI), com (CLI) jne; Linux: vastava õigusega fail, lisaks põhimõtteliselt ka tarkvarapaketid, nt deb, rpm; konteinervormingud (Flatpak, Snap)), binaarfailid -> binaarfailid (masinkood) -- exe -> iselahtipakkiv arhiiv; paigaldust nõudev; autonoomne -- msi -> saab ka lahti võtta, muuta, kokku tagasi panna - skriptid (Win: bat, vbs jt; Linux: sh jt); skripti esimene rida shebang -> vt artikkel wiki.itcollege.ee https://wiki.itcollege.ee/index.php/Shebang MS Windowsis topeltlaiendid pahavara levitamiseks: *.docx.vbs -> tuntud failitüübid (-laiend) on vaikimisi peidetud eraldi: markeerimiskeeled jne ug+rw-x,o= infokäsud: which käsk #näitab asukoha stat #info faili kohta vastavalt parameetritele file #info faili kohta vastavalt faili sisule type cd #info käsu kohta ls *.mp3 > mp3-failid.txt ls ???.mp3 #? üks sümbol, * suvaline arv sümboleid ACL Access Control List (kasutaja-, grupipõhine) -> Linuxi puhul eeldab vastavat haakimisparameetrit (mount, fstab) Take Ownership (omaniku muutmise õigus) Sysinternals -> ERD Disk MS Windows PE (Preinstalled Environment) which firefox #kus asub file /usr/bin/firefox #info faili kohta SetUID chmod 4000 -> siin muudetakse vaid esimest numbrit, teisi ei muudeta salasõna loomisel rakendatakse krüptograafilist soola GRUB'i valikud tulevad ette SHIFT-klahvi all hoides alglaadimise ajal üks näidisründevektor: aadress.ee/../../../../../../../etc/shadow /var/www/html//public_html/... adduser addgroup on ka useradd salasõna määramine passwd deluser delgroup kasutaja ajutised failid minema: rm -rf /tmp/* 2>/dev/null vead: rm -rf /proov 2>/dev/null on veel /var/tmp/ vood 2 veavoog umask on tegelike õiguste pöördväärtus teiseks kasutajaks logimine su - Vabavaraline (free software) alternatiiv MS Windows'ile https://www.reactos.org/ esimene sümbol d #kataloog l #link - #fail +w #kirjutusõigust teistele automaatselt ei panda # # #