Linux Server 20.04 LTS Progress instalacji (GUI, DHCP, DNS, FTP, Apache2 + Użyteczne Komendy Konfiguracji) 1. Instalacja Serwera Linux UBUNTU 20.04 LTS - Dodajemy odpowiednie karty sieciowe i konfigurujemy je na etapie instalacji (nadajemy ip). - Instalujemy serwer. - Aktualizujemy pakiety (sudo apt update – sudo apt upgrade) - Po instalacji dopierdalamy sobie przydatne pakieciki np: (net-tools, ifupdown, MCedit, Obraz płyty z dodatkami gościa dla 1920 x 1080p itp.) 2. Instalacja GUI dla Serwera Linux: Instalacja GUI odbywa się w następujący sposób: - sudo apt install tasksel - uruchamiamy tasksela poleceniem: „sudo tasksel” - z menu rozruchu wybieramy „Ubuntu Desktop Experience” - wpierdalamy klawisz OK „TAB’em” - sudo reboot <- restart serwera i jego usług. Gotowe cieszymy się kurwa zajebistym DESKTOPEM na serwerku. 3. Konfiguracja zarządzania kartami sieciowymi dla serwera w trybie graficznym. Jak pewnie wiecie albo zauważyliście małe skurwysynki, z poziomu serwera z GUI nie możecie zarządzać sobie kartami sieciowymi, co powoduje to że musicie to robić z.. tak, tak dokładnie dobrze usłyszeliście KURWA NETPLANU XDDD, ale my zrobimy małe cebulactwo tutaj i wykorzystamy moje ZAJEBISTE doświadczenie z tym środowiskiem i nasramy na NETPLAN. Więc robimy kurde tak: - Wpierdalacie się poprzez terminal w launchpadzie w MC. - Odszukujecie sobie netplan w jego katalogu. - Wpierdalacie się z kaloszami w netplan.yaml. - Pod linią „version: 2” wskazującą na wersję dopierdalacie idealnie równiutko pod nią linię: „renderer: Network Manager” To spowoduje, że kontrolę nad ustawieniami kart przejmie desktopowy Asystent sieci i od tego momentu macie wypierdolone jajca na netplan nie ma za co 😊. 4. Instalacja serwera DHCP *Dla poprawy jakości naszego życia ja będę korzystał z adresu: 10.0.0.1/24 dla karty która ma być nasłuchiwana dla serwera DHCP. Zaczynamy od instalacji serwera DHCP usługa nosi nazwę (isc-dhcp-server) - Instalujemy usługę poleceniem „sudo apt install isc-dhcp-server. Wskazanie interfejsu do nasłuchiwania (bardzo kurwa ważne) - Aby wskazać interfejs do nasłuchu są tutaj 2 opcje 1) „interfacev4=enp0sX” Gdzie X oznacza numer karty do nasłuchu. 2) sudo mcedit /etc/default/isc-dhcp-server (edytujemy pole V4 nazwę) - Wchodzicie do configu „dhcpd.conf” znajdującego się w folderze „dhcp” w katalogu „/etc” ścieżka powinna wyglądać tak: „/etc/dhcp/dhcpd.conf” - Odkomentowujecie linię zawierającą „authoritative” - Przechodzicie do linii 53 i tam dokonujecie konfiguracji DHCP. Objaśnienie linii konfiguracji DHCP: *subnet – to podsieć w jakiej pracuje. *netmask – to maska sieci. *range – to zakres puli dla serwera DHCP. *option domain-name-servers – To podstawowe serwery DNS dla usługi DHCP. *option domain-name – to nazwa domeny w jakiej pracuje DHCP. *option routers – to brama domyślna. * option broadcast-address – to adres broadcast, kończy się 255. *lease time – czas dzierżawy. *max-lease-time – maksymalny czas dzierżawy. (opcja „option subnet-mask” jest kurwa useless więc wypierdolcie ją) (Pamiętajcie kurwa o odkomentowaniu opcji XD) 5. Instalacja serwera DNS - Usługę zainstalujemy powyższą komendą nazywa się ona „BIND9” (sudo apt install bind9) - Domyślne pliki konfiguracji to: named.conf, named.conf.options, named.conf.local. - W pliku: named.conf.options zmieniamy domyślny serwer DNS na 8.8.8.8 lub inne ip naszej karty sieciowej. (najlepiej innej) - W pliku named.conf.local budujemy nasz konfig od podstaw w takiej składni np: 1) Strefa w przód: zone „szkola.com” IN { type master; file „/etc/bind/db.szkola.local”; }; 2) Strefa w tył: zone „0.0.10.in-addr.arpa” IN { type master; file „/etc/bind/db.10; }; - Kopiujecie pliki domyślne db.local i zamieniacie jego nazwę po skopiowaniu na odpowiednią jak do waszej strefy. - To samo w przypadku odwrotnej kopiujecie db.127 i zamieniacie jego nazwę po skopiowaniu na odpowiednią jak do waszej strefy. - Zmieniacie ustawienia resolv.conf na adres serwera np: (10.0.0.1) Gotowe! Serwer DNS Stoi jak pała Dżonego Sinsa. (X’D) 6. Instalacja serwera FTP. - Aby zainstalować serwer FTP musimy zainstalować usługę „vsftpd” („sudo apt install vsftpd”) - Aby skonfigurować odpowiednio serwer FTP po instalacji usługi kierujemy się do głównego folderu „/etc” - W folderze „/etc” odnajdujemy plik konfiguracyjny „vsftpd.conf” - W pliku konfiguracyjnym „vsftpd.conf” zmieniamy wartość „listen” na YES natomiast „listen_ipv6” zakomentujemy i wstawimy wartość NO. - odkomentowujemy wartość „local_enable” - odkomentowujemy wartość „write_enable” *Jeżeli chcemy aby użytkownicy anonimowi mogli uzyskać dostęp do serwera FTP: - odkomentowujemy wartość „anonymous_enable=YES” - odkomentowujemy wartość „anon_upload_enable=YES” - odkomentowujemy wartość „anon_mkdir_write_enable=YES” *Jeżeli chcemu ustawić baner powitalny serwera: - odkomentowujemy wartość „ftpd_banner=[Wiadomość]” 7. Instalacja Apache2 - Aby zainstalować Apache wydajemy komendę: sudo apt install apache2 - Następnie aby uruchomić rolę: sudo systemctl apache2 start - Check statusu: sudo systemctl status apache2 - Gotowe apache2 stoi na serwerze. *Lokalizacja plików stron znajduje się w katalogu: /var/www/html/. Przydatne komendy informacyjne do Linuxa: - „dmidecode” – Polecenie informacyjne możemy odczytać z niego różne wartości po uprzednim dostosowaniu polecenia. - „uname -a” – Polecenie przedstawiające informacje o jądrze i systemie. - „lscpu” – Informacje o procesorze. - „lshw -C display” – Informacje o karcie graficznej. - „lshw -C memory | less” – Informacje o pamięciach RAM. - Dysk Twardy: W trybie graficznym program „Disks” - Dysk Twardy: W Trybie tekstowym polecenie „fdisk -l” - Nadawanie adresu ip karcie: „ip a add [adres ip]/maska dev [nazwa_int]” - Uruchamianie karty: „ip l set [nazwa_int] up” - „sudo mc /etc/passwd” Zawiera informacje dotyczące wszystkich użytkowników w Linuxie. - „sudo mc /etc/shadow” Zawiera zahashowane hasła użytkowników. - Wyświetlenie informacji o koncie, hasłach, daty itp: „sudo chage -l [nazwa_konta]” - Wymuszenie zmiany hasła dla użytkownika użyjemy polecenia „chage” w składni: „sudo chage -d 0 [nazwa_konta]” - Data wygaśnięcia konta, hasła i monit informacyjny o wygaśnięciu: „sudo chage -E [-E = Expire] 2021-06-10 -M [-M = Ilość dni ważności hasła] -W [-W = Liczba dni pozostałych do wygaśnięcia.] 5 [Nazwa Użytkownika] „sudo chage -E 2021-06-10 -M 30 -W 5 krystian” - „groupadd” Dodaje nową grupę: „groupadd Dzial-HR” - „useradd” Dodaje nowego użytkownika: „useradd Kadrowa” - „useradd [username] [group_name]” Dodanie Użytkownika do grupy np.: (useradd Kadrowa Dzial-HR) Zarządzanie Uprawnieniami: |-Parametry: chmod u(user [właściciel] ) g(grupa) o(właściciel) a(wszyscy) +,- r(czytanie) w(pisanie) x(uruchamianie) & [nazwa pliku] | chmod ugo-rw file - odbieramy prawa dostępu do czytania i modyfikowania pliku właścicielowi,grupie oraz użytkownikom | chmod a-rw - j/w | chmod a+r - wszyscy mają prawo do czytania pliku | chmod a+rwx - wszyscy mają prawo do czytania, zapisywania i uruchamiania pliku |-Parametry: chmod [liczba od 000 do 777][nazwa pliku] | pierwsza liczba to użytkownik, druga liczba to grupa a trzecia pozostali | 0 lub --- brak praw dostępu | 1 lub --x wykonywanie | 2 lub -w- czytanie | 3 lub -wx zapis | 4 lub r-- zapis i wykonywanie | 5 lub r-x odczyt | 6 lub rw- odczyt i zapis | 7 lub rwx odczyt, zapis i wykonywanie | chmod 777 file - dajemy pełny dostęp właścicielowi, grupie oraz użytkownikom | chmod 000 file - zabieramy pełny dostęp właścicielowi, grupie oraz użytkownikom | chmod a+r - wszyscy mają prawo do czytania pliku | chmod a+rwx - wszyscy mają prawo do czytania, zapisywania i uruchamiania pliku