--- /dev/null
+<!DOCTYPE html>
+ <html>
+ <head>
+ <meta charset="utf-8" />
+ <link rel="icon" type="image/png" href="https://i.ibb.co/khy45hh/mm.png">
+ <link rel="stylesheet" type="text/css" href="/style.css">
+ </head>
+ <body>
+<pre>
+ _______ ___ ______ _ __
+ /_ __(_)___ _____( _ ) /_ __/____(_)____/ /_______
+ / / / / __ \/ ___/ __ \/|/ / / ___/ / ___/ //_/ ___/
+ / / / / /_/ (__ ) /_/ </ / / / / / /__/ ,< (__ )
+/_/ /_/ .___/____/\____/\/_/ /_/ /_/\___/_/|_/____/
+ /_/
+</pre>
+
+ <p class="header_link">
+ ☠ <a href="https://morketsmerke.github.io/">morketsmerke</a> ☠
+ </p>
+ <div class="main">
+ <h1 class="title">Automatyczne odblokowanie istniejących partycji LUKS</h1>
+ <p>
+ Mam kilka szyfrowanych LUKS-em dysków na stanie, do których potrzebuje
+ sporadycznie dostępu (do danych na nich zgromadzonych). Więc
+ stwierdziłem, podłącze je do serwera i udostępnie sobie przez NFS.
+ Wszystko spoko, fajnie tylko, że trzeba by je odblokować (rozszyfrować)
+ podczas rozruchu. Oczywiście jest tak możliwość. Można wykorzystać
+ plik klucza, który należy dodać do partycji. Generalnie to do partycji
+ LUKS, możemy dodać maksymalnie 8 kluczy odblokowywujących
+ (odszyfrywujących). Dodając do takiej partycji plik klucz, tak
+ naprawdę zapisujemy w wolnym miejscu (slocie) jego zawartość jako
+ kolejne z 8-miu możliwych do podania haseł. Całą konfigurację należy
+ rozpocząć od zdefiniowania samego hasła, może być to coś konkretnego,
+ np. jakieś zdanie lub zdefiniowany przez nas ciąg znaków, ale również
+ możemy skorzystać generatora pseudolosowego wbudowanego w każdego
+ Uniksa - <strong>/dev/random</strong>. Wygenerujen 32 bajty
+ (lub więcej) losowych danych, które posłużą nam jako klucz do partycji
+ LUKS.
+ </p>
+<pre class="code-block">
+~# dd if=/dev/random bs=32 count=1 of=plik_klucza0
+</pre>
+ <p>
+ Tak wygenerowany klucz możemy dodać teraz do partycji LUKS, przy
+ użyciu narzędzia <em>cryptsetup</em>.
+ </p>
+<pre class="code-block">
+# cryptsetup luksAddKey /dev/sdX /root/plik_klucza0
+</pre>
+ <p>
+ Narzędzie to poprosi nas o podanie jednego z obecnie dodanych klucz,
+ jeśli wcześniej nie dodawaliśmy, żadnych dodatkowych klucz
+ deszyfrujących, to podajemy hasło, które używaliśmy do tej pory do
+ odblokowywania LUKS. Po zatwierdzeniu hasła, klucz został dodany.
+ Warto zmienić mu uprawnienia, aby tylko właściciel mógł odczytać
+ jego zawartość
+ (<code class="code-inline">chmod 600 /root/plik_klucza0<code>).
+ </p>
+ <p>
+ Teraz w pliku <em>/etc/crypttab</em> należy zdefiniować automatyczne
+ odblokowywanie partycji, podając jej: nazwę dla <em>mapera</em>, UUID
+ partycji, plik klucz i jeśli to wymagane inne opcję
+ <em>cryptsetup</em> używane podczas odmontowywania. Na przykład:
+ </p>
+<pre class="code-block">
+luks-disk UUID="d03d9875-6310-4eea-809e-8570909408ea" /root/plik_klucza0
+</pre>
+ <p>
+ Na koniec musimy wskazać w pliku <em>/etc/fstab</em> punkt montowania
+ oraz opcje dla odszyforwanej partycji. Tutaj nie musimy posługiwać się
+ UUID-ami, jak zazwyczaj, ponieważ nazwa dla <em>mappera</em> jest
+ unikalnym identyfikatorem dla partycji, wątpię w to aby została ona
+ zmieniona podczas działania systemu. Chyba, że ręcznie zablokujemy
+ tego LUKS-a i odblokujemy pod inną nazwą.
+ </p>
+<pre class="code-block">
+/dev/mapper/luks-disk /srv/cryptdisk ext4 defaults 0 2
+</pre>
+ <p>
+ Po restartcie systemu, powinniśmy zobaczyć odblokowany i zamontowany
+ LUKS w naszym systemie. To rozwiązanie ma jedną zasadniczą wadę
+ związaną z bezpieczeństwem danych zgromadzonych na LUKS. W momencie
+ gdy ktoś uzyska dostęp fizyczny do maszyny, to uzyska również dostęp
+ do danych na LUKS. Rozwiązań tego problemu może być kilka, nie mniej
+ warto się zastanowić nad tym rozwiązaniem.
+ </p>
+ <p>
+ Źródło: <a href="https://access.redhat.com/solutions/230993">How to add a passphrase, key, or keyfile to an existing LUKS device</a>
+ </p>
+ <p>
+ ~xf0r3m
+ </p>
+ </div>
+ <p class="footer">
+ 2022; COPYLEFT; ALL RIGHTS REVERSED;
+ </p>
+ </body>
+ </html>
--- /dev/null
+<!DOCTYPE html>
+ <html>
+ <head>
+ <meta charset="utf-8" />
+ <link rel="icon" type="image/png" href="https://i.ibb.co/khy45hh/mm.png">
+ <link rel="stylesheet" type="text/css" href="/style.css">
+ </head>
+ <body>
+<pre>
+ _______ ___ ______ _ __
+ /_ __(_)___ _____( _ ) /_ __/____(_)____/ /_______
+ / / / / __ \/ ___/ __ \/|/ / / ___/ / ___/ //_/ ___/
+ / / / / /_/ (__ ) /_/ </ / / / / / /__/ ,< (__ )
+/_/ /_/ .___/____/\____/\/_/ /_/ /_/\___/_/|_/____/
+ /_/
+</pre>
+
+ <p class="header_link">
+ ☠ <a href="https://morketsmerke.github.io/">morketsmerke</a> ☠
+ </p>
+ <div class="main">
+ <h1 class="title">Dodanie hosta do certyfikatu Let's Encrypt</h1>
+ <p>
+ Generalnie poza możliwością odwołania certyfikatu (<em>revoke</em>)
+ czy/lub poźniejszego jego usunięcia (<em>delete</em>) nie mamy zbyt
+ wiele możliwości. Jeśli nie jesteśmy pewnii, co narobi nam najmniejszy
+ bałan, to otóż na tym samym serwerze, jeśli wszystkie kryteria są
+ spełnione. Można uzyskać odrębny certyfikat dla tego konkretnego hosta/
+ hostingu.
+ </p>
+<pre class="code-block">
+$ sudo certbot certonly -d sc.morketsmerke.org
+</pre>
+ <p>
+ Poźniej wystarczy skopiować tylko plik hostingu SSL z innego hosta
+ korzystającego z <em>Let's Encrypt</em> i zmienić nazwę hosta w
+ ścieżce. Ta nazwa tego hosta jest zarazem nazwą certyfikatu. Jeśli
+ będziemy chcieli wrócić do jednego certyfikatu, to trzeba poczekać
+ do jego wygaśnięciam, wówczas ten wygasły usunąć i utworzyć nowy
+ ze wszytkimi domenami. Jednak lepiej jest nic nie robić. Certyfikaty
+ powinny same się odnawiać.
+ </p>
+ <p>
+ Źródło: Ja.
+ </p>
+ <p>
+ ~xf0r3m
+ </p>
+ </div>
+ <p class="footer">
+ 2022; COPYLEFT; ALL RIGHTS REVERSED;
+ </p>
+ </body>
+ </html>
--- /dev/null
+<!DOCTYPE html>
+ <html>
+ <head>
+ <meta charset="utf-8" />
+ <link rel="icon" type="image/png" href="https://i.ibb.co/khy45hh/mm.png">
+ <link rel="stylesheet" type="text/css" href="/style.css">
+ </head>
+ <body>
+<pre>
+ _______ ___ ______ _ __
+ /_ __(_)___ _____( _ ) /_ __/____(_)____/ /_______
+ / / / / __ \/ ___/ __ \/|/ / / ___/ / ___/ //_/ ___/
+ / / / / /_/ (__ ) /_/ </ / / / / / /__/ ,< (__ )
+/_/ /_/ .___/____/\____/\/_/ /_/ /_/\___/_/|_/____/
+ /_/
+</pre>
+
+ <p class="header_link">
+ ☠ <a href="https://morketsmerke.github.io/">morketsmerke</a> ☠
+ </p>
+ <div class="main">
+ <h1 class="title">Eksport udziału NFS dla całej sieci</h1>
+ <p>
+ Konfigurując jakiś czas temu NFS, na urządzeniu NAS ZyXEL-a, aby
+ udostępnić dla wszystkich hostów w sieci ten udział adres w
+ powiedzmy <em>ustawieniach</em>, podawało się w ten sposób:
+ </p>
+<pre class="code-block">
+192.168.0.*
+</pre>
+ <p>
+ Chcąc zrobić to samo na Debianie, zapisałem podobną konfigurację i
+ pomimo takiego zapisu wydanie polecenia:
+ <code class="code-inline">exportfs -av</code> nie zwrócił żadnego
+ błędu, podobnie po restartcie usług związanych z NFS - również 0
+ błędów. Ale jeśli przyszło do montowania, to uzykałem jeden wielki
+ <em>permission denied!</em>. No to już wiedziałem, że prawdopodobnie
+ podany adres, wskazujący na całą sięć nie za bardzo działa. I trzeba
+ było poszukać czegoś innego. Wrzuciłem do wyszukiwarki odpowiednią
+ frazę, i cóż w 4 rodziale artykułu w źródłach, pierwszy przykład, w
+ ostaniej linii, znalazłem swoje rozwiązanie.
+ <strong>Otóż chcąc udostępnić udział NFS dla całej sieci, należy
+ podać jej adres w notacji CIDR (najprościej, są inne możliwości).</strong>
+ </p>
+<pre class="code-block">
+192.168.0.0/24(<em>opcje NFS</em>)
+</pre>
+ <p>
+ I to tyle w temacie. Teraz próba podmontownia tego udziału na moim
+ komputerze, z adresm IP przydzielnym z DHCP, powiodła się bez żadnych
+ problemów. Ja osobiście już montowałem wcześniej udziały NFS, ale jeśli
+ ktoś nie montował, to może być wymagane (raczej będzie) zainstalowanie
+ obsługi montowania NFS - pakiet <em>nfs-common</em> dla Debianów.
+ </p>
+ <p>
+ Źródło: <a href="https://www.golinuxcloud.com/nfs-exports-options-examples/">10 practical examples to export NFS shares in Linux</a>
+ </p>
+ <p>
+ ~xf0r3m
+ </p>
+ </div>
+ <p class="footer">
+ 2022; COPYLEFT; ALL RIGHTS REVERSED;
+ </p>
+ </body>
+ </html>