</head>
<body>
<div class="main">
- <div class="tableOfContent">
+ <div id="tableOfContent">
<h1>Linux. Podstawy.</h1>
<ul class="toc">
<li><a href="#1.howlinuxismade">1. Budowa systemu Linux<a>
</p>
<pre class="code-block">
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
-vim.gtk3 3645 xf0r3m 7u REG 254,0 20480 8391246 /media/xf0r3m/immudex_crypt0/Repos/morketsmerke-dev/articles/terminallog/.Linux.Podstawy.html.swp
+vim.gtk3 3645 xf0r3m 7u REG 254,0 20480 8391246 /media/xf0r3m/immudex_crypt0/
+Repos/morketsmerke-dev/articles/terminallog/.Linux.Podstawy.html.swp
</pre>
<p>
Linia przedstawia otwarty plik z materiałem w trakcie redagowania.
mpv 2923 xf0r3m txt REG 0,29 2158056 4302 /usr/bin/mpv
mpv 2923 xf0r3m mem REG 7,0 4302 /usr/bin/mpv (path dev=0,29)
...
-mpv 2923 xf0r3m 5u IPv4 26738 0t0 TCP 192.168.168.29:34108->prg03s12-in-f14.1e100.net:https (CLOSE_WAIT)
-mpv 2923 xf0r3m 6u IPv4 26743 0t0 TCP 192.168.168.29:34122->prg03s12-in-f14.1e100.net:https (CLOSE_WAIT)
-mpv 2923 xf0r3m 7u IPv4 88390 0t0 TCP 192.168.168.29:38584->prg03s13-in-f14.1e100.net:https (ESTABLISHED)
-mpv 2923 xf0r3m 8u IPv4 86801 0t0 TCP 192.168.168.29:48618->85.162.162.204:https (ESTABLISHED)
+mpv 2923 xf0r3m 5u IPv4 26738 0t0 TCP 192.168.168.29:34108->
+prg03s12-in-f14.1e100.net:https (CLOSE_WAIT)
+mpv 2923 xf0r3m 6u IPv4 26743 0t0 TCP 192.168.168.29:34122->
+prg03s12-in-f14.1e100.net:https (CLOSE_WAIT)
+mpv 2923 xf0r3m 7u IPv4 88390 0t0 TCP 192.168.168.29:38584->
+prg03s13-in-f14.1e100.net:https (ESTABLISHED)
+mpv 2923 xf0r3m 8u IPv4 86801 0t0 TCP 192.168.168.29:48618->
+85.162.162.204:https (ESTABLISHED)
mpv 2923 xf0r3m 9u unix 0x000000006b6ad31e 0t0 26745 type=STREAM
mpv 2923 xf0r3m 10r FIFO 0,12 0t0 26746 pipe
mpv 2923 xf0r3m 11w FIFO 0,12 0t0 26746 pipe
przestrzeni wymiany, ile stron zostało przeniesionych na dysk
(<code class="code-inline">si</code>) oraz ile stron zostało
załadowanych z dysku do pamięci
- (<code class="code-inline">so<code>). Czwarta kolumna zawiera
+ (<code class="code-inline">so</code>). Czwarta kolumna zawiera
informacje o użyciu urządzeń wejścia-wyjścia, dane odczytane z dysku
(<code class="code-inline">bi</code>) oraz dane zapisane na dysku
(<code class="code-inline">bo</code>). Piąta kolumna zwiera
systemu <em>PAM</em> więc podlegją im procesy uruchomione w
obrębie czegoś co z niego korzysta, na przykład powłoka logowania.
</li>
- <ul>
+ </ul>
<h1 id="9.network">9. Sieć</h1>
<p>
Komputery służą do przetwarzania informacji. Informacje
Na 56-bajtowe żądanie <em>echa</em> wysłane z naszego komputera
host docelowy odpowiada 64-bajtowym pakietem. Jego zawartość nie
jest istotna. Dla nas ważne są pola
- <code class="code-inline">icmp_seq<code> oraz
+ <code class="code-inline">icmp_seq</code> oraz
<code class="code-inline">time</code>, gdyż swiadczą on one jakości
połączenia pomiędzy naszym komputerem, a hostem docelowym.
<code class="code-inline">icmp_seq</code> wskazuje kolejności
<li><strong>INPUT</strong> - zawiera reguły filtrujące pakiety
przeznaczone dla lokalne hosta (tego komputera).</li>
<li><strong>OUTPUT</strong> - zawiera reguły filtrujące pakiety
- wysyłane (jego połączenia) z tego komputera.<li>
+ wysyłane (jego połączenia) z tego komputera.</li>
<li><strong>FORWARD</strong> - zawiera reguły filtrujące pakiety
przesyłane przez ten komputer.</li>
</ul>
w <em>port-forwarding</em>.</li>
<li><strong>OUTPUT</strong> - zawiera reguły filtrujące pakiety dla
wygenerowanych lokalnie pakietów, które poźniej będą wymagały
- trasowania.<li>
+ trasowania.</li>
<li><strong>POSTROUTING</strong> - zawiera reguły filtrujące, które
najpóźniej przetwarzają pakiety. Tutaj stosowany jest SNAT oraz
<em>maskarada</em>.</li>
<li><strong>Serwery sieciowe:</strong> - DHCP:
<em>isc-dhcp-server</em>, <em>dnsmasq</em>; DNS:
<em>bind9</em>, <em>dnsmasq</em></li>
- <li><strong>Usługa zdalnego wywołania procedury (RPC)</strong><li>
+ <li><strong>Usługa zdalnego wywołania procedury (RPC)</strong></li>
</ul>
<p>
Aby bardziej zaznajomić się z serwerami sieciowymi, omówimy sobie
avahi-dae 476 avahi 13u IPv6 13561 0t0 UDP *:mdns
avahi-dae 476 avahi 14u IPv4 13562 0t0 UDP *:33600
avahi-dae 476 avahi 15u IPv6 13563 0t0 UDP *:34773
-NetworkMa 675 root 26u IPv4 14371 0t0 UDP vm-3d6b184.morketsmerke.org:bootpc->DDI1184JS.mshome.net:bootps
+NetworkMa 675 root 26u IPv4 14371 0t0 UDP vm-3d6b184.morketsmerke.org:bootpc->
+DESKTOP-TMP2137.mshome.net:bootps
cupsd 790 root 6u IPv6 14463 0t0 TCP localhost:ipp (LISTEN)
cupsd 790 root 7u IPv4 14464 0t0 TCP localhost:ipp (LISTEN)
cups-brow 860 root 7u IPv4 15147 0t0 UDP *:631
chronyd 883 _chrony 5u IPv4 14538 0t0 UDP localhost:323
chronyd 883 _chrony 6u IPv6 14539 0t0 UDP localhost:323
-ssh 60722 xf0r3m 3u IPv4 187934 0t0 TCP vm-3d6b184.morketsmerke.org:36440->ip82-117-231-222.static.awhost.cloud:2022 (ESTABLISHED)
+ssh 60722 xf0r3m 3u IPv4 187934 0t0 TCP vm-3d6b184.morketsmerke.org:36440->
+ip82-117-231-222.static.awhost.cloud:2022 (ESTABLISHED)
</pre>
<p>
Na powyższym przykładzie możemy zauważyć, że wyjście tego polecenia
<pre class="code-block">
xf0r3m@vm-3d6b184:/media/xf0r3m/immudex_crypt0$ sudo lsof -iTCP@searx.morketsmerke.org
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
-ssh 60722 xf0r3m 3u IPv4 187934 0t0 TCP vm-3d6b184.mshome.net:36440->ip82-117-231-222.static.awhost.cloud:2022 (ESTABLISHED)
+ssh 60722 xf0r3m 3u IPv4 187934 0t0 TCP vm-3d6b184.mshome.net:36440->
+ip82-117-231-222.static.awhost.cloud:2022 (ESTABLISHED)
</pre>
<p>
Ciekawy przypadek mamy tutaj. Ponieważ wśród połączeń TCP wyszukujemy
tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), snapshot length 262144 bytes
07:27:01.136396 IP DESKTOP-TMP2137.mshome.net.60948 > 239.255.255.250.1900: UDP, length 175
-07:27:01.238437 IP vm-f48088c.mshome.net.46759 > DESKTOP-TMP2137.mshome.net.domain: 9527+ PTR? 250.255.255.239.in-addr.arpa. (46)
-07:27:01.244853 IP DESKTOP-TMP2137.mshome.net.mdns > 224.0.0.251.mdns: 0 PTR (QM)? 250.255.255.239.in-addr.arpa.local. (52)
-07:27:01.247220 IP DESKTOP-TMP2137.mshome.net.mdns > 224.0.0.251.mdns: 0 PTR (QM)? 250.255.255.239.in-addr.arpa.local. (52)
-07:27:01.250774 IP6 DESKTOP-TMP2137.morketsmerke.org.mdns > ff02::fb.mdns: 0 PTR (QM)? 250.255.255.239.in-addr.arpa.local. (52)
-07:27:01.252918 IP6 DESKTOP-TMP2137.morketsmerke.org.mdns > ff02::fb.mdns: 0 PTR (QM)? 250.255.255.239.in-addr.arpa.local. (52)
+07:27:01.238437 IP vm-f48088c.mshome.net.46759 > DESKTOP-TMP2137.mshome.net.domain: 9527+ PTR? 250.255.255.239.in-addr.arpa.
+(46)
+07:27:01.244853 IP DESKTOP-TMP2137.mshome.net.mdns > 224.0.0.251.mdns: 0 PTR (QM)? 250.255.255.239.in-addr.arpa.local.
+(52)
+07:27:01.247220 IP DESKTOP-TMP2137.mshome.net.mdns > 224.0.0.251.mdns: 0 PTR (QM)? 250.255.255.239.in-addr.arpa.local.
+(52)
+07:27:01.250774 IP6 DESKTOP-TMP2137.morketsmerke.org.mdns > ff02::fb.mdns: 0 PTR (QM)? 250.255.255.239.in-addr.arpa.local.
+(52)
+07:27:01.252918 IP6 DESKTOP-TMP2137.morketsmerke.org.mdns > ff02::fb.mdns: 0 PTR (QM)? 250.255.255.239.in-addr.arpa.local.
+(52)
07:27:02.142559 IP DESKTOP-TMP2137.mshome.net.60948 > 239.255.255.250.1900: UDP, length 175
-07:27:02.241843 IP DESKTOP-TMP2137.mshome.net.mdns > 224.0.0.251.mdns: 0 PTR (QM)? 250.255.255.239.in-addr.arpa.local. (52)
-07:27:02.242557 IP6 DESKTOP-TMP2137.morketsmerke.org.mdns > ff02::fb.mdns: 0 PTR (QM)? 250.255.255.239.in-addr.arpa.local. (52)
+07:27:02.241843 IP DESKTOP-TMP2137.mshome.net.mdns > 224.0.0.251.mdns: 0 PTR (QM)? 250.255.255.239.in-addr.arpa.local.
+(52)
+07:27:02.242557 IP6 DESKTOP-TMP2137.morketsmerke.org.mdns > ff02::fb.mdns: 0 PTR (QM)? 250.255.255.239.in-addr.arpa.local.
+(52)
</pre>
<p>
W moim przypadku zostało tylko złapanych kilka zapytań w przód (PTR)
<pre class="code-block">
xf0r3m@vm-eba25a2:/media/xf0r3m/immudex_crypt0$ sudo lsof -U
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
-systemd 1 root 10u unix 0x00000000c0eae923 0t0 15927 /run/systemd/journal/stdout type=STREAM (CONNECTED)
+systemd 1 root 10u unix 0x00000000c0eae923 0t0 15927 /run/systemd/journal/stdout
+type=STREAM (CONNECTED)
systemd 1 root 17u unix 0x00000000a1f6a748 0t0 11408 /run/systemd/notify type=DGRAM (CONNECTED)
systemd 1 root 18u unix 0x0000000062a0c5b9 0t0 11409 type=DGRAM (CONNECTED)
systemd 1 root 19u unix 0x00000000962057e3 0t0 11410 type=DGRAM (CONNECTED)
systemd 1 root 20u unix 0x000000001183727b 0t0 11411 /run/systemd/private type=STREAM (LISTEN)
-systemd 1 root 21u unix 0x000000007042f6df 0t0 11413 /run/systemd/userdb/io.systemd.DynamicUser type=STREAM (LISTEN)
-systemd 1 root 22u unix 0x000000008bad806c 0t0 11414 /run/systemd/io.system.ManagedOOM type=STREAM (LISTEN)
-systemd 1 root 23u unix 0x0000000096526742 0t0 20935 /run/systemd/journal/stdout type=STREAM (CONNECTED)
-systemd 1 root 24u unix 0x00000000f0a1522b 0t0 182291 /run/systemd/journal/stdout type=STREAM (CONNECTED)
+systemd 1 root 21u unix 0x000000007042f6df 0t0 11413 /run/systemd/userdb/io.systemd.DynamicUser
+type=STREAM (LISTEN)
+systemd 1 root 22u unix 0x000000008bad806c 0t0 11414 /run/systemd/io.system.ManagedOOM
+type=STREAM (LISTEN)
+systemd 1 root 23u unix 0x0000000096526742 0t0 20935 /run/systemd/journal/stdout
+type=STREAM (CONNECTED)
+systemd 1 root 24u unix 0x00000000f0a1522b 0t0 182291 /run/systemd/journal/stdout
+type=STREAM (CONNECTED)
</pre>
<h1 id="11.networkfilesharing">11. Udostępnianie plików w sieci</h1>
<p>
xf0r3m@vm-9585173:~$ sudo mount -t cifs //DEBIAN/xf0r3m homes_on_debian -o user=xf0r3m,uid=1001,gid=1001
Password for xf0r3m@//DEBIAN/xf0r3m:
xf0r3m@vm-9585173:~$ sudo mount | grep '//DEBIAN/xf0r3m'
-//DEBIAN/xf0r3m on /media/xf0r3m/immudex-crypt0/homes_on_debian type cifs (rw,relatime,vers=3.1.1,cache=strict,username=xf0r3m,uid=1001,noforceuid,gid=1001,noforcegid,addr=172.18.227.14,file_mode=0755,dir_mode=0755,soft,nounix,serverino,mapposix,rsize=4194304,wsize=4194304,bsize=1048576,echo_interval=60,actimeo=1,closetimeo=1)
+//DEBIAN/xf0r3m on /media/xf0r3m/immudex-crypt0/homes_on_debian type cifs
+(rw,relatime,vers=3.1.1,cache=strict,username=xf0r3m,uid=1001,noforceuid,
+gid=1001,noforcegid,addr=172.18.227.14,file_mode=0755,dir_mode=0755,soft,
+nounix,serverino,mapposix,rsize=4194304,wsize=4194304,bsize=1048576,
+echo_interval=60,actimeo=1,closetimeo=1)
</pre>
<p>
Chcąc wykorzystać polecnie <code class="code-inline">mount</code>.
xf0r3m@vm-c1b9654:~$ sshfs xf0r3m@debian:/home/xf0r3m homes_on_debian -o reconnect
xf0r3m@debian's password:
xf0r3m@vm-c1b9654:~$ mount | grep 'xf0r3m@debian'
-xf0r3m@debian:/home/xf0r3m on /media/xf0r3m/immudex-crypt0/homes_on_debian type fuse.sshfs (rw,nosuid,nodev,relatime,user_id=1001,group_id=1001)
+xf0r3m@debian:/home/xf0r3m on /media/xf0r3m/immudex-crypt0/homes_on_debian type fuse.sshfs
+(rw,nosuid,nodev,relatime,user_id=1001,group_id=1001)
</pre>
<p>
Tak zamontowany udział jest normalnie widocznym katalogiem w systemie.
</p>
<pre class="code-block">
xf0r3m@vm-65cd1fb:~$ ps -aux | grep 'Xorg'
-root 1001 1.1 6.1 406772 119620 tty7 Ssl+ 10:59 0:32 /usr/lib/xorg/Xorg :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
-<pre>
+root 1001 1.1 6.1 406772 119620 tty7 Ssl+ 10:59 0:32 /usr/lib/xorg/Xorg :0
+-seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
+</pre>
<p>
Istotną wartością w linii polecenia uruchamiającego jest
<code class="code-inline">:0</code>. Jest to oznaczenie
go poprzez pliki uruchomieniowe sesji środowiska graficznego
użytkownika, najczęściej to w nich zapisywane są takie czynności
jak ustawienia tapety dla nie których WM (<em>windows manager</em>).
- Tym plikami są: <em>~/.xinitrc<em>, <em>~/.xsession</em> lub
+ Tym plikami są: <em>~/.xinitrc</em>, <em>~/.xsession</em> lub
<em>~/.xprofile</em> (dla, niektórych DM [<em>displays manager</em>]).
Wewnątrz tych plików, musimy za pomocą polecenia <em>xhost</em>
musimy nadać dostęp do swojej sesji użytkownika.
<h3 id="18.6.3.sed">18.6.3. sed</h3>
<p>
<strong>Sed</strong>, czyli edytor strumienia
- (ang. <em><strong>s<strong>tream <strong>ed</strong>itor</em>), jest
+ (ang. <em><strong>s</strong>tream <strong>ed</strong>itor</em>), jest
nieinteraktywnym edytorem tekstu opierającym się na wydawaniu
pojedynczych poleceń. Za jego pomocą możemy wstawiać do plików
poszczególne linie lub je zmieniać stosując znaną metodę