From d2b2db2ca8d6aeb6fd15799c07396282c8e72707 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikl=C3=B3s=20T=C3=B3th?= <tothmiklostibor@gmail.com> Date: Sat, 20 Mar 2021 20:39:43 +0100 Subject: [PATCH] fixes --- feladat.md | 221 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 221 insertions(+) create mode 100644 feladat.md diff --git a/feladat.md b/feladat.md new file mode 100644 index 0000000..e6e6fa7 --- /dev/null +++ b/feladat.md @@ -0,0 +1,221 @@ +# Gyakorlat + +## 0. csatlakozĂĄs a VM-hez + +[see here](sajĂĄt vm.md) + +Ha gondoljĂĄtok vagy ha valaki nem nĂŠzett videĂłt/jegyzetet ĂŠs nem ĂŠrti mi van, +akkor akĂĄr itt ĂŠrdemes shellt mutogatni. + +## 1. sajĂĄt user lĂŠtrehozĂĄsa root jogokkal + +Mindenki vĂĄlaszt magĂĄnak usert (nem kell schacc legyen), aztĂĄn +```shell +sudo useradd -m bela +``` +`-m` = legyen home mappa +ha megadjĂĄk a `-G sudo` kapcsolĂłt is, akkor nice, mĂĄr van is sudo joguk, +a kĂśvi rĂŠsz skippelhetĹ + +legyen jelszĂł: +```shell +passwd bela +``` + +legyen sudo: +```shell +sudo usermod -aG sudo bela +``` +ezzel lett sudo joga + +### AlternatĂv + +legyen user: +```shell +sudo adduser bela +``` + +legyen sudo: +```shell +sudo adduser bela sudo +``` + +--- +a vĂŠgĂŠn jelentkezzetek ĂĄt az Ăşj userbe + + +## 2. shell jĂĄtszadozĂĄs + +Feladat: szĂĄmoljuk meg, hogy a *Bee Movie* szĂśvegĂŠben hĂĄnyszor szerepel a +kis ĂŠs nagybetĹąs "bee" szĂł. +Ha lehet oldjĂĄk meg maguktĂłl, de vezethetitek is. + +A szĂśveg elĂŠrhetĹ itt: https://home.sch.bme.hu/~mikewashere/linux/best_movie_ever.txt + +VezessĂźk vĂŠgig Ĺket lĂŠpĂŠsenkĂŠnt, hogy mit csinĂĄl a csomĂł parancs: + +```shell +curl https://home.sch.bme.hu/~mikewashere/linux/best_movie_ever.txt +``` +-> letĂślti a szĂśveget ĂŠs kiĂrja + +olvassunk be less-sel +```shell +curl https://home.sch.bme.hu/~mikewashere/linux/best_movie_ever.txt | less +``` + + +Na de oldjuk is meg a feladatot: + +OkĂŠs, de: +szĂĄmolni a `wc`-vel lehet, de kĂŠne szĹąrni a bee-kre, arra kell a `grep`, +de: +a `grep` az egĂŠsz sort odaadja, amiben egyszer is ott a bee +tehĂĄt szĂŠt kĂŠne szedni Ăşgy, hogy minden szĂł kĂźlĂśn sor legyen +MegoldĂĄs: cserĂŠljĂźk ki a space-eket `\n`-re a `tr` hasznĂĄlatĂĄval. + +```shell +curl https://home.sch.bme.hu/~mikewashere/linux/best_movie_ever.txt | tr " " "\n" +``` +Az idĂŠzĹjelek fontosak. + +Most mĂĄr soronkĂŠnt jelenik meg, mehet a grep. +```shell +curl https://home.sch.bme.hu/~mikewashere/linux/best_movie_ever.txt | tr " " "\n" | grep -i bee +``` +Na most van egy csomĂł bee-nk, mehet a wc. + +```shell +curl https://home.sch.bme.hu/~mikewashere/linux/best_movie_ever.txt | tr " " "\n" | grep -i bee | wc -l +``` +Elvileg **171**-et kĂŠne kapni. + +Ha zavar minket a curl letĂśltĂŠs mutatĂł szĂśvege, akkor adjunk neki egy `2>/dev/null`-t. + +```shell +curl https://home.sch.bme.hu/~mikewashere/linux/best_movie_ever.txt 2>/dev/null | tr " " "\n" | grep -i bee | wc -l +``` + +2 = stderr, /dev/null = speciĂĄlis file, amibe bĂĄrmit Ărhatunk, elveszik + +--- + +Feladat: A mĂŠhek szĂĄma ĂŠvrĹl ĂŠvre csĂśkken, *let's save the bees*! +Ărjuk bele a "bee"-ket egy fileba! + +```shell +curl https://home.sch.bme.hu/~mikewashere/linux/best_movie_ever.txt | tr " " "\n" | grep -i bee > save_the_bees.txt +``` + +`nano save_the_bees.txt`-vel megleshetjĂźk, hogy mĹąkĂśdĂśtt. + +## 3. Script irogatĂĄs + +Feladat: csinĂĄljunk egy scriptet, ami megmenti a mĂŠheket, ĂŠs egy tehĂŠnnel kimondatja, hogy +hĂĄnyan vannak. + +A `cowsay` nincs fent a VM-eken, telepĂtsĂŠtek. +```shell +sudo apt install cowsay +``` +Nyugodtan prĂłbĂĄlgassĂĄtok ki. +```shell +cowsay hello +echo hello | cowsay +``` + +CsinĂĄljunk nano-val (vagy vim-mel, ha valaki azt szereti inkĂĄbb) +egy Ăşj file-t, nevezzĂźk el `bees.sh`-nak. + +```shell +nano bees.sh +``` + +VezessĂŠtek vĂŠgig Ĺket a megĂrĂĄsĂĄn vagy csinĂĄltassĂĄtok meg velĂźk, itt egy mintamegoldĂĄs: +```shell +#!/bin/bash + +curl https://home.sch.bme.hu/~mikewashere/linux/best_movie_ever.txt | tr " " "\n" | grep -i bee > save_the_bees.txt +echo $(cat save_the_bees.txt | wc -l ) mĂŠh van. | cowsay +``` +*A felsĹ sor opcionĂĄlis.* + +Ha megvan, futtassĂĄtok: +```shell +bash bees.sh +``` +vagy, ha odatettĂŠtek az elejĂŠre a shebang-et: +```shell +chmod +x bees.sh +./bees.sh +``` + +## 4. Webszerver telepĂtĂŠse + +Feladat: ĂĄllĂtsanak be egy webszervert nginx-el, ĂŠs rakjanak ki valami szĂśveget. + +TelepĂtĂŠs: +```shell +sudo apt install nginx +``` + +MagĂĄtĂłl elindul, nĂŠzzĂźk meg: +```shell +systemctl status nginx +``` + +AlapbĂłl a `/var/www/html`-t szolgĂĄlja ki, menjĂźnk oda +```shell +cd /var/www/html +ls -la +``` +LĂĄtjuk, hogy root-ĂŠ minden, adjuk oda a www-data-nak, magunknak meg adjunk www-data csoporttagsĂĄgot +ĂŠs adjunk a csoportnak minden jogot rekurzĂvan. +```shell +sudo chown -R www-data:www-data /var/www/html +sudo usermod -aG www-data bela +sudo chmod -R g+rwx /var/www/html +``` +`-R`: rekurzĂvan +vegyĂźk fel a csoporttagsĂĄgot, ehhez vagy ki ĂŠs bejelentkezni kell vagy: +```shell +newgrp www-data +``` + +Most tĂśrĂśljĂźk a korĂĄbbi weblapot ĂŠs tegyĂźnk ki valami sajĂĄtot: +```shell +cd /var/www/html +rm index.nginx-debian.html +nano index.html # Ărjanak bele bĂĄrmi funky szĂśveget +``` + +## 5. CsinĂĄljunk tĹązfalat + +Az UFW (Uncomplicated FireWall) egy egyszerĹą tĹązfalvezĂŠrlĹ progi. +NĂŠzzĂźk meg fut-e: +```shell +sudo systemctl status ufw +sudo ufw status +``` +Fut, de ki van kapcsolva. + +ElĹszĂśris engedjĂźk be az SSH-t ĂŠs http-t, hogy ne zĂĄrjuk ki magunkat: +```shell +sudo ufw limit ssh +sudo ufw allow http +``` + +A limit-tel limitĂĄlva engedĂŠlyeztĂźk az ssh-t, Ăgy nem lehet gyorsan brute-force-olni. + +ĂŠs kapcsoljuk be: +```shell +sudo ufw enable +sudo ufw status +``` +nice. + +## Extra feladatĂśtlet turbóújoncoknak + +CsinĂĄljanak valami fancy weboldalt. BĂĄrmit. + + -- GitLab