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>
+ Do tej pory mieliśmy zajmowaliśmy się siecią jako komponentem systemu
+ pora skorzystać z niej jako z środka komunikacji. W wiekszości
+ przypadków, ludzie wykorzystują sieć do dzielenia się informacjami
+ a te moga przybrać formę pliku dowolnego formatu, a my poznamy
+ metody w jaki sposób możemy przenieść pliki z jednego komputera
+ na drugi z pośrednictwem sieci. Pominiemy jednak takie narzędzia jak
+ SCP oraz SFTP, ponieważ były już one omawiane w poprzednim rodziale.
+ </p>
+ <h2 id="11.1.simplehttp">11.1. Proste udostępnienie z pośrednictwem WWW</h2>
+ <p>
+ Rozważmy taki scenariusz, że musimy udostępnić plik wielu osobom w
+ tym samym laboratorium. Plik jest za duży, żeby przesłać go mailem,
+ ale z użyciem poczty elektronicznej możemy przesłać link. Wówczas
+ przeglądarki połaczą się z naszym komputerem i pobiorą udostępniony
+ plik. Dla maksimum bezpieczeństwa możemy utworzyć specjalny folder
+ dla tego pliku, przenieść/skopiować go to tam i będą wewnątrz go
+ wydać następujące polecenie:
+ </p>
+<pre class="code-block">
+xf0r3m@vm-d67b064:~$ python3 -m http.server
+Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...
+127.0.0.1 - - [08/Sep/2023 12:35:06] "GET / HTTP/1.1" 200 -
+127.0.0.1 - - [08/Sep/2023 12:35:06] code 404, message File not found
+127.0.0.1 - - [08/Sep/2023 12:35:06] "GET /favicon.ico HTTP/1.1" 404 -
+127.0.0.1 - - [08/Sep/2023 12:35:25] "GET /newsfeed HTTP/1.1" 200 -
+</pre>
+ <p>
+ Za pomocą wydanego przez nas polecenie wraz z pomocą języka
+ programowania Python, uruchomiliśmy prosty serwer
+ WWW. Serwer działa na wysokim porcie ze względu na uprawnienia.
+ Zwykli użytkownicy nie mogą otwierać portów poniżej numer 1023.
+ Domyślnie serwer startuje na porcie 8000, jeśli z jakiś przyczyn
+ nie możemy użyć tego portu, to wówczas możemy podać mu inny wysoki
+ port na końcu polecenia. Adres <code class="code-inline">0.0.0.0</code>
+ oznacza każdy adres przypisanego do tego komputera, oznacza to że
+ mogę połączyć z tym serwerem przez pętlę zwrotną co własśnie
+ uczyniłem, koncowo pobrałem plik
+ <code class="code-inline">newsfeed</code>. Działanie serwera
+ kończymy prosty Ctrl+c.
+ </p>
+ <h2 id="11.2.remotesync">11.2. Synchronizacja katalogu zdalnego - program rsync</h2>
+ <p>
+ Kolejny przykład udostępniania plików, wyłamuje się po za konwencję
+ tego rozdziału, nie mniej jednak warto o nim wspomnieć. Może zostać
+ po traktowany jako narzędzie do przesłania plików na serwer służący
+ do ich udostępniania. Mowa tutaj o programie <strong>rsync</strong>.
+ Jest on powszechnie wykorzystywany przez administratorów do
+ przesyłania danych między Uniksami. Program wymaga istnienia na obu
+ stronach komunikacji oraz dostępu do powłoki (rsync domyślnie
+ wykorzystuje SSH)
+ </p>
</div>
<p style="margin: 15px; padding: 0; outline: 0;">
2022; COPYLEFT; ALL RIGHTS REVERSED;