1. Debian GNU/Linux

Wskazówka

Skonfiguruj sieć w VirtualBOX jako NAT lub Sieć NAT

1.1. Instalacja systemu

Uruchamiamy oprogramowanie VirtualBOX i utwórz nową maszynę wirtualną

../_images/d.png

Ustawiamy rozmiar pamięci RAM na 512MB

../_images/d-1.png

Tworzymy wirtualny dysk twardy

../_images/d-2.png

Ustawiamy typ pliku z wirtualnym dyskiem twardym na VDI (VirtualBox Disk Image)

../_images/d-3.png

Ustawiamy pamięć fizyczną na dysku twardym na dynamicznie przydzielaną

../_images/d-4.png

Lokalizację pliku i rozmiar dysku pozostawiamy bez zmian (8GB)

../_images/d-5.png

Uruchamiamy zainstalowaną maszynę wirtualną

Przy pierwszym uruchomieniu pojawi się okno wyboru dysku startowego.

Wybieramy

../_images/d-7.png

i wskazujemy plik z rozszerzeniem ISO zawierającym obraz płyty instalacyjnej.

Następnie wybieramy Uruchom.

../_images/d-8.png

Z menu instalatora wybieramy Install

Wskazówka

Wybieramy instalację BEZ użycia środowiska graficznego.

../_images/d-9.png

Informacja

Po kliknięciu w ekran maszyny wirtualnej klawiatura i myszka zostanie przełączona do maszyny. Aby przełączyć je ponownie do systemu operacyjnego hosta, należy przycisnąć i puścić prawy klawisz Ctrl

W oknie instalatora wybieramy język instalacji

../_images/d-10.png

Wybieramy swoją lokalizację

../_images/d-11.png

Konfigurujemy klawiaturę

../_images/d-12.png

Wpisujemy nazwę hosta

../_images/d-13.png

Pole Nazwa domeny w następnym oknie pozostawiamy puste

Podajemy hasło administratora (konta root) oraz w następnym oknie potwierdzamy to hasło wpisując je ponownie.

Informacja

Na potrzeby laboratorium ustawiamy hasło toor

../_images/d-14.png

W następnym kroku ustawiamy nazwę i hasło standardowego użytkownika.

Informacja

Na potrzeby laboratorium jako Pełną nazwę nowego użytkownika oraz Nazwę użytkownika dla Twojego konta wpisujemy swoje imię małymi literami. Hasło ustaw dowolne.

../_images/d-15.png

W oknie partycjonowanie dysku wybieramy Przewodnik - cały dysk

../_images/d-16.png

Wybieramy dysk do partycjonowania

../_images/d-17.png

oraz opcję Wszystko na jednej partycji

../_images/d-18.png

Ostatnim krokiem jest zakończenie partycjonowania

../_images/d-19.png

i zapisanie zmian na dysku

../_images/d-20.png

Trwa instalacja systemu podstawowego.

Przy konfiguracji menadżera pakietów Nie przeszukujemy innych płyt CD lub DVD

../_images/d-21.png

Kraj serwera lustrzanego z archiwum Debiana wybieramy Polska i wskazujemy serwer ftp.pl.debian.org

../_images/d-22.png

Pole Dane serwera pośredniczącego zostawiamy puste Nie bierzemy udziału w konkursie na najpopularniejszy pakiet

../_images/d-23.png

Przy wyborze oprogramowania zaznaczamy tylko Serwer SSH oraz Podstawowe narzędzia systemowe

Informacja

Aby odznaczyć lub zaznaczyć wybrany pakiet, należy na niego najechać (strzałki góra-dół) i wcisnąć klawisz spacji

../_images/d-24.png

W następnym oknie instalujemy program rozruchowy GRUB

../_images/d-25.png

i wybieramy urządzenie do instalacji /dev/sda

../_images/d-26.png

Ostatnim krokiem jest zakończenie instalacji (napęd z obrazem zostanie automatycznie wysunięty).

../_images/d-27.png

Po instalacji systemu logujemy się na konto root z hasłem toor.

../_images/d-28.png

1.2. Zarządzanie użytkownikami i grupami

Logujemy się na konto root

Aby dodać nowego użytkownika do systemu wydajemy polecenie adduser nazwa_uzytkownika

root@debian9:~# adduser janek

co spowoduje wykonanie:

Dodawanie użytkownika "janek"...
Dodawanie nowej grupy "janek" (1001)...
Dodawanie nowego użytkownika "janek" (1001) w grupie "janek"...
Kopiowanie plików  z "/etc/skel".

W tym miejscu wpisujemy hasło naszego nowego użytkownika (podczas wpisywania hasła na ekranie nie pojawi się żaden znak)

Proszę podać nowe hasło UNIX:
Proszę ponownie podać hasło UNIX:

Jeśli podaliśmy poprawnie takie samo hasło w obu polach pojawi się odpowiedni komunikat

passwd: hasło zostało zmienione
Zmieniam informację o użytkowniku janek
Wpisz nową wartość lub wciśnij ENTER by przyjąć wartość domyślną

Pozostałe pola pozostawiamy puste

Imię i nazwisko []:
Numer pokoju []:
Telefon do pracy []:
Telefon domowy []:
Inne []:

na koniec zatwierdzamy wprowadzone dane

Czy informacja jest poprawna? [T/n] t

Aby dodać nową grupę do systemu wydajemy polecenie addgroup nazwa_grupy

root@debian9:~# addgroup pracownicy
Dodawanie grupy "pracownicy" (GID 1002)...
Gotowe.

Aby dodać użytkownika do grupy wydajemy polecenie usermod -a -G grupa uzytkownik

root@debian9:~# usermod -a -G pracownicy kasia

Aby sprawdzić czy użytkownik został poprawnie dodany do grupy wydajemy polecenie grep "pracownicy" /etc/group

root@debian9:~# grep "pracownicy" /etc/group

czego efektem będzie

pracownicy:x:1002:olek,kasia

Poniższe polecenia wykonujemy z kont standardowych użytkowników

  1. Tworzenie katalogu public w katalogu domowym użytkownika (znak ~ oznacza to samo co /home/nazwa_uzytkownika)
  2. Przechodzimy do katalogu domowego naszego użytkownika
  3. Sprawdzamy uprawnienia do katalogu public
  4. Widzimy, że użytkownik ma pełnie uprawnienia, grupa i pozostali odczyt i wejście (drwxr-xr-x)
  5. Nadajemy pełne uprawnienia dla grupy
  6. Sprawdzamy uprawnienia do katalogu public
  7. Widzimy że użytkownik i grupa mają pełne uprawnienia, pozostali tylko możliwość odczytu i wejścia do katalogu (drwxrwxr-x)
1
2
3
4
5
6
7
olek@debian9:~$ mkdir ~/public
olek@debian9:~$ cd ~
olek@debian9:~$ ls -ld public/
drwxr-xr-x 2 olek olek 4096 kwi  6 18:10 public/
olek@debian9:~$ chmod 775 public/
olek@debian9:~$ ls -ld public/
drwxrwxr-x 2 olek olek 4096 kwi  6 18:10 public/

Poniższe polecenia wykonujemy na koncie root

Tworzenie katalogu wspolny i nadanie mu prawa do zapisu dla wszystkich użytkowników

root@debian9:/home# cd /home
root@debian9:/home# mkdir wspolny
root@debian9:/home# chmod 777 wspolny/

Sprawdzamy poprawność wykonania polecenia

root@debian9:/home# ls -ld wspolny/

Widzimy, żę wszyscy mają pełnie prawa do katalogu (drwxrwxrwx)

drwxrwxrwx 2 root root 4096 kwi  6 18:17 wspolny/

Działanie na katalogu roboczy

  1. Przechodzimy do katalogu /home
  2. Tworzenie katalogu roboczy
  3. Sprawdzamy obecne uprawnienia
  4. Należą do właściciela i grupy root
  5. Przypisujemy katalog do właściciela olek i grupy pracownicy
  6. Sprawdzamy wynik wykonania polecenia.
  7. Widzimy że teraz katalog należy do użytkownika olek i grupy pracownicy
  8. Nadajemy uprawnienia do zapisu dla grupy
  9. Odbieramy uprawnienia dla pozostałych
  10. Sprawdzamy obecnie uprawnienia dla katalogu roboczy
  11. Widzimy, że użytkownik olek i grupa pracownicy mają pełnie prawa, natomiast pozostali użytkownicy nie mają żadnych praw.
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
root@debian9:/home# cd /home/
root@debian9:/home# mkdir roboczy
root@debian9:/home# ls -ld roboczy/
drwxr-xr-x 2 root  root  4096 kwi  6 18:24 roboczy
root@debian9:/home# chown olek.pracownicy roboczy/
root@debian9:/home# ls -ld roboczy/
drwxr-xr-x 2 olek pracownicy 4096 kwi  6 18:24 roboczy/
root@debian9:/home# chmod g+w roboczy/
root@debian9:/home# chmod o-rx roboczy/
root@debian9:/home# ls -ld roboczy/
drwxrwx--- 2 olek pracownicy 4096 kwi  6 18:24 roboczy/

1.3. Logowanie do systemu przez SSH

Aby zalogować się do wirtualnej maszyny z systemu hosta, należy dodać drugą kartę sieciową w VirtualBox i skonfigurować ją jako Karta sieci izolowanej (host only) - operację należy wykonać przy wyłączonej maszynie wirtualnej.

Po ponownym uruchomieniu maszyny wirtualnej, należy skonfigurować drugą kartę sieciową w systemie operacyjnym Linux. Wydajemy polecenie ip addr show aby sprawdzić nazwę drugiej karty sieciowej.

root@debian9:/home# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
    valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:d7:7c:86 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 brd 10.0.2.255 scope global enp0s3
    valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fed7:7c86/64 scope link
    valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:63:f7:91 brd ff:ff:ff:ff:ff:ff
    valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe63:f791/64 scope link
    valid_lft forever preferred_lft forever

W naszym przypadku nowa karta nazywa się enp0s8. Aby ustawić jej adres IP na stałe z serwera DHCP należy wyedytować plik /etc/network/interfaces

root@debian9:/#nano /etc/network/interfaces

i dopisujemy na końcu 2 linie:

allow-hotplug enp0s8
iface enp0s8 inet dhcp

Informacja

Aby wyjść z edytora nano należy wcisnąć CTRL-X a następnie literę T w celu potwierdzenia ścieżki zapisu

Po edycji pliku należy przeładować serwer komendą reboot

Po przeładowaniu maszyny adres zostanie pobrany z serwera DHCP

Sprawdzamy adres IP który został przydzielony przez serwer DHCP dla drugiej karty sieciowej poleceniem ip addr show dev enp0s8

root@debian9:~# ip addr show dev enp0s8
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:63:f7:91 brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.101/24 brd 192.168.56.255 scope global enp0s8
    valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe63:f791/64 scope link
    valid_lft forever preferred_lft forever

Szukamy lini zaczynającej się od inet. Otrzymaliśmy adres IP 192.168.56.101

Uruchamiamy program puTTY i logujemy się na konto standardowego użytkownika do naszej wirtualnej maszyny (konto root w domyślnej konfiguracji ma zablokowaną możliwość logowania zdalnego).

../_images/d-29.png

Po zalogowaniu przełączamy się na konto root poleceniem su root

1.4. Instalacja i konfiguracja systemu CMS

Instalujemy niezbędne komponenty przy pomocy menadżera pakietów. Z konta roota wydajemy polecenie apt-get install apache2 php7.0 php7.0-mysql mysql-server

Po instalacji uruchamiamy klienta mysql poleceniem mysql

MariaDB [(none)]>
  1. Tworzymy użytkownika wp który będzie łączył się z lokalnego hosta z hasłem twoje-haslo
  2. Nadajemy podstawowych uprawnienia dla użytkownika wp łączącego się z lokalnego hosta
  3. Tworzymy bazę danych wordpress
  4. Nadajemy pełne prawa dla użytkownika wp do bazy wordpress łączącego się z hosta lokalnego
  5. Przeładowanie uprawnień
  6. Wyjście z trybu poleceń mysql
1
2
3
4
5
6
MariaDB [(none)]> CREATE USER 'wp'@'localhost' IDENTIFIED BY 'twoje_haslo';
MariaDB [(none)]> GRANT USAGE ON *.* TO 'wp'@'localhost' IDENTIFIED BY 'twoje_haslo';
MariaDB [(none)]> CREATE DATABASE IF NOT EXISTS `wordpress`;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON `wp`.* TO 'uzytkownik'@'localhost';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit

Poniżej przedstawiono opis kolejnych kroków działania na plikach w celu uruchomienia instalatora. Kroki należy wykonać z konta root

  1. Przechodzimy do domyślnego katalogu apache2 czyli do /var/www
  2. Zmieniamy właściciela i grupę katalogu html
  3. Nadajemy prawa zapisu dla użytkownika i grupy oraz odczytu dla pozostałych
  4. Przechodzimy do katalogu docelowego
  5. Usuwamy domyślny plik index.html
  6. Pobieramy paczkę instalacyjną systemu wordpress ze strony https://pl.wordpress.org/txt-download/
  7. Rozpakowujemy archiwum do bieżącego katalogu
  8. Przechodzimy do rozpakowanego katalogu z plikami
  9. Przenosimy całe rozpakowane archiwum do katalogu nadrzędnego czyli do /var/www/html
  10. Przechodzimy do katalogu nadrzędnego
  11. Usuwamy pusty katalog wordpress
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
 root@debian9:~# cd /var/www
 root@debian9:~# chown -R www-data.www-data html
 root@debian9:~# chmod 775 html
 root@debian9:~# cd html
 root@debian9:~# rm index.html
 root@debian9:~# wget https://pl.wordpress.org/wordpress-4.9.5-pl_PL.tar.gz
 root@debian9:~# tar -zvxf wordpress-4.9.5-pl_PL.tar.gz
 root@debian9:~# cd wordpress
 root@debian9:~# mv * ../
 root@debian9:~# cd ..
 root@debian9:~# rm -r wordpress

Pozostałą część konfiguracji wykonujemy przy pomocy przeglądarki wchodząc na adres IP którego użyliśmy do łączenia się przez PuTTY, w tym przypadku http://192.168.56.101

../_images/d-30.png

Po uruchomieniu instalatora musimy wprowadzić dane bo bazy danych którą utworzyliśmy wcześniej.

../_images/d-31.png

Następnie uruchamiamy instalację

../_images/d-32.png

Podajemy podstawowe dane naszej witryny oraz tworzymy głównego użytkownika

../_images/d-33.png

Jeśli wszytko przebiegło poprawnie, możemy się zalogować do zaplecza.

../_images/d-34.png

Po zalogowaniu możemy dodać nasz pierwszy artykuł czy dostosować system do własnych potrzeb.

../_images/d-35.png

I takim sposobem uruchomiliśmy system CMS w tym przypadku oparty na dystrybucji Wordpress.

../_images/d-36.png