<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="hu">
	<id>https://admin.wiki.kzoli.hu/index.php?action=history&amp;feed=atom&amp;title=Ubuntu_szerver_alaptelep%C3%ADt%C3%A9s_%2822.04_LTS%29</id>
	<title>Ubuntu szerver alaptelepítés (22.04 LTS) - Laptörténet</title>
	<link rel="self" type="application/atom+xml" href="https://admin.wiki.kzoli.hu/index.php?action=history&amp;feed=atom&amp;title=Ubuntu_szerver_alaptelep%C3%ADt%C3%A9s_%2822.04_LTS%29"/>
	<link rel="alternate" type="text/html" href="https://admin.wiki.kzoli.hu/index.php?title=Ubuntu_szerver_alaptelep%C3%ADt%C3%A9s_(22.04_LTS)&amp;action=history"/>
	<updated>2026-06-07T12:38:46Z</updated>
	<subtitle>Az oldal laptörténete a wikiben</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://admin.wiki.kzoli.hu/index.php?title=Ubuntu_szerver_alaptelep%C3%ADt%C3%A9s_(22.04_LTS)&amp;diff=955&amp;oldid=prev</id>
		<title>KZoli: Új oldal, tartalma: „Ebben a leírásban Ubuntu &#039;&#039;&#039;Focal Fossa (20.04 LTS)&#039;&#039;&#039;, illetve &#039;&#039;&#039;Jammy Jellyfish (22.04 LTS)&#039;&#039;&#039; szervergép grafikus felület és specifikus szolgáltatások nélk…”</title>
		<link rel="alternate" type="text/html" href="https://admin.wiki.kzoli.hu/index.php?title=Ubuntu_szerver_alaptelep%C3%ADt%C3%A9s_(22.04_LTS)&amp;diff=955&amp;oldid=prev"/>
		<updated>2023-04-12T10:13:52Z</updated>

		<summary type="html">&lt;p&gt;Új oldal, tartalma: „Ebben a leírásban Ubuntu &amp;#039;&amp;#039;&amp;#039;Focal Fossa (20.04 LTS)&amp;#039;&amp;#039;&amp;#039;, illetve &amp;#039;&amp;#039;&amp;#039;Jammy Jellyfish (22.04 LTS)&amp;#039;&amp;#039;&amp;#039; szervergép grafikus felület és specifikus szolgáltatások nélk…”&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Új lap&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Ebben a leírásban Ubuntu &amp;#039;&amp;#039;&amp;#039;Focal Fossa (20.04 LTS)&amp;#039;&amp;#039;&amp;#039;, illetve &amp;#039;&amp;#039;&amp;#039;Jammy Jellyfish (22.04 LTS)&amp;#039;&amp;#039;&amp;#039; szervergép grafikus felület és specifikus szolgáltatások nélküli alaptelepítését végezzük el. A leírás mindkét kiadásra egyaránt alkalmazható (az esetleges eltérések külön fel vannak tüntetve). Az eljárás &amp;quot;bármilyen&amp;quot; szerverre alkalmazható. &lt;br /&gt;
&lt;br /&gt;
Ez a leírás elsősorban technikai (checklist jellegű), az elméleti megfontolásokat az [[Ubuntu szerver házirend]] tartalmazza.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Work in progress! Kritikával olvasd!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
==Előfeltételek==&lt;br /&gt;
===Fizikai gép vagy üres VM esetén===&lt;br /&gt;
* Működő hardver, konzol hozzáférés, tudjon a telepítő médiumról (valós vagy virtuális CD-ről, USB-ről) bootolni.&lt;br /&gt;
* Lásson ki (védett, NAT-olt) hálózaton keresztül az Internetre. &lt;br /&gt;
* Megfelelő architektúrájú Ubuntu Server boot médium - 64 bites (Intel) CPU és legalább 2 GB RAM esetén a 64 bites lemezképet használjuk!&lt;br /&gt;
===Előtelepített VM esetén===&lt;br /&gt;
* Lehetőleg csak az alap szolgáltatásokkal, grafikus felület nélkül telepített VM, SSH-n vagy virtuális konzolon root (sudo root) hozzáféréssel.&lt;br /&gt;
* Lásson ki (védett, NAT-olt) hálózaton keresztül az Internetre.&lt;br /&gt;
&lt;br /&gt;
==Telepítési beállítások==&lt;br /&gt;
Ez a szakasz csak fizikai gép vagy üres VM esetén érdekes - az &amp;#039;&amp;#039;Ubuntu Live Server 20.04&amp;#039;&amp;#039; telepítő médiumról bootolva a telepített rendszer első tényleges indulásáig tart, és a védett hálózatra(!) csatlakozó telepítendő gép számára működő Internet kapcsolatot igényel.&lt;br /&gt;
&lt;br /&gt;
* Nyelv tetszés szerint lehet &amp;#039;&amp;#039;English&amp;#039;&amp;#039; vagy &amp;#039;&amp;#039;Hungarian&amp;#039;&amp;#039;.&lt;br /&gt;
* A billentyűzet legyen &amp;#039;&amp;#039;Magyar&amp;#039;&amp;#039; - mivel az adminisztrátorok kliensgépe általában magyar billentyűzetkiosztású, sok kellemetlenséget megelőzhetünk ezzel.&lt;br /&gt;
* A telepítés legyen &amp;#039;&amp;#039;Ubuntu Server&amp;#039;&amp;#039; - a &amp;#039;&amp;#039;minimized&amp;#039;&amp;#039;-ben nincs benne egy halom, nekünk fontos csomag. Jobb a békesség :). A &amp;#039;&amp;#039;3rd party drivers&amp;#039;&amp;#039; virtuális gépen általában szükségtelen, de fizikai szervergép esetén kapcsoljuk be.&lt;br /&gt;
* Ha van fix IP-nk, azt már itt állítsuk be. Belső hálózaton lévő lévő gépnél (általában ilyen környezetben telepítünk) érdemes a belső DNS szerver (ami gyakran a &amp;#039;&amp;#039;gateway&amp;#039;&amp;#039;) mellé másodlagosan egy publikus DNS szervert is felvenni (ha nincs jobb ötletünk, legyen &amp;#039;&amp;#039;8.8.8.8&amp;#039;&amp;#039;).&lt;br /&gt;
* Particionálás &amp;#039;&amp;#039;&amp;#039;TODO!&amp;#039;&amp;#039;&amp;#039; - ha nem kívánunk R/O illetve nem futtatható partíciókat, általában maradhat az Ubuntu alapértelmezése (1G &amp;#039;&amp;#039;/boot&amp;#039;&amp;#039;, a többi a &amp;#039;&amp;#039;/&amp;#039;&amp;#039;). Alapértelmezett particionálás esetén, virtuális gépen (nézetem szerint) nem szükséges LVM-et használni, a hypervisor ezt a funkciót biztosítja. Ha nincsenek különleges igények, titkosítatlan &amp;#039;&amp;#039;ext4&amp;#039;&amp;#039; fájlrendszert használhatunk (ez az alapértelmezés is).&lt;br /&gt;
* Az első (sudo-képes) felhasználó számára (egyéb igény híján) használjuk a &amp;#039;&amp;#039;sysadmin&amp;#039;&amp;#039; (GECOS: &amp;#039;&amp;#039;System Administrator&amp;#039;&amp;#039;) felhasználónevet. Ebben a stádiumban a jelszó még lehet triviális.&lt;br /&gt;
* Kérjünk SSH szerver telepítést.&lt;br /&gt;
* Ne kérjünk előtelepítést (&amp;#039;&amp;#039;featured snaps&amp;#039;&amp;#039;), teljesen kontrollálni szeretnénk a telepítendő szolgáltatásokat.&lt;br /&gt;
&lt;br /&gt;
==A frissen telepített rendszer beállításai==&lt;br /&gt;
Ha eddig konzolon dolgoztunk volna, innen a telepítést kényelmesebb SSH-n bejelentkezve folytatni. Lépjünk be a telepítés során létrehozott, &amp;#039;&amp;#039;sudo&amp;#039;&amp;#039;-képes (UID: 1000-es) Linux felhasználóként - előtelepített VM esetén lehetséges, hogy ilyen még nincsen, ez esetben &amp;#039;&amp;#039;root&amp;#039;&amp;#039;-ként - és hajtsuk végre az alábbiakat: &lt;br /&gt;
===UMASK beállítások===&lt;br /&gt;
Ezeket a beállításokat érdemes a lehető legkorábban elvégezni, így a továbbiakban létrehozandó fájlok egységes fájlrendszeri jogosultságokkal jönnek létre. &lt;br /&gt;
&lt;br /&gt;
Az Ubuntu alapértelmezett UMASK beállításai szerint a (nem &amp;#039;&amp;#039;root&amp;#039;&amp;#039;) felhasználók állományai rw-rw-r-- (664), könyvtárai rwxrwxr-x (775) jogosultságokkal jönnek létre, amit túl engedékenynek tartunk; rw-rw---- (660) és rwxrwx--- (770) jogokat szeretnénk beállítani. A &amp;#039;&amp;#039;root&amp;#039;&amp;#039; számára meghagyjuk a rw-r--r-- (644) és rwxr-xr-x (755) alapértelmezett jogosultságokat.&lt;br /&gt;
====Mindenki számára (007)====&lt;br /&gt;
Az összes felhasználót érintően a &amp;#039;&amp;#039;/etc/login.defs&amp;#039;&amp;#039;-ben módosítsuk az &amp;#039;&amp;#039;UMASK&amp;#039;&amp;#039; értékét:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo nano /etc/login.defs&amp;lt;/pre&amp;gt;&lt;br /&gt;
Módosítsuk a fájlban, majd CTRL-O, enter, CTRL-X: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[...]&lt;br /&gt;
UMASK 007&lt;br /&gt;
[...]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Speciálisan a root számára (022)====&lt;br /&gt;
A &amp;#039;&amp;#039;root&amp;#039;&amp;#039; számára írjuk elő a tradícionális &amp;#039;&amp;#039;UMASK&amp;#039;&amp;#039; értéket (login és non-login shell esetére is):&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo nano /root/.bashrc&amp;lt;/pre&amp;gt;&lt;br /&gt;
Szúrjuk be a file végére, majd CTRL-O, enter, CTRL-X: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[...]&lt;br /&gt;
umask 022&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====sudo használata esetén (022)====&lt;br /&gt;
Írjuk elő, hogy a &amp;#039;&amp;#039;sudo&amp;#039;&amp;#039; használata esetén ne a hívó &amp;#039;&amp;#039;UMASK&amp;#039;&amp;#039;-ja érvényesüljön, hanem az itt megadott:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo visudo&amp;lt;/pre&amp;gt;&lt;br /&gt;
Szúrjuk be a &amp;#039;&amp;#039;Defaults&amp;#039;&amp;#039; szakasz végére, majd CTRL-O, enter, CTRL-X: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[...]&lt;br /&gt;
Defaults        umask=0022&lt;br /&gt;
Defaults        umask_override&lt;br /&gt;
[...]&amp;lt;/pre&amp;gt;&lt;br /&gt;
A beállítások érvényesítéséhez itt célszerű a gépet újraindítani.&lt;br /&gt;
====Ellenőrzés====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Bejelentkezés&lt;br /&gt;
!Parancs&lt;br /&gt;
!Eredmény&lt;br /&gt;
|-&lt;br /&gt;
| UID=1000 felhasználóként&lt;br /&gt;
| umask&lt;br /&gt;
| 0007&lt;br /&gt;
|-&lt;br /&gt;
| sudo -i&lt;br /&gt;
| umask&lt;br /&gt;
| 0022&lt;br /&gt;
|-&lt;br /&gt;
| su -&lt;br /&gt;
| umask&lt;br /&gt;
| 0022&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===A home könyvtárak opcionális átköltöztetése===&lt;br /&gt;
Amennyiben kis méretű &amp;#039;&amp;#039;root&amp;#039;&amp;#039; partícióval dolgozunk, célszerű a &amp;#039;&amp;#039;home&amp;#039;&amp;#039; könyvtárakat permanensen a &amp;#039;&amp;#039;/var&amp;#039;&amp;#039;-ba áthelyezni, és symlinkelni:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo mv /home /var/home; sudo ln -s /var/home /home&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;Figyelem:&amp;#039;&amp;#039; szigorú (secure) partíció csatolás esetén ez azt eredményezi, hogy a &amp;#039;&amp;#039;home&amp;#039;&amp;#039; könyvtárakban csak trükkökkel lehet scripteket futtatni!&lt;br /&gt;
===A sysadmin felhasználó alapbeállításai===&lt;br /&gt;
Ebben a szakaszban a telepítés során létrehozott (UID: 1000) &amp;#039;&amp;#039;sudo&amp;#039;&amp;#039;-képes Linux felhasználó számára készítünk alapbeállításokat. &lt;br /&gt;
&lt;br /&gt;
Amennyiben előtelepített VM-en dolgozunk és ez a felhasználó még nem létezne, hozzuk létre az alábbi (root-ként kiadott) parancsokkal:&lt;br /&gt;
&amp;lt;pre&amp;gt;adduser --gecos &amp;quot;System Administrator&amp;quot; sysadmin  # kér egy jelszót a felhasználó számára&lt;br /&gt;
adduser sysadmin sudo&amp;lt;/pre&amp;gt;&lt;br /&gt;
A jelszó lehetőleg ne triviális, preferáltan generált legyen (pl. [https://passwordsgenerator.net/ innen]). A jelszóval belépést SSH-n tiltani fogjuk és csak a virtuális konzolra tartjuk fent, illetve a sudo-hoz fogjuk majd használni a jelszót.&lt;br /&gt;
&lt;br /&gt;
Lépjünk be &amp;#039;&amp;#039;sysadmin&amp;#039;&amp;#039; (vagy ha más néven hozták létre, az UID: 1000-es) felhasználóként, és hajtsuk végre az alábbiakat:&lt;br /&gt;
====Profilbeállítások====&lt;br /&gt;
* Bár az alaptelepített &amp;#039;&amp;#039;nano&amp;#039;&amp;#039; teljesen használható, részemről az &amp;#039;&amp;#039;mcedit&amp;#039;&amp;#039;-et preferálom - &amp;#039;&amp;#039;opcionálisan&amp;#039;&amp;#039; legyen ez az alapértelmezett editor; &lt;br /&gt;
* Az alapértelmezett (pl. az &amp;#039;&amp;#039;ls&amp;#039;&amp;#039; kimenetében megjelenő) dátum formátuma a &amp;#039;&amp;#039;locale&amp;#039;&amp;#039; szerinti helyett &amp;#039;&amp;#039;parse&amp;#039;&amp;#039;-olhatóbb legyen; &lt;br /&gt;
&amp;lt;pre&amp;gt;nano $HOME/.profile&amp;lt;/pre&amp;gt;&lt;br /&gt;
Szúrjuk be a file végére, majd CTRL-O, enter, CTRL-X:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Custom editor.&lt;br /&gt;
export EDITOR=&amp;quot;/usr/bin/mcedit&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# More parseable ls -la format.&lt;br /&gt;
export TIME_STYLE=&amp;quot;long-iso&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
A beállítások a legközelebbi bejelentkezésnél érvényesülhessenek.&lt;br /&gt;
&lt;br /&gt;
====Biztonsági beállítások====&lt;br /&gt;
Tegyük priváttá a felhasználó HOME könyvtárát:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod -R o-rwx $HOME&lt;br /&gt;
chmod g+rwx $HOME    # feleljen meg az UMASK-nak&lt;br /&gt;
ls -lad $HOME        # drwxrwx--- sysadmin sysadmin&amp;lt;/pre&amp;gt;&lt;br /&gt;
Mivel a &amp;#039;&amp;#039;sysadmin&amp;#039;&amp;#039; alapvetően nem interaktív felhasználó, hanem egy indirekt belépés a &amp;#039;&amp;#039;root&amp;#039;&amp;#039; jogosultság eléréséhez, nem hagyjuk, hogy a shelljére vonatkozó beállításokat megváltoztassa:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo echo  # hogy alább már ne kérjen jelszót&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;export user=&amp;#039;sysadmin&amp;#039;&lt;br /&gt;
chmod 440 /home/$user/.bashrc; sudo chattr +i /home/$user/.bashrc&lt;br /&gt;
chmod 440 /home/$user/.bash_logout; sudo chattr +i /home/$user/.bash_logout&lt;br /&gt;
chmod 440 /home/$user/.profile;sudo chattr +i /home/$user/.profile&amp;lt;/pre&amp;gt;&lt;br /&gt;
Ezután készítsük elő a &amp;#039;&amp;#039;sysadmin&amp;#039;&amp;#039; számára a nyilvános kulcsú távoli bejelentkezéshez szükséges állományokat:&lt;br /&gt;
&amp;lt;pre&amp;gt;mkdir /home/$user/.ssh&lt;br /&gt;
touch /home/$user/.ssh/authorized_keys&amp;lt;/pre&amp;gt;&lt;br /&gt;
Amennyiben vannak publikus kulcsaink a &amp;#039;&amp;#039;sysadmin&amp;#039;&amp;#039; felhasználóként történő bejelentkezéshez, töltsük fel és másoljuk be azokat az &amp;#039;&amp;#039;authorized_keys&amp;#039;&amp;#039; állományba. Ezután zárjuk le ezt az állományt:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod 400 /home/$user/.ssh/authorized_keys&lt;br /&gt;
chmod 500 /home/$user/.ssh/&lt;br /&gt;
sudo chattr +i /home/$user/.ssh/authorized_keys&amp;lt;/pre&amp;gt;&lt;br /&gt;
A fenti beállításokkal már csak a &amp;#039;&amp;#039;root&amp;#039;&amp;#039; tud a &amp;#039;&amp;#039;sysadmin&amp;#039;&amp;#039; felhasználó nevében történő bejelentkezéshez szükséges kulcsokat felvenni (az &amp;#039;&amp;#039;immutable&amp;#039;&amp;#039; bit levétele után).&lt;br /&gt;
&lt;br /&gt;
===Az SSH démon beállítása===&lt;br /&gt;
A leírt telepítés során az &amp;#039;&amp;#039;ssh&amp;#039;&amp;#039; szerver és kliens már települt, most nézzük át az &amp;#039;&amp;#039;sshd&amp;#039;&amp;#039; beállításait:&lt;br /&gt;
&lt;br /&gt;
* Tiltsuk le a &amp;#039;&amp;#039;root&amp;#039;&amp;#039; belépését ssh-n keresztül! Házirendünkben a &amp;#039;&amp;#039;root&amp;#039;&amp;#039; felhasználóhoz nyilvános kulcsot senkitől sem fogadunk el (így a &amp;#039;&amp;#039;root&amp;#039;&amp;#039;-hoz mindig két lépés kell: &amp;#039;&amp;#039;sudo&amp;#039;&amp;#039;-képes felhasználóként, pl. &amp;#039;&amp;#039;sysadmin&amp;#039;&amp;#039;-ként kell belépni - kulccsal vagy jelszóval - és &amp;#039;&amp;#039;sudo&amp;#039;&amp;#039;-zni). Ha valamiért szükséges automata &amp;#039;&amp;#039;root&amp;#039;&amp;#039; login, akkor megtartjuk az alapértelmezett, csak kulccsal történő belépést; ha nincs ilyen igény, a közvetlen belépést teljesen letiltjuk. A konzolos belépésre ez a beállítás nem hat, a virtuális vagy valódi konzolon továbbra is beléphetünk &amp;#039;&amp;#039;root&amp;#039;&amp;#039;-ként.&lt;br /&gt;
* &amp;#039;&amp;#039;Opcionálisan&amp;#039;&amp;#039;, amennyiben a &amp;#039;&amp;#039;sudo&amp;#039;&amp;#039;-képes felhasználónkhoz már feltöltöttünk nyilvános kulcsot (és működését ellenőriztük!), tiltsuk le a jelszóval történő belépést mindenki számára. Ez automatikusan megvéd a próbálgatásos (brute force) támadásoktól. A konzolos belépésre ez a beállítás nem hat, a virtuális vagy valódi konzolon továbbra is beléphetünk jelszóval.&lt;br /&gt;
* &amp;#039;&amp;#039;Opcionálisan&amp;#039;&amp;#039;, amennyiben nem az alapértelmezett TCP:22-es portot használjuk, állítsuk át a portszámot is (ez nézetem szerint nem célszerű, mert a közbenső tűzfalak valószínűleg nincsenek rá felkészülve).&lt;br /&gt;
Mindezeket legegyszerűbben egy új, &amp;#039;&amp;#039;overlay&amp;#039;&amp;#039; beállító állományban adhatjuk meg:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo nano /etc/ssh/sshd_config.d/custom.conf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Vegyük fel az alábbiakat, majd CTRL-O, Enter, CTRL-X: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# What ports, IPs and protocols we listen for&lt;br /&gt;
#Port XXXXX&lt;br /&gt;
PermitRootLogin no&lt;br /&gt;
PubkeyAuthentication yes&lt;br /&gt;
PasswordAuthentication no&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Indítsuk újra az &amp;#039;&amp;#039;ssh&amp;#039;&amp;#039; démont (ha nem változtattunk TCP portot, a meglévő munkamenet nem fog megszakadni):&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo systemctl restart sshd&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Szoftverforrások beállítása===&lt;br /&gt;
Az alap segédeszközök telepítése előtt ellenőrizzük, hogy minden repositoryhoz hozzáférünk-e:&lt;br /&gt;
&amp;lt;pre&amp;gt;apt-cache policy | grep http | awk &amp;#039;{print $2 $3}&amp;#039; | sort -u&lt;br /&gt;
# látjuk-e mind a négyet: main, restricted, universe, multiverse (opcionálisan backports is)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Ha valamelyik (általában az utolsó kettő) hiányozna, adjuk hozzá:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo add-apt-repository universe&lt;br /&gt;
sudo add-apt-repository multiverse&amp;lt;/pre&amp;gt;&lt;br /&gt;
Frissítsük a telepített csomagokat:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt update; sudo apt upgrade&amp;lt;/pre&amp;gt;&lt;br /&gt;
A terjesztés alapértelmezésben tartalmazza a [https://snapcraft.io/ Snaps] Store (korábban Ubuntu Software Center) kezelőprogramját, erre azonban szervergépen nincs szükségünk. Eltávolításához adjuk ki az alábbi parancsokat:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt purge snapd&lt;br /&gt;
sudo apt autoremove&lt;br /&gt;
sudo rm -rf /root/snap&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Alap segédeszközök===&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt install acl htop mc needrestart net-tools tofrodos unzip zip&amp;lt;/pre&amp;gt;&lt;br /&gt;
A Midnight Commanderben hasznos beállítani (&amp;#039;&amp;#039;mc&amp;#039;&amp;#039;, F9, Beállítások, Alapbeállítások) a saját szövegszerkesztő használatát (F9, Beállítások, Saját szövegszerkesztő, OK). &lt;br /&gt;
&lt;br /&gt;
Az &amp;#039;&amp;#039;mcedit&amp;#039;&amp;#039;-ben (F9, Beállítások, Általános) az új sorban automatikus behúzást (ha be lenne kapcsolva) és a látható tabulátorokat(!) kikapcsolni, végül az &amp;#039;&amp;#039;mc&amp;#039;&amp;#039; beállításokat elmenteni (F9, Beállítások, Beállítások mentése).&lt;br /&gt;
&lt;br /&gt;
===Lokalizáció===&lt;br /&gt;
Ellenőrizzük az időzónát:&lt;br /&gt;
&amp;lt;pre&amp;gt;timedatectl&amp;lt;/pre&amp;gt;&lt;br /&gt;
Szükség esetén állítsuk be (budapesti lokalizációt feltételezve):&lt;br /&gt;
&amp;lt;pre&amp;gt;timedatectl list-timezones | grep Budapest  # Europe/Budapest&lt;br /&gt;
sudo timedatectl set-timezone Europe/Budapest&lt;br /&gt;
timedatectl                                 # ellenőrzés&amp;lt;/pre&amp;gt;&lt;br /&gt;
Ha még nem létezne, készítsük el a magyar nyelvi lokalizációt:&lt;br /&gt;
&amp;lt;pre&amp;gt;locale -a  # ha hu_HU.UTF8 nem szerepelne &lt;br /&gt;
&lt;br /&gt;
sudo locale-gen hu_HU.UTF-8&lt;br /&gt;
sudo update-locale&amp;lt;/pre&amp;gt;&lt;br /&gt;
===Hostnév és szerepnév beállítása===&lt;br /&gt;
Ellenőrizzük, és szükség esetén változtassuk meg a gép hostnevét:&lt;br /&gt;
&amp;lt;pre&amp;gt;hostnamectl | grep -i static                # lekérdezés&lt;br /&gt;
sudo hostnamectl set-hostname new_hostname  # változtatás&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A domain névvel kiegészített hostnevet (&amp;#039;&amp;#039;fully qualified hostname&amp;#039;&amp;#039;) a &amp;#039;&amp;#039;/etc/hosts&amp;#039;&amp;#039; állomány szerkesztésével állíthatjuk be (a sorrend fontos!):&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo mcedit /etc/hosts&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
127.0.0.1 localhost&lt;br /&gt;
127.0.1.1 new_hostname.domain.name new_hostname&lt;br /&gt;
[...]&amp;lt;/pre&amp;gt;&lt;br /&gt;
Ellenőrzés:&lt;br /&gt;
&amp;lt;pre&amp;gt;hostname         # new_hostname&lt;br /&gt;
hostname --fqdn  # new_hostname.domain.name&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;Opcionálisan&amp;#039;&amp;#039;, amennyiben a gép &amp;#039;&amp;#039;hostname&amp;#039;&amp;#039; által mutatott elnevezése mellett létezik annak valamilyen szerepneve, és ezt szeretnénk a konzol promptban megjeleníteni (pl. mert jellemzőbb, mint az esetleg technikai hostnév), akkor az alábbiak szerint azonosan szerkesszük meg&lt;br /&gt;
* a &amp;#039;&amp;#039;sysadmin&amp;#039;&amp;#039; (illetve UID: 1000) felhasználó,&lt;br /&gt;
* a &amp;#039;&amp;#039;root&amp;#039;&amp;#039; felhasználó,&lt;br /&gt;
* illetve a később létrehozandó felhasználók számára elkészített template &amp;#039;&amp;#039;.bashrc&amp;#039;&amp;#039; állományokat:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo mcedit $HOME/.bashrc&lt;br /&gt;
sudo mcedit /root/.bashrc&lt;br /&gt;
sudo mcedit /etc/skel/.bashrc&lt;br /&gt;
&lt;br /&gt;
[...]&lt;br /&gt;
if [ &amp;quot;$color_prompt&amp;quot; = yes ]; then&lt;br /&gt;
    [...]&lt;br /&gt;
fi&lt;br /&gt;
unset color_prompt force_color_prompt&lt;br /&gt;
&lt;br /&gt;
# Include the server role string.&lt;br /&gt;
if [ -n &amp;quot;$ROLENAME&amp;quot; ]; then&lt;br /&gt;
    PS1=${PS1/@\\h/@\\h ($ROLENAME)}&lt;br /&gt;
fi&lt;br /&gt;
[...]&amp;lt;/pre&amp;gt;&lt;br /&gt;
Magát a szerepnevet az &amp;#039;&amp;#039;/etc/profile.d/custom.sh&amp;#039;&amp;#039; állományban adhatjuk meg:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo mcedit /etc/profile.d/custom.sh&lt;br /&gt;
&lt;br /&gt;
[...]&lt;br /&gt;
# Server role string.&lt;br /&gt;
export ROLENAME=&amp;quot;testing&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
A következő bejelentkezéstől kezdve a konzol promptban a szerepnév is megjelenik, pl. így:&lt;br /&gt;
&amp;lt;pre&amp;gt;root@x206-kdzwy54 (testing):~#&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===A Linux disztribúció frissítéseinek kezelése===&lt;br /&gt;
Házirendünk szerint a disztribúciós csomagok frissítésére az Ubuntu alapértelmezett &amp;#039;&amp;#039;unattended-upgrades&amp;#039;&amp;#039; szolgáltatását fogjuk használni (alternatíva lenne: [https://geekthis.net/post/how-to-setup-cron-apt/ cron-apt]), de az automatikus Ubuntu frissítéseket kikapcsoljuk, csak a frissítések figyelését tartjuk meg, és a telepítendő frissítésekről a napi jelentésből fogunk tájékozódni.&lt;br /&gt;
&lt;br /&gt;
* Ha nem lenne telepítve, telepítsük a szolgáltatást:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt install unattended-upgrades apt-config-auto-update&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Kikapcsoljuk az automatikus frissítést:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo mcedit /etc/apt/apt.conf.d/20auto-upgrades&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;[...]&lt;br /&gt;
APT::Periodic::Unattended-Upgrade &amp;quot;0&amp;quot;;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Engedjük a sima (nem security) update-ek figyelését is:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo mcedit /etc/apt/apt.conf.d/50unattended-upgrades&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;[...]&lt;br /&gt;
        &amp;quot;${distro_id}:${distro_codename}-updates&amp;quot;;&lt;br /&gt;
[...]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* A beállítások érvényesítéséhez újraindítjuk a szolgáltatást:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo systemctl restart unattended-upgrades&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A vonatkozó napi jelentést alább fogjuk beállítani.&lt;br /&gt;
&lt;br /&gt;
===Firmware frissítések===&lt;br /&gt;
&amp;#039;&amp;#039;Opcionális&amp;#039;&amp;#039; telepítések - virtuális gép esetén ne telepítsük ezeket, mert a fizikai hardware-t a futtató környezet kezeli!&lt;br /&gt;
&lt;br /&gt;
A [https://wiki.debian.org/Microcode CPU microcode] frissítése biztonsági frissítésnek minősül, ennek napra készen tartása fizikai hardware esetén erősen ajánlott. A frissítéseket a CPU gyártó (AMD, Intel, stb.) adja ki, és általában BIOS frissítésekkel jutnak el az érintett gépekre. Tapasztalat szerint csak microcode frissítések miatt a gyártók nemigen frissítenek BIOS-t, ráadásul a BIOS frissítéseket az üzemeltetők nem feltétlenül alkalmazzák, így a microcode csak ezen az úton nem igazán tartható napra készen. Emiatt a Linux terjesztések külön is tartalmazzák ezeket a frissítéseket, amelyek az operációs rendszer elindításakor, automatikusan alkalmazhatóak.&lt;br /&gt;
&lt;br /&gt;
A microcode frissítő csomagok az új microcode-ot tartósan nem mentik el (nem égetik be) a CPU-ba, hanem a BIOS-ba integrált microcode frissítés minden hard bootkor fut le, az operációs rendszerhez integrált frissítés pedig annak minden elindításakor. A gép kikapcsolásakor ezek a frissítések elvesznek.&lt;br /&gt;
&lt;br /&gt;
Futó Ubuntu esetén az aktuális microcode verzió pl. az alábbi paranccsal olvasható ki:&lt;br /&gt;
&amp;lt;pre&amp;gt;cat /proc/cpuinfo | grep microcode&amp;lt;/pre&amp;gt;&lt;br /&gt;
====Intel CPU microcode====&lt;br /&gt;
Ha Intel CPU-t használunk, telepítsük az Inteltől származó, de az Ubuntu terjesztés által karbantartott frissítő csomagot:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt install intel-microcode iucode-tool&amp;lt;/pre&amp;gt;&lt;br /&gt;
Az esetleges microcode frissítés a telepítés során azonnal (és ezt követően minden rendszerindításkor) betöltődik. A microcode verzió ismételt kiolvasásával:&lt;br /&gt;
&amp;lt;pre&amp;gt;cat /proc/cpuinfo | grep microcode&amp;lt;/pre&amp;gt;&lt;br /&gt;
ellenőrizhetjük, hogy történt-e frissítés. Ha nem történt, akkor a CPU (eleve, vagy a BIOS közreműködésével) már a legfrissebb microcode-ot futtatja, viszont a csomag telepítésével gondoskodtunk arról, hogy a jövőben kiadandó esetleges frissítések is érvényesülhessenek.&lt;br /&gt;
====AMD CPU microcode====&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;TODO!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
===Technikai levelezés beállítása===&lt;br /&gt;
A technikai levelezésre elsődlegesen a szerver állapotjelentéseinek továbbítása miatt van szükség. A legtöbb monitoring eszköz igényli a levélküldési lehetőséget, így azt már a telepítés elején érdemes beállítani.&lt;br /&gt;
&lt;br /&gt;
A minimál rendszerhez (üres &amp;#039;&amp;#039;tasklist&amp;#039;&amp;#039;) nem települ MTA, így azt külön telepítenünk kell. Jelen leírásban MTA-ként az Ubuntuban alapértelmezett [http://www.postfix.org/ Postfixet] fogjuk használni:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt install bsd-mailx  # hozza magával a Postfixet&amp;lt;/pre&amp;gt;&lt;br /&gt;
A telepítő kérdéseire az alapértelmezésekkel válaszoljunk (&amp;#039;&amp;#039;Internet site&amp;#039;&amp;#039; és &amp;#039;&amp;#039;_HOSTNAME_&amp;#039;&amp;#039;).&lt;br /&gt;
&lt;br /&gt;
====smarthost beállítása====&lt;br /&gt;
Amennyiben a telepítés alatti szervergép önállóan nem képes levelet küldeni, de elérhető olyan gép amelyik hajlandó a szerver leveleit továbbítani, állítsuk be azt &amp;#039;&amp;#039;relay host&amp;#039;&amp;#039;-nak:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo mcedit /etc/postfix/main.cf&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;[...]&lt;br /&gt;
relayhost = [host]:[port]&lt;br /&gt;
smtp_sasl_auth_enable = yes&lt;br /&gt;
smtp_sasl_security_options = noanonymous&lt;br /&gt;
smtp_sasl_password_maps = hash:/etc/postfix/password&lt;br /&gt;
smtp_generic_maps = hash:/etc/postfix/generic&lt;br /&gt;
[...]&lt;br /&gt;
inet_protocols = ipv4&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Ha szükséges, állítsuk be az authentikációt (ha nem szükséges, akkor is hozzuk létre és hash-eljük az állományt üresen):&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo mcedit /etc/postfix/password&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;smtp.isp.com       username:password&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo chmod 600 /etc/postfix/password&lt;br /&gt;
sudo postmap hash:/etc/postfix/password&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Ha szükséges, változtassuk meg a kimenő levelek feladóját olyanra, amelyet a &amp;#039;&amp;#039;smarthost&amp;#039;&amp;#039; elfogad (ha nem szükséges, akkor is hozzuk létre és hash-eljük az állományt üresen):&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo mcedit /etc/postfix/generic&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;valodi@felado.cim    amit.szeretnenk@felado.cim&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo postmap hash:/etc/postfix/generic&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Érvényesítsük a beállításokat:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo systemctl restart postfix&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Teszt levélküldés====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;echo &amp;#039;Teszt&amp;#039; | mail -s &amp;#039;Teszt&amp;#039; valid@email.address; sudo tail -f /var/log/mail.log&amp;lt;/pre&amp;gt;&lt;br /&gt;
Sikertelenség esetén &amp;#039;&amp;#039;&amp;#039;TODO!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
====A root forward beállítása====&lt;br /&gt;
A rendszer által a &amp;#039;&amp;#039;root&amp;#039;&amp;#039; postafiókjába küldött leveleket érdemes (a helyi postafiókban - &amp;#039;&amp;#039;/var/mail/root&amp;#039;&amp;#039; - megtartás mellett) a rendszergazdák valódi email címére továbbítani:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo mcedit /root/.forward&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rendszergazdak@email.cime&lt;br /&gt;
\root&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;small&amp;gt;Megjegyzés: A forwardoláshoz eleinte érdemes saját (perszonális) e-mail címet megadni, mert a beállítások során elég sok email jöhet.&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Teszteléshez küldjünk egy levelet a &amp;#039;&amp;#039;root&amp;#039;&amp;#039; lokális postafiókjába:&lt;br /&gt;
&amp;lt;pre&amp;gt;echo Teszt | mail -s Teszt root; sudo tail -f /var/log/mail.log&amp;lt;/pre&amp;gt;&lt;br /&gt;
Ha ezt a levelet megkapjuk, a továbbiakban a rendszer &amp;#039;&amp;#039;cron&amp;#039;&amp;#039;, &amp;#039;&amp;#039;cron.daily&amp;#039;&amp;#039;, stb. leveleit is meg fogjuk kapni.&lt;br /&gt;
&lt;br /&gt;
A &amp;#039;&amp;#039;továbbítás + másolat&amp;#039;&amp;#039; beállítású (technikai) postafiókokat érdemes naplószerűen rotálni:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo mcedit /etc/logrotate.d/mail  # új file&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Forwarded local mailboxes&lt;br /&gt;
&lt;br /&gt;
/var/mail/root {&lt;br /&gt;
  rotate 4&lt;br /&gt;
  weekly&lt;br /&gt;
  compress&lt;br /&gt;
  missingok&lt;br /&gt;
  notifempty&lt;br /&gt;
  su root mail&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Ezzel a technikai jellegű levelezést beállítottuk.&lt;br /&gt;
&lt;br /&gt;
===Napi jelentés beállítása===&lt;br /&gt;
A napi jelentés a &amp;#039;&amp;#039;/etc/cron.daily&amp;#039;&amp;#039; alatti scriptek lefuttatásának kimenete. Az alaptelepítés által itt elhelyezett scriptek nagyon szűkszavúak, normális esetben semmilyen kimenetet nem adnak. Érdemes lehet néhány általános jelentéskészítő scriptet ide elhelyezni.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;&amp;#039;&amp;#039;Megjegyzés: azt hiszem, az Ubuntuban azért nincsenek napi jelentő scriptek, mert a fejlesztők filozófiája szerint az eseményekről azonnali értesítést kell kapni, ennélfogva  a napi jelentés felesleges. Másfelől engem megnyugtat, ha naponta kapok a szerverektől egy &amp;quot;kösz, jól vagyok&amp;quot; levelet :-)&amp;#039;&amp;#039;&amp;lt;/small&amp;gt;&lt;br /&gt;
====RAID állapot====&lt;br /&gt;
&amp;#039;&amp;#039;Opcionálisan&amp;#039;&amp;#039;, fizikai gépen, Linux software RAID használata esetén célszerű. Az &amp;#039;&amp;#039;mdadm&amp;#039;&amp;#039; szól ugyan, ha szétesik egy RAID, de csak egyszer. Az alábbi script viszont naponta.&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo touch /etc/cron.daily/raidstatus&lt;br /&gt;
sudo chmod 755 /etc/cron.daily/raidstatus&lt;br /&gt;
sudo mcedit /etc/cron.daily/raidstatus&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
# Cron job to check that raid devices are functional.&lt;br /&gt;
# On error cron will mail the faulty mdstat to root.&lt;br /&gt;
#   raid1.c and raid5.c list devices as U (operational) or _ (not)&lt;br /&gt;
#   a _ device may be either hot, standby or bad&lt;br /&gt;
# Merlin Hughes &amp;lt;merlin@merlin.org&amp;gt;&lt;br /&gt;
# Modified by &amp;lt;kovacs.zoltan@kzoli.hu&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[ -e /proc/mdstat ] || exit 0&lt;br /&gt;
&lt;br /&gt;
mdstat=`cat /proc/mdstat`&lt;br /&gt;
&lt;br /&gt;
echo -e &amp;quot;\nRAID status:&amp;quot;&lt;br /&gt;
# Underscore between square brackets shows a faulty disk&lt;br /&gt;
if echo &amp;quot;$mdstat&amp;quot; | grep -q -e &amp;#039;\(\[.*_.*\]\)&amp;#039;; then&lt;br /&gt;
    echo &amp;#039;WARNING: Some disks in your RAID arrays seem to have failed!&amp;#039;&lt;br /&gt;
    echo &amp;#039;Below is the content of /proc/mdstat:&amp;#039;&lt;br /&gt;
    echo&lt;br /&gt;
    echo -e &amp;quot;$mdstat&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
    echo &amp;quot;RAID is OK.&amp;quot;&lt;br /&gt;
fi&amp;lt;/pre&amp;gt;&lt;br /&gt;
====Tárhely foglaltság====&lt;br /&gt;
Fontos, mert ezt semmilyen más eszköz nem figyeli.&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo touch /etc/cron.daily/status-disks&lt;br /&gt;
sudo chmod 755 /etc/cron.daily/status-disks&lt;br /&gt;
sudo mcedit /etc/cron.daily/status-disks&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
echo -e &amp;quot;\nDisk status:&amp;quot;&lt;br /&gt;
/bin/df -kh | /bin/grep -ve &amp;#039;^shm&amp;#039;     | \&lt;br /&gt;
              /bin/grep -ve &amp;#039;^tmpfs&amp;#039;   | \&lt;br /&gt;
              /bin/grep -ve &amp;#039;^udev&amp;#039;    | \&lt;br /&gt;
              /bin/grep -ve &amp;#039;^overlay&amp;#039; | \&lt;br /&gt;
              /bin/grep -ve &amp;#039;^/dev/loop&amp;#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Telepíthető frissítések====&lt;br /&gt;
* Ha létezik a &amp;#039;&amp;#039;/etc/update-motd.d/90-updates-available&amp;#039;&amp;#039; állomány, akkor legegyszerűbben a minden belépéskor látható faliújság (MOTD: &amp;#039;&amp;#039;message of the day&amp;#039;&amp;#039;) vonatkozó részletét küldjük el a telepíthető frissítésekről - ehhez egyszerűen belinkeljük a meglévő widgetet:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo ln -s /etc/update-motd.d/90-updates-available /etc/cron.daily/updates-available&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Ha a widget nem létezik, egy egyszerű scriptet készítünk:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo touch /etc/cron.daily/updates-available&lt;br /&gt;
sudo chmod 755 /etc/cron.daily/updates-available&lt;br /&gt;
sudo mcedit /etc/cron.daily/updates-available&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
echo -en &amp;quot;\n$(( $(apt list --upgradable 2&amp;gt;/dev/null | wc -l) - 1)) &amp;quot;&lt;br /&gt;
echo &amp;quot;package(s) are waiting for an upgrade.&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Uptime====&lt;br /&gt;
Inkább csak hagyományból, &amp;#039;&amp;#039;opcionálisan&amp;#039;&amp;#039; referált paraméter.&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo touch /etc/cron.daily/uptime-info&lt;br /&gt;
sudo chmod 755 /etc/cron.daily/uptime-info&lt;br /&gt;
sudo mcedit /etc/cron.daily/uptime-info&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
echo&lt;br /&gt;
/usr/bin/uptime&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Monitorozás==&lt;br /&gt;
A szerver monitorozása adatgyűjtést jelent a hardver és egyes szoftverek állapotáról. Az adatokat valamilyen helyi vagy távoli eszközzel megjeleníthetjük, elemeztethetjük, határértékek túllépése esetén riasztásokat illetve automatikus beavatkozásokat indíthatunk.&lt;br /&gt;
&lt;br /&gt;
Az adatgyűjtéshez szükséges a szervergép állapotának figyelésére szolgáló eszközök telepítése: &lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;TODO!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Ezen kívül szükséges a gyűjtött adatok elemzését és megjelenítését végző eszköz számára az adatok feladását biztosító kliensprogram telepítése:&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;TODO!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
==Watchdog==&lt;br /&gt;
A &amp;#039;&amp;#039;watchdog&amp;#039;&amp;#039; olyan szerkezet, amelyik igyekszik észlelni a számítógép (akár kernel szintű) &amp;quot;lefagyását&amp;quot; mely esetben (lehetőleg hardveresen) újraindítja azt. &lt;br /&gt;
&lt;br /&gt;
===Watchdog driver===&lt;br /&gt;
A hardver &amp;#039;&amp;#039;watchdog&amp;#039;&amp;#039; lehet hardver kártya, illetve integrálva lehet az alaplapi chipsetbe. Általában úgy működik, hogy inicializálás után elvárja, hogy az operációs rendszer (pl. egy portra írással) periodikusan jeleket adjon neki (&amp;#039;&amp;#039;heartbeat&amp;#039;&amp;#039;). Ha ez a jel az inicializálásnál beállított ideig kimarad, az eszköz resetel.&lt;br /&gt;
&lt;br /&gt;
A szoftver &amp;#039;&amp;#039;watchdog&amp;#039;&amp;#039; olyan program, amelyik periodikusan figyel beállított paramétereket - load, ping time, stb. - és beállított határértékük meghaladása esetén szabályos újraindítást (&amp;#039;&amp;#039;reboot&amp;#039;&amp;#039;) végez. Ez tehát &amp;quot;lefagyott&amp;quot; gép esetén nem használható, arra az esetre való, amikor az operációs rendszer még működik, de a gép már semmi hasznosat nem csinál.&lt;br /&gt;
&lt;br /&gt;
Fizikai gép esetén, ha van a gépben &amp;#039;&amp;#039;hardware watchdog device&amp;#039;&amp;#039; (és az Ubuntu tartalmazza hozzá a drivert), akkor használjuk azt; ha nincsen, akkor használjuk a &amp;#039;&amp;#039;software watchdog&amp;#039;&amp;#039; modult. Virtuális gépen a szoftveres megoldás használható.&lt;br /&gt;
====Intel chipset built-in hardware watchdog====&lt;br /&gt;
Intel chipset esetén (ICH4,5,6,7, stb.) - gyári kernellel - érdemes kipróbálni hogy van-e &amp;#039;&amp;#039;built-in watchdog&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo ls /dev/watchdog&lt;br /&gt;
# Ha megvan az eszköz, a továbbiakat átléphetjük.&lt;br /&gt;
&lt;br /&gt;
# Ha nincs device, vajon be van-e töltve a kernel modul?&lt;br /&gt;
sudo lsmod | grep iTCO_wdt&lt;br /&gt;
# Ha nem lenne betöltve, próbáljuk meg:&lt;br /&gt;
sudo modprobe iTCO_wdt heartbeat=30&amp;lt;/pre&amp;gt;&lt;br /&gt;
Siker esetén létezni fog a &amp;#039;&amp;#039;/dev/watchdog&amp;#039;&amp;#039; device. Ha szükséges, egy, a &amp;#039;&amp;#039;/etc/modules-load.d&amp;#039;&amp;#039; könyvtárbeli &amp;#039;&amp;#039;include&amp;#039;&amp;#039; állománnyal írjuk elő a kernel modul betöltését, hogy az már a rendszerindulástól elérhető legyen:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo mcedit /etc/modules-load.d/watchdog.conf&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
iTCO_wdt heartbeat=30&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Software watchdog====&lt;br /&gt;
Ha nincs a gépben elérhető &amp;#039;&amp;#039;hardware watchdog&amp;#039;&amp;#039;, akkor a &amp;#039;&amp;#039;softdog&amp;#039;&amp;#039; modult használhatjuk:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo modprobe softdog&lt;br /&gt;
sudo ls /dev/watchdog&amp;lt;/pre&amp;gt;&lt;br /&gt;
Ekkor létrejön a &amp;#039;&amp;#039;/dev/watchdog&amp;#039;&amp;#039; device. Siker esetén egy, a &amp;#039;&amp;#039;/etc/modules-load.d&amp;#039;&amp;#039; könyvtárbeli &amp;#039;&amp;#039;include&amp;#039;&amp;#039; állománnyal írjuk elő a modul betöltését, hogy az már a rendszerindulástól elérhető legyen:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo mcedit /etc/modules-load.d/watchdog.conf&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
softdog&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Watchdog beállítások===&lt;br /&gt;
Ha sikerült megfelelő watchdog drivert találni, akkor telepíteni kell a watchdog Debian csomagot, ami induláskor elindítja a figyelést, majd ébren is tartja:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt install watchdog&amp;lt;/pre&amp;gt;&lt;br /&gt;
Az eredeti állomány elmentése után készítsünk egy alkalmas &amp;#039;&amp;#039;/etc/watchdog.conf&amp;#039;&amp;#039;-ot (szoftver watchdog beállítások):&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo mv /etc/watchdog.conf /etc/watchdog.conf.bak&lt;br /&gt;
sudo mcedit /etc/watchdog.conf&amp;lt;/pre&amp;gt;&lt;br /&gt;
amelyben az alábbiakat írjuk elő:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
watchdog-device = /dev/watchdog&lt;br /&gt;
&lt;br /&gt;
# This greatly decreases the chance that watchdog won&amp;#039;t be scheduled before&lt;br /&gt;
# your machine is really loaded&lt;br /&gt;
realtime                = yes&lt;br /&gt;
priority                = 1&lt;br /&gt;
&lt;br /&gt;
# Uncomment to enable test. Setting one of these values to &amp;#039;0&amp;#039; disables it.&lt;br /&gt;
# These values will hopefully never reboot your machine during normal use&lt;br /&gt;
# (if your machine is really hung, the loadavg will go much higher than 25)&lt;br /&gt;
max-load-1              = 24&lt;br /&gt;
max-load-5              = 18&lt;br /&gt;
max-load-15             = 12&amp;lt;/pre&amp;gt;&lt;br /&gt;
Indítsuk újra a watchdog daemont:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo systemctl restart watchdog; sudo tail -f /var/log/syslog &amp;lt;/pre&amp;gt;&lt;br /&gt;
Az indulásról szóló jelentést és az elfogadott paramétereket a syslogban megtekinthetjük.&lt;br /&gt;
&lt;br /&gt;
Gyorsteszt: &amp;#039;&amp;#039;&amp;#039;TODO!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
==Egyéb eszközök==&lt;br /&gt;
===Virtalizációs guest agentek===&lt;br /&gt;
Ezek a programok a virtuális gép operációs rendszere és a [https://en.wikipedia.org/wiki/Hypervisor hypervisor] közötti kommunikációért felelnek, telepítésük virtualizált környezetben erősen javasolt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot;| Hypervisor&lt;br /&gt;
!Guest agent&lt;br /&gt;
|-&lt;br /&gt;
|Proxmox&lt;br /&gt;
|sudo apt install qemu-guest-agent&lt;br /&gt;
|-&lt;br /&gt;
|VMWare&lt;br /&gt;
|sudo apt install open-vm-tools&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Kiterjesztett fájlrendszeri attribútumok===&lt;br /&gt;
Néhány alkalmazás használ [http://linux.die.net/man/5/attr kiterjesztett attribútumokat] (ezt a gyári kernel is támogatja), emiatt &amp;#039;&amp;#039;opcionálisan de javasoltan&amp;#039;&amp;#039;  érdemes telepíteni az ezeket lekérdező, beállító segédprogramokat (&amp;#039;&amp;#039;getfattr&amp;#039;&amp;#039;, &amp;#039;&amp;#039;setfattr&amp;#039;&amp;#039;) tartalmazó Debian csomagot is:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt install attr&amp;lt;/pre&amp;gt;&lt;br /&gt;
és a későbbiekben a &amp;#039;&amp;#039;/etc/fstab&amp;#039;&amp;#039;-ban engedélyezni kell a &amp;#039;&amp;#039;user_xattr&amp;#039;&amp;#039; használatát.&lt;br /&gt;
===PAX kezelőprogram===&lt;br /&gt;
Kizárólag [http://en.wikipedia.org/wiki/PaX PAX]-os kernel használata esetén szükséges a PAX flag-eket beállító utility telepítése:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt install paxctl&amp;lt;/pre&amp;gt;&lt;br /&gt;
===Hibajavítások===&lt;br /&gt;
====multipathd, missing path====&lt;br /&gt;
Amennyiben egy virtuális gépen a &amp;#039;&amp;#039;/var/log/syslog&amp;#039;&amp;#039;-ban tömegével látunk ehhez hasonló bejegyzéseket:&lt;br /&gt;
&amp;lt;pre&amp;gt;Jul  6 16:02:58 sf14 multipathd[766]: sdb: add missing path&lt;br /&gt;
Jul  6 16:02:58 sf14 multipathd[766]: sdb: failed to get udev uid: Invalid argument&lt;br /&gt;
Jul  6 16:02:58 sf14 multipathd[766]: sdb: failed to get sysfs uid: Invalid argument&lt;br /&gt;
Jul  6 16:02:58 sf14 multipathd[766]: sdb: failed to get sgio uid: No such file or directory&amp;lt;/pre&amp;gt;&lt;br /&gt;
akkor módosítani érdemes a &amp;#039;&amp;#039;multpathd&amp;#039;&amp;#039; beállításain. &lt;br /&gt;
* Ha hozzáférünk a VMware hypervisorhoz, akkor a virtuális gép definíciójához adjuk hozzá az alábbi sort:&lt;br /&gt;
&amp;lt;pre&amp;gt;disk.EnableUUID = &amp;quot;TRUE&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Ha ezt nem tudjuk megtenni, egészítsük ki a virtuális gépen a &amp;#039;&amp;#039;/etc/multipath.conf&amp;#039;&amp;#039; állományt egy feketelistával:&lt;br /&gt;
&amp;lt;pre&amp;gt;defaults {&lt;br /&gt;
    user_friendly_names yes&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
blacklist {&lt;br /&gt;
    device {&lt;br /&gt;
        vendor &amp;quot;VMware&amp;quot;&lt;br /&gt;
        product &amp;quot;Virtual disk&amp;quot;&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
és indítsuk újra a démont:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo systemctl restart multipath-tools&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Irodalom==&lt;br /&gt;
* The official [https://ubuntu.com/server/docs Ubuntu Server Guide]&lt;br /&gt;
* [https://linuxconfig.org/ubuntu-20-04-server-installation Ubuntu 20.04 Server Installation] (linuxconfig.org)&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;TODO!&amp;#039;&amp;#039;&amp;#039;&lt;/div&gt;</summary>
		<author><name>KZoli</name></author>
	</entry>
</feed>