wtorek, 24 września 2019

Ubuntu 18.04 Serwer WWW


1 Instalacja Ubuntu serwer


Aby mieć na czym "postawić" serwer www dobrze jest zacząć od instalacji samego systemu, na którym ten serwer będzie działał.

Zaglądnij TU

2 Instalacja MC


Aby łatwiej edytowac pliki zainstalujemy sobie Midnight Commander'a

sudo apt install mc -y

3 Ustawienie stałego adresu IP


Aby nasz serwer był widocznym pod konkretnym stały adresem IP (Jeśli nie ustawiliśmy stałego IP podczas instalacji Ubuntu), należy odpowiednio skonfigurować system. W tym celu wydajemy polecenie

sudo mc

i otworzyć do edycji plik

/etc/network/netplan/50-cloud-init.yaml

Modyfikujemy wpisy według wzoru (podając oczywiście swoje adresy):




zapisujemy plik F2 i wychodzimy z mc klawiszem F10.

ZAPISUJEMY ZMIANY!

sudo netplan apply

4 Uaktualniamy system


sudo apt update

a następnie

sudo apt upgrade

5 Instalacja Apache2


sudo apt-get install apache2 -y

Jeśli wszystko poszło dobrze, to po wpisaniu w przeglądarkę adresu ip (na dowolnym komputerze w sieci!) nadanego w punkcie 2 wyświetli nam się strona:




czyli serwer WWW działa! A w lokalizacji /var/www/html/ są pliki indexu strony www. Można sobie podmienić na swoją. 


6 instalacja mysql-server



A teraz czas na bazę danych. Wpisujemy poniższe komendy:

sudo apt update

Instalacja serwera ale bez podawania hasła dla root:

sudo apt install mysql-server

konfiguracja serwera:

sudo mysql_secure_installation

Rozpocznie się konfigurowanie serwera. Generalnie na pierwsze pytanie możemy odpowiedzieć Y albo N, po czym system i tak poprosi o nadanie hasła dla root'a. Na następne pytania odpowiadamy Y i dajemy ENTER.

Na tym etapie musimy jeszcze zmienić sposób autoryzacji root'a. Gdybyśmy teraz zainstalowali phpmyadmin'a i próbowali zalogować na konto root otrzymalibyśmy w odpowiedzi błąd autoryzacji.

Aby użyć hasła do połączenia z MySQL jako root, musisz zmienić metodę uwierzytelniania z auth_socket na mysql_native_password. Aby to zrobić, otwieramy okno MySQL w swoim terminalu wpisując:

sudo mysql

podajemy hasło i sprawdzamy jaką metodę autoryzacji mamy ustawiona dla konta root:

SELECT user,authentication_string,plugin,host FROM mysql.user;

Output
+------------------+-------------------------------------------+-----------------------+-----------+ | user | authentication_string | plugin | host | +------------------+-------------------------------------------+-----------------------+-----------+ | root | | auth_socket | localhost | | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost | | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost | | debian-sys-maint | *CC744277A401A7D25BE1CA89AFF17BF607F876FF | mysql_native_password | localhost | +------------------+-------------------------------------------+-----------------------+-----------+ 4 rows in set (0.00 sec)

wpisujemy komendę:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'nasze hasło';

a następnie:

FLUSH PRIVILEGES;

aby wprowadzić zmiany. Ponownie sprawdzamy czy zmiany zostały wprowadzone:

SELECT user,authentication_string,plugin,host FROM mysql.user;

i wychodzimy z mysql'a

sudo exit;

Od tego momentu logowanie do mysql'a będzie możliwe tylko po podaniu hasła:

mysql -u root -p

7 Instalacja PHP



sudo apt install php libapache2-mod-php


Pozostało nam tylko zainstalować wszystko co potrzebne z PHP :)


sudo apt install php php-gd php-curl php-mysql libapache2-mod-php php-mbstring php-gettext -y


i restartujemy apache'a


sudo systemctl restart apache2


8 Instalacja PHP Myadmin'a


A na koniec coś co ułatwi nam prace z bazą danych.

sudo apt install phpmyadmin -y

- zaznaczamy spacją apache2 i dajemy (TAB'em) OK,



- dajemy TAK i ENTER,


- nadajemy hasło dla phpmyadmina,


- i potwierdzamy hasło


9 Restart apache2


sudo service apache2 restart

10 testujemy PHPMYADMIN


W dowolnej przeglądarce, dowolnego komputera w sieci, wpisujemy adres naszego serwera jak poniżej.

adres serwera/phpmyadmin

Jeśli wszystko poszło dobrze pojawi się okno logowania phpmyadmina :)



Pomijając kwestie zabezpieczeń i dodatkowych konfiguracji, mozna powiedzieć że nasz serwer WWW DZIAŁA ;)

czwartek, 16 maja 2019

Moodle na Ubuntu

Moodle jest popularnym darmowym oprogramowaniem open source, a w rzeczywistości – system zarządzania nauczaniem(LMS). Z Moodle, można tworzyć i dostarczać zasoby edukacyjne, takie jak kursy, odczyty i fora dyskusyjne dla grupy uczniów.

Pracę z darmowym LMS'em Moodle zaczynamy oczywiście od instalacji systemu operacyjnego Ubuntu Serwer, oraz serwera WWW

1 Pobieranie Moodle


Najnowsza wersja Moodle na dzień dzisiejszy (16.05.2019), to 3.6.4+ i taką spróbujemy pobrać ze strony download Moodle.

Aby pobrać pakiety LMS Moodle do katalogu html wpisujemy komendy:

cd /var/www/html

sudo wget https://download.moodle.org/download.php/stable36/moodle-latest-36.zip

Ponieważ coś nie bardzo szło to pobieranie. Ściągnąłem archiwum na komputer i przesłałem go po ftp do serwera do katalogu /var/www/html!!

2 Rozpakowanie archiwum Moodle


Nie wychodząc z katalogu html wydajemy polecenie:

sudo unzip moodle-latest-36

3 Instalacja pakietów


Wydajemy polecenie:

sudo apt-get install aspell graphviz php7.0-curl php7.0-gd php7.0-intl php7.0-ldap php7.0-mysql php7.0-pspell php7.0-xml php7.0-xmlrpc php7.0-zip

a następnie uruchamiamiy ponownie Apache2:

sudo systemctl restart apache2

4 Baza danych dla LMS Moodle


Zaglądnij TUTAJ

5 Tworzenie katalogu do przechowywania danych


sudo mkdir /var/moodledata
sudo chown -R www-data /var/moodledata
sudo chmod -R 0770 /var/moodledata

6 Jeszcze zmiana uprawnień


cd /var/www

sudo chown -R www-data.www-data /var/www/html/xibo

sudo chmod -R 755 /var/www/html/xibo


c.d.n




poniedziałek, 7 stycznia 2019

EPESI CRM

EPESI to otwarta platforma CRM dla przedsiębiorstw do zarządzania ich potrzebami CRM, w tym organizowania, przetwarzania i przechowywania informacji w każdej firmie. Oferuje silnik przepływu pracy CRM i funkcje, które są intuicyjne i łatwe w konfiguracji.

Pracę z darmowym CMr'em EPESI Zaczynamy oczywiście od instalacji systemu operacyjnego  Ubuntu Serwer, oraz serwera www serwera WWW 



POMIJAMY JEDNAK INSTALACJĘ PHP!


Na początku (po wykonaniu powyższych instrukcji) wyłączamy listing katalogu apache2

sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/apache2/apache2.conf

i resetujemy Apache

sudo systemctl stop apache2.service 
sudo systemctl start apache2.service 
sudo systemctl enable apache2.service

1 Pobieranie EPESI cmr


Najnowsza wersja EPESI na dzień dzisiejszy (07.01.2019), jest do pobrania ze strony Github.

Aby pobrać pakiety EPESI do katalogu html wpisujemy komendy:

cd /tmp

sudo wget https://github.com/Telaxus/EPESI/archive/master.zip


2 Rozpakowanie EPESI crm


sudo unzip master.zip

sudo mv EPESI-master /var/www/html/epesi

3 Zmiana uprawnień



cd /var/www/html

sudo chown -R www-data.www-data /var/www/html/epesi

sudo chmod -R 755 /var/www/html/epesi

4 Instalacja PHP 7.2


sudo apt-get install software-properties-common

sudo add-apt-repository ppa:ondrej/php
sudo apt-get update

A teraz instalacja pakietów PHP (można po kolei a można wszystko na raz)

sudo apt install php7.2 libapache2-mod-php7.2 php7.2-common php7.2-mbstring php7.2-xmlrpc php7.2-soap php7.2-gd php7.2-xml php7.2-intl php7.2-mysql php7.2-cli php7.2-ldap php7.2-zip php7.2-curl -y

I jeszcze Phpmyadmin (tak jak w instalacji serwera www. Patrz punk 6 serwera WWW)

sudo apt-get install phpmyadmin -y

sudo service apache2 restart

5 Zakładamy Bazę Danych dla EPESI


Zaglądnij TUTAJ

7 Konfiguracja apache


sudo mcedit /etc/apache2/sites-available/epesi.conf

i wpisujemy to

<VirtualHost *:80> 

ServerAdmin admin@example.com 
DocumentRoot /var/www/html/epesi/ 
ServerName example.com 
ServerAlias www.example.com 

<Directory /var/www/html/epesi/> 
Options +FollowSymlinks 
AllowOverride All 
Require all granted 
</Directory> 

ErrorLog ${APACHE_LOG_DIR}/error.log 
CustomLog ${APACHE_LOG_DIR}/access.log combined 

</VirtualHost>

Podkreślone zmieniamy, zapisujemy plik (F2) i wychodzimy z mc (F10)

6 Włączamy moduł EPESI cms


sudo a2ensite epesicrm.conf 

sudo a2enmod rewrite

6 Restart Apacha


sudo systemctl restart apache2.service

7 Konfiguracja php.ini


sudo mcedit /etc/php/7.2/apache2/php.ini

i zmieniamy parametry

file_uploads = On 
allow_url_fopen = On 
memory_limit = 256M 
upload_max_filesize = 64M 
max_execution_time = 30 
display_errors = Off 
max_input_vars = 1500 
date.timezone = America/Chicago

9 Instalacja EPESI


Na dowolnym komputerze w sieci wpisujemy adres serwera:

adres serwera/epesi








poniedziałek, 3 grudnia 2018

Ruter + Freeradius

Na przykładzie czterech ruterów, pokażemy jak skonfigurować dostęp do sieci WiFi za pośrednictwem serwera radiusowego: Freeradius.
Generalnie najważniejsze do ustawienia parametry to:


  • Zabezpieczenie dostępu do sieci wifi (WPA-Enterprise, lub WPA2-Enterprise),
  • Ustawienia serwera Radius
    - Adres IP serwera Radiusowego
    - Port (Domyślnie 1812)
    - Hasło nadane w pliku /etc/freeradius/Clients.conf (secret =???)


ASUS RT-AC51U

Po wejściu do menu Wireless przechodzimy do zakładki "Ogólne" i ustawiamy:


  • Tryb autentykacji połączenia bezprzewodowego - WPA2-Enterprise



Adres IP Serwera: taki jak serwera Radiusowego
Port Serwera - 1812
Hasło dostępu: takie jak na Serwerze Radiusowym



D-Link Dir-655

- Po wejściu do menu WIRELESS SETTINGS, ustawiamy "Security Mode:" na "WPA-Enterprise"



- W tym oknie podajemy namiary na nasz serwer Radius. Pola "RADIUS Server IP Address:", "RADIUS Server Shared Secret" wypełniamy zgodnie z ustawieniami naszego serwera.


Modecom MC-WR22


Po wejściu do menu Wireless Setup ustawiamy:


  • Encryption - WPA2
  • Authentication Mode - Enterprise (RADIUS)
  • Radius Server IP Address: taki jak serwera Radiusowego
  • Radius Server Port - 1812
  • Radius Server Password: takie jak na Serwerze Radiusowym






TP-Link TL-WR1043N / TL-WR1043ND

Po wejściu do menu Wireless Security ustawiamy:
  • WPA/WPA2
  • Wersion: WPA2
  • Encryption: AES
  • Radius Server IP: jak na serwerze
  • Radius Port: 1812
  • Radius Password: jak na serwerze






Freeradius (Wersja prosta)

Poniższa instalacja Freeradiusa nie opiera się na bazie danych. Klienci dodawani są w plikach konfiguracyjnych, co przy dużej ich ilości może okazać się kłopotliwe i niewygodne. Instalacja taka świetnie sprawdzi się w domu prywatnym, lub w przypadku maksymalnie 20/30 klientów. Ale nic nie stoi na przeszkodzie by było ich nawet 100 ;)


1 Instalacja Freeradiusa


sudo apt-get install freeradius

2 Sprawdzamy konfigurację


sudo freeradius -CX

powinna pojawić się informacja

Configuration appears to be OK.

3 Zatrzymujemy Freeradiusa


sudo systemctl stop freeradius

3 Konfiguracja Freeradiusa


Konta użytkowników

sudo mcedit /etc/freeradius/users

zmieniamy linijki dotyczące logowania userów. Znajdujemy linijkę

#steve<>Cleartext-Password := "testing" (to przykład użytkownika)

na końcu sekcji po linijce

#    Framed-Compression = Van-Jacobsen...

dodajemy użytkownika

kowalski<>Cleartext-Password := "12345678" (to przykład naszego użytkownika)

Zapisujemy plik (F2) i wychodzimy z pliku (F10)

Klienci

Dodajemy klienta radiusowego (Jest to np. Ruter WiFi który ma być zabezpieczony Radiusem)

sudo mcedit /etc/freeradius/clients.conf

po linijce "#format is still accepted a przed client localhost { dodajemy adres rutera (ruterów), który będzie "rozmawiał" z naszym Radiusem. To ten ruter (rutery), do którego podłączać się będą klienci WiFi.

client xxx.xxx.xxx.xxx {
secret = hasło które wpiszemy do rutera w polu hasła dla radiusa
shortname = nazwa
}

Zapisujemy plik (F2) i wychodzimy z pliku (F10)

4 Uruchamianie logów dla autoryzacji


sudo mcedit /etc/freeradius/radiusd.conf

auth = yes

auth_badpass = yes
auth_goodpass = yes

Zapisujemy plik (F2) i wychodzimy z pliku (F10)

5 Uruchamiamy freeradiusa


sudo systemctl start freeradius

6 Test użytkownika


radtest użytkownik hasło 127.0.0.1 0 testing123

powinniśmy otrzymać komunikat

rad_recv: Access-Accept packet from host 127.0.0.1 port.....

7 Podgląd Logu Radiusa


sudo tail -f /var/log/freeradius/radius.log

wyjście z podglądy CTRL + C

8 Konfiguracja Rutera

Patrz TU

ZeroTier - Wirtualny Switch na Ubuntu 18.04

1. Instalacja Zerotier-One curl -s https://install.zerotier.com | sudo bash 2. Instalacja pakietów ZeroTier curl -O https:...