Serwery baz danych

Transkrypt

Serwery baz danych
Serwery baz danych
Laboratorium 0a. Pobieranie najnowszej wersji bazy danych
Ćwiczenie 1: Sprawdź ostatnią wersję (alfa) serwera baz danych PostgreSQL
1. Otwórz stronę internetową z plikami źródłowymi serwera baz danych
PostgreSQL. Jaka jest ostatnia dostępna wersja? 11 sierpnia 2016 roku była to
wersja 9.5.3. Dalej w instrukcji będziemy posługiwać się tą wersją.
2. Po wybraniu tej wersji u góry w przeglądarce (Google Chrome), pojawił się adres:
https://www.postgresql.org/ftp/source/v9.5.3/.
3. Uruchom wirtualną maszynę z serwerem Debian (plik sbd2015-pgsql-9.4.1src.vdi); zaloguj się jako użytkownik dbuser (hasło: sbd).
4. Wejdź do katalogu /src, czyli wykonaj komendę cd /src.
5. Pobierz plik postgresql-9.5.3.tar.bz2, czyli wykonaj komendę wget adres+nazwa
pliku czyli: wget https://www.postgresql.org/ftp/source/v9.5.3/postgresql9.5.3.tar.bz2. Po wykonaniu tej komendy serwer zwraca następujący błąd
6. Komunikat systemowy jednoznacznie wskazuje, aby połączyć się bez
konieczności sprawdzania certyfikatu (parametr --no-check-certificate). Tym
samym, zmieniona komenda powinna brzmieć następująco: wget --no-checkcertificate https://www.postgresql.org/ftp/source/v9.5.3/postgresql9.5.3.tar.bz2. Serwer zwrócił błąd 404, co oznacza, iż żądany przez użytkownika
plik nie został znaleziony na serwerze. Tym samym, adres jest błędny.
7. Po wybraniu prawym klawiszem na pliku postgresql-9.5.3.tar.bz2, dostępna
jest opcja „Kopiuj adres linku”. Po wklejeniu tego adresu do notatnika jest to
adres: https://ftp.postgresql.org/pub/source/v9.5.3/postgresql9.5.3.tar.bz2; jest to inny adres niż wyświetla w pasku adresu przeglądarka.
8. Kolejna próba pobrania pliku z serwera, tym samym przy pomocy komendy:
wget --no-check-certificate
https://ftp.postgresql.org/pub/source/v9.5.3/postgresql-9.5.3.tar.bz2
powinna zakończyć się sukcesem.
9. Aby zweryfikować czy plik został zapisany w odpowiednim miejscu, należy
wydać polecenie ls -l /src.
Ćwiczenie 2: Aktualizacja pliku „listy” źródeł.
Do części swoich operacji APT używa pliku zawierającego listę `źródeł', z których mogą
być pobierane pakiety. Tym plikiem jest /etc/apt/sources.list. Aby zmienić wpisy
(dystrybucja squeeze została przeniesiona do archiwum), należy:
1. Edytować plik /etc/apt/sources.list, czyli wydać polecenie pico
/etc/apt/sources.list;
2. Zmienić dwa pierwsze wpisy tak oby przyjęły one następującą postać:
deb http://archive.debian.org/debian squeeze main contrib non-free
deb http://archive.debian.org/debian squeeze-lts main contrib non-free
3. Zapisz plik, czyli wykonaj polecenie CTRL+O i następnie wyjdź z programu, czyli
wykonaj polecenie CTRL+X.
4. Dokonaj aktualizacji listy pakietów, czyli wykonaj polecenie apt-get update;
zwróć uwagę z jakimi serwerami łączy się menedżer pakietów
5. Aby dokonać fizycznej aktualizacji plików, wykonaj polecenie apt-get upgrade;
więcej na temat menedżera pakietów można znaleźć na tej stronie.
Ćwiczenie 3. Instalacja serwera i klienta SSH.
W celu łatwiejszego (wygodniejszego) dostępu do serwera baz danych można łączyć się
zdalnie z serwerem, wykorzystując w tym celu protokół SSH, służący do terminalowego
łączenia się zdalnymi komputerami. Aby go zainstalować należy:
1. Zaloguj się jako root, czyli wykonaj polecenie su i podaj hasło (sbd).
2. Zainstaluj protokół ssh w wersji serwer i klient, czyli wykonaj polecenie apt-get
install openssh-server openssh-client ;
3. W przypadku modyfikacji domyślnej konfiguracji usługi, dobrą praktyką jest
wykonanie kopii pliku, który przechowuje jej konfigurację; plik konfiguracji
usługi ssh to /etc/ssh/sshd_config; wykonaj kopię tego pliku, czyli wykonaj
polecenie cp /etc/ssh/sshd_config /etc/ssh/sshd_config.orgnial_copy
4. Uruchom usługę ssh, czyli wykonaj polecenie /etc/init.d/ssh start; aby
zatrzymać usługę należy wykorzystać parametr stop, aby ją zrestartować należy
wykorzystać parametr restart.
5. Wygodnym i godnym uwagi programem tj. klientem protokołu ssh jest program
Putty, dostępny do pobrania tutaj.
6. Uruchom program. W pasku Host Name (or IP address) wpisz adres IP pętli
zwrotnej: 127.0.0.1, i niezarezerwowany (losowo wybrany) numer portu, np.
12345; w sekcji Window, wybierz podsekcje Apperance, zmienić czcionkę na
Consolas; wróć do sekcji Session, wpisz nazwę SBD-Postgres i kliknij Save.
7. Aby móc połączyć się z serwerem bazy danych należy sprawdzić jego adres IP, w
tym celu wykonaj polecenie ifconfig -a w konsoli serwera;
8. W powyższym przypadku, adres IP interfejsu eth5 to 10.0.2.15. Teraz należy
utworzyć przekierowanie tak aby zapytania kierowane na adres 127.0.0.1 na
porcie 12345 były przekierowywane do serwera na adres 10.0.2.15 na port 22;
aby to zrobić wybierz Oracle VM VirtualBox Manager, wybierz wirtualną
maszynę, która jest uruchomiona i na której został zainstalowany serwer bazy
danych, następnie wybierz Settings, przejdź do zakładki Network, i wybierz
Port Forwarding; teraz należy utworzyć adekwatną do powyższych ustawień
regułę, czyli klikamy po prawej stronie przycisk Add new port forwarding rule;
powinna być zdefiniowana tak jak na poniższym obrazie.
9. Ostatecznie należy zatwierdzić klikając OK.
10. Aby połączyć się zdalnie z serwerem bazy danych, w programie Putty, kliknij
Open; powinna pojawić się informacja dotycząca akceptacji nowego klucza, w
tym miejscu należy kliknąć Yes (Tak); ostatecznie powinien pojawić się ekran z
podaniem nazwy użytkownika (obraz poniżej);
Zaloguj się jako super użytkownik, czyli podaj login root i hasło sbd. Czy Twoim
zdaniem jest to dobra praktyka, aby logować się zdalnie wykorzystując w tym celu konto
super użytkownika? Gdzie Twoim zdaniem można znaleźć informacje na temat polityki
(dobrych praktyk) w zakresie bezpiecznego wykorzystywania kont użytkowników?
Dobrą praktyką, zresztą tylko jedną z wielu, jest brak możliwości zdalnego logowania się
super użytkownika. Konfiguracja usługi ssh znajduje się w pliku /etc/ssh/sshd_config.
Aby zabronić super użytkownikowi logowania się, wykonaj polecenie pico
/etc/ssh/sshd_config, następnie zmień parametr PermitRootLogin z yes na wartość
no (pamiętaj o spacji po nazwie), zapisz zmiany w pliku i wyjdź z edytora pico;
następnie zrestartuj usługę ssh, czyli wykonaj polecenie service ssh restart.
Czy teraz zalogowanie się jako super użytkownik jest możliwe? Ekran poniżej, po próbie
zalogowania się, wskazuje że dostęp został zabroniony.