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

niedziela, 2 grudnia 2018

Webtrees (Darmowe drzewo genealogiczne)

Webtrees to CMS, którego zadaniem jest tworzenie drzewa genealogicznego. Jest profesjonalnym i darmowym rozwiązaniem i jednocześnie silną konkurencją dla płatnych, rozwiązań: takich jak MyHeritage.
Pracę z darmowym CMS'em Webtrees Zaczynamy oczywiście od istalacji systemu operacyjnego  Ubuntu Serwer, oraz serwera www serwera WWW 

1 Pobieranie Webtrees


Najnowsza wersja Webtrees na dzień dzisiejszy (03.12.2018), to 2.0.0 i taką spróbujemy pobrać ze strony Github.

Aby pobrać pakiety Webtrees do katalogu html wpisujemy komendy:

cd /var/www/html

sudo wget https://github.com/fisharebest/webtrees/releases/download/2.0.0-alpha.3/webtrees-2.0.0-alpha.3.zip


2 Rozpakowanie Webtrees


sudo unzip  -webtrees-2.0.0-alpha.3.zip


3 Zmiana uprawnień do plików


cd /var/www

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

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

4 Zakładamy Bazę Danych dla Webtrees


Zaglądnij TUTAJ


5 Restart Apacha



sudo service apache2 restart

6 Instalacja Webtrees



Na dowolnym komputerze w sieci wpisujemy adres serwera:

adres serwera/

Powinno pojawić się okno:
- wybieramy język i dajemy "następna"




- okno testowe konfiguracji serwera



- wpisujemy dane bazy,




- i nazwę bazy,



- tworzymy konto administratora Webtrees,



- logujemy się do konta administratora,


- na koniec instalacji, nazywamy nasze drzewo, uzupełniamy URL i dajemy na "create"


- zanim zaczniemy zarządzać naszym drzewem zmieńmy język na polski. Language - Polski.



KONIEC

OpenVPN na Ubuntu

XIBO (system prezentacji za darmo)



Instalację Xibo należy zacząć od wyboru platformy na serwer. Może to być Windows Albo Linux (w moim przypadku Ubuntu Serwer).

Zarówno w pierwszym jak i drugim przypadku instalację zaczynamy od postawienia serwera www. Czyli XAMP lu WAMP na Windowsie i LAMP na Linuxie. W tym miejscu powalczymy z Xibo na Ubuntu.

Oczywiście zaczynamy od podstaw; czyli instalacji systemu operacyjnego  Ubuntu Serwer, oraz serwera www serwera WWW 


1 Pobieranie CMS Xibo


Najnowsza wersja Xibo na dzień dzisiejszy (13.12.2018), jest do pobrania na stronie Github.

Aby pobrać pakiety Xibo do katalogu html wpisujemy komendy:

cd /var/www/html

sudo wget https://github.com/xibosignage/xibo-cms/releases/download/1.8.11/xibo-cms-1.8.11.zip

2 Rozpakowujemy


sudo unzip develop.zip -d /var/www/html/

3 Zmiana uprawnień do plików


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

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

4 Dodatki


sudo apt-get install php-soap php-zip

5 Zakładamy Bazę Danych dla Xibo


Zaglądnij TUTAJ

6 Modyfukujemy apache2.conf


sudo mcedit /etc/apache2/apache2.conf

zmieniamy none na All


<Directory /var/www/>
 Options Indexes FollowSymLinks
 AllowOverride none
 Require all granted
</Directory>

<Directory /var/www/>
 Options Indexes FollowSymLinks 
 AllowOverride All 
 Require all granted 
</Directory>

sudo service apache2 stop 

a następnie

sudo a2enmod rewrite

i w końcu

sudo service apache2 restart

6 Restart Apache'a


sudo service apache2 restart

7 Instalacja Xibo


Na dowolnym komputerze w sieci wpisujemy adres serwera:

adres serwera/xibo/web

- Powinno pojawić się okno z błędami ;) ale najlepiej jakby wszystko było zafajkowane. Klikamy "Next"


cd


- Ustawiamy namiary na bazę danych. Ponieważ utworzyliśmy bazę w punkcie 5, wybieramy zakładkę "Existing" i wpisujemy dane jak poniżej (plus użytkownik i hasło),



- tworzymy konto administratora Xibo,


nadajemy klucz dla przyszłych klientów. Ten klucz będzie widoczny w panelu administracyjnym Xibo,

wskazujemy ścieżkę katalogu kolekcji. Tu pojawia się mały problem z uprawnieniami do tworzenia katalogów na serwerze. Najlepiej zrobić to tak:

Zakładamy (np przez midnight commandera) katalog w:

/home/nazwa_katalogu_uzytkownika/nazwa_katalogu_kolekcji

np.

/home/jacek/xibodane

Temu katalogowi nadajemy uprawnienia do "Zapisywanie przez Innych" (Klawisz F9 w MC - Plik - Zmień Uprawnienia), a następnie wpisujemy ścieżkę do tego katalogu w oknie poniżej i klikamy "Dalej"


- Pozostaje tylko zalogować się do panelu XIBO.


Freeradius + Mysql (Weesja lekko zaawansowana)

Freeradius w połączeniu z Mysql daje nam możliwość utworzenia dużej i łatwo zarządzanej bazy użytkowników sieci WiFi. W tym artykule zestawimy FR z Sql'em, spróbujemy dodać użytkowników i połączyć się z siecią WiFi. Ciekawym pomysłem byłoby zestawienie tego rozwiązania z bazą np. czytelników Biblioteki. Niestety na dzień dzisiejszy jest mało prawdopodobne.

Oczywiście zaczynamy od podstaw; czyli instalacji systemu operacyjnego  Ubuntu Serwer, oraz serwera www serwera WWW 


1 Instalacja potrzebnych pakietów.


sudo apt-get install freeradius freeradius-mysql freeradius-utils

2 Zatrzymujemy Freeradius'a


sudo systemctl stop freeradius

3 Baza Danych


Na dowolnym komputerze w sieci wpisujemy adres serwera:

adres serwera/phpmyadmin

Logujemy się podając login (root) i hasło założone podczas instalacji phpmyadmin'a.

W poniższym oknie wybieramy "Bazy danych", wpisujemy w polu "Nazwa bazy danych" np radius i dajemy "Utwórz".





ZAPAMIĘTUJEMY WPROWADZONE DANE! 


:)

4 Moduł SQL


- By włączyć moduł SQL, edytujemy plik

sudo mcedit /etc/freeradius/radiusd.conf

i usuwamy # z poniższych linijek:

$INCLUDE sql.conf

$INCLUDE sql/mysql/counter.conf

zapisujemy (F2) i wychodzimy (F10)

5 Edycja pliku sql.conf


Teraz przechodzimy do edycji pliku

sudo mcedit /etc/freeradius/sql.conf

odnajdujemy te linijki i ustawiamy swoje dane:

sql {
database = "mysql"
server = "localhost"
port = 3306
login = "radius" (tu wpisujemy swojego użytkownika)
password = "radpass" (a tu hasło użytkownika)
radius_db = "nazwa_bazy" (z punktu 3)
read_groups = yes
readclients = yes

Zapisujemy (F2) i zamykamy (F10)

6 Inne zmiany


- Dodatkowo, musimy pozmieniać odpowiednie linijki w plikach

sudo mcedit /etc/freeradius/sites-enabled/default

sudo mcedit /etc/freeradius/sites-enabled/inner-tunnel


authorize {
sql

accounting {
# detail
# unix
# radutmp
sql

session {
# radutmp
sql

Tworzenie użytkownika bazy i jej struktury


By stworzyć strukturę tabel oraz użytkownika, który będzie mógł na tej bazie operować, możemy posłużyć się gotowymi plikami, które znajdują się w katalogu

/etc/freeradius/sql/mysql/

to są owe pliki:

/etc/freeradius/sql/mysql/schema.sql ,
/etc/freeradius/sql/mysql/nas.sql
/etc/freeradius/sql/mysql/admin.sql

Plikowi admin.sql trzeba się dobrze przyjrzeć. Tworzy on użytkownika dla konkretnej bazy, a co za tym idzie, domyślne parametry nie będą działać z bazą i użytkownikiem założonym przez nas z poziomu phpmyadmin'a. Patrz grafika poniżej



- logujemy sie na konto root'a

su -

i wpisujemy komendy

mysql -u nazwa_użytkownika_bazy -p nazwa_bazy < /etc/freeradius/sql/mysql/schema.sql
mysql -u nazwa_użytkownika_bazy -p nazwa_bazy < /etc/freeradius/sql/mysql/nas.sql
mysql -u nazwa_użytkownika_bazy -p nazwa_bazy < /etc/freeradius/sql/mysql/admin.sql

- sprawdzamy czy tabele się utworzyły, logując się do MySQL (można przez phpmyadmin'a)

mysql -u root -p

SHOW DATABASES; - wyświetla bazy
USE nazwa_bazy; - wybiera bazę o nazwie nazwa_bazy
SHOW TABLES; - pokazuje tabele w bazie
DESCRIBE radcheck; - wyświetla parametry tabeli radcheck
SELECT * FROM radcheck; - wyświetla wpisy w tabeli

albo logujemy się do phpmyadmin'a

adres_serwera/phpmyadmin

Na koniec wychodzimy z konta root

8 Dodajemy użytkownika WiFi


Dodamy konto użytkownika WiFi. To użytkownik i hasło, dzięki któremu będziemy mogli połączyć się z siecią wifi np. przez smartfon czy laptop.

logujemy się do phpmyadmin'a

adres_serwera/phpmyadmin

Po zalogowaniu klikamy na nazwę bazy danych radius (utworzona w punkcie 3). Odnajdujemy tabelę radcheck i klikamy na "Wstaw" (po prawej stronie).


W Oknie poniżej wpisujemy dane i klikamy na "Wykonaj"


Start freeradius'a


sudo systemctl start freeradius

10 Test użytkownika


radtest Użytkownik Hasło 127.0.0.1 0 testing123

Powinniśmy otrzymać informację:

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

11 Dodajemy Klienta


zanim dodamy klienta (Router) do bazy MySQL, musimy wyłączyć przetwarzanie klientów z pliku radiusd.conf

sudo mcedit /etc/freeradius/radiusd.conf

odnajdujemy linijkę 

$INCULDE clients.conf

I wstawiamy # na początku*

Od tego momentu test z punktu 9 przestanie działać. Dopiero po dodaniu klienta localhost do bazy, test znów zacznie działać.

A zatem dodajmy klientów!

Logujemy się do phpmyadmin'a

adres_serwera/phpmyadmin

Po zalogowaniu klikamy na nazwę bazy danych radius (utworzona w punkcie 3). Odnajdujemy tabelę "nas" i klikamy na "Wstaw" (po prawej stronie).

Wypełniamy pola jak poniżej i klikamy "Wykonaj"


12 Restart Freeradius'a


sudo systemctl restart freeradius

13 Test


radtest Użytkownik Hasło 127.0.0.1 0 haslo (jak w punkcie 11)

14 Konfigurujemy klienta


Patrz TU


wtorek, 27 listopada 2018

Group Policy (Zasady grupy)

Tym razem coś na odmianę. Jakiś czas temu, a dokładnie 5 lat, przyszło nam zmierzyć się z problemem ciągłego przestawiania, "przekonfigurowywania", wprowadzania własnych porządków, ładu i składu na naszych komputerach z wolnym dostępem. No taki już jest czytelnik, czy tam klient. Zawsze ma chwilkę na ustawienie swojej tapety, poukładania ikon po swojemu, zmiany godziny, nazwy folderu i takie tam. Więc pogrzebaliśmy w "zasadach Grupy" i mamy spokój. A wygląda to tak:

1. Uruchamiamy konsolę mmc


Wpisujemy więc mmc.exe w pasku "uruchom" i klikamy ENTER.




2 Dodajemy przystawkę


Wybieramy PLIK a potem Dodaj/usuń przystawkę



3 wybieramy przystawkę


Wybieramy Edytor obiektów zasad grupy i dajemy "Dodaj"


4 Wybieramy Komputer i Użytkownika


W oknie poniżej klikamy na "Przeglądaj"


5 Kolejny krok ;) 


W tym oknie zaznaczamy "Ten komputer" i klikamy na "Użytkownicy"


6 Wybieramy grupę użytkowników


W tym okie zaznaczamy "Inni niż administratorzy" i klikamy "OK" W tym momencie wybieramy użytkowników, których dotyczyć będą wprowadzane ograniczenia i zasady.


tu klikamy "OK"


tu też "OK"


6 Zapisujemy plik


Wybieramy "Plik" - "Zapisz jako", wybieramy miejsce zapisu, nazwę pliku i klikamy "Zapisz" 


7 Otwieramy plik

Tak wygląda utworzony plik z gotowymi zasadami dla kont nie będących administratorami komputera. Pozostaje nam tylko ustalić zasady i zapisać zmiany. Najbardziej przyda nam się gałąź "Szablony administracyjne".


7 Przykłady


Klikamy kolejno na:

Szablony administracyjne - Menu start i pasek zadań - klikamy 2x na "Wyłącz dostęp do kontekstowych menu paska zadań". W nowym oknie klikamy na "Włączone" i dajemy "OK"

Od tej chwili na kontach "Nieadministracyjnych", nie będzie można wyświetlić menu "Właściwości" dla paska zadań i menu start.

--------------------------------------------------------------------------------------------------------------------------

Szablony administracyjne - Panel Sterowania - Personalizacja - klikamy 2x na "Zapobiegaj zmienianiu tła pulpitu". W nowym oknie klikamy na "Włączone" i dajemy "OK"

Od tej chwili na kontach "Nieadministracyjnych", nie będzie można zmieniać jakichkolwiek właściwości tła pulpitu.

--------------------------------------------------------------------------------------------------------------------------

Szablony administracyjne - Panel Sterowania - Personalizacja - klikamy 2x na "Zapobiegaj zmienianiu wygaszacza ekranu". W nowym oknie klikamy na "Włączone" i dajemy "OK"

To ustawienie uniemożliwia użytkownikom dodawanie, konfigurowanie i zmienianie wygaszacza ekranu na komputerze z poziomu Panelu sterowania. Nie uniemożliwia ono uruchamiania wygaszacza ekranu.

czwartek, 22 listopada 2018

Kilka stron na jednym serwerze

Jeśli mamy kilka instalacji CMS np. Drupal, Joomla, webtrees, WordPress albo kilka stron w takim samym cms i chcielibyśmy udostępniać je z jednego Apach'a, musimy stworzyć odpowiednie pliki konfiguracyjne.

1 Pliki konfiguracyjne


W katalogu 

/etc/apache2/conf-available

tworzymy plik xxx.conf, gdzie xxx to nazwa cmsa umieszczonego w katalogu

/var/www/xxx

 Będzie to np. joomla.conf. W utorzonym pliku umieszczamy to:

Alias /joomla "/var/www/joomla/"
<Directory "/var/www/joomla">
Options +FollowSymLinks
AllowOverride All

<IfModule mod_dav.c>
Dav off
</IfModule>

SetEnv HOME /var/www/joomla
SetEnv HTTP_HOME /var/www/joomla
</Directory>

<Directory "/var/www/joomla/data/">
# just in case if .htaccess gets disabled
Require all denied
</Directory>

Plik zapisujemy i zamykamy.

2 Tworzymy symboliczne linki


w katalogu 

/etc/apache2/conf-anabled

umieszczamy powiązania symboliczne z utworzonymi plikami

Jak? A no tak. W lewym oknie MC otwieramy folder

conf-available

a w prawym

conf-anabled

Zaznaczamy (w lewym oknie ) plik joomla.conf a potem wybieramy MENU FILE (plik)  i dajemy SYMLINK (dowiązanie symboliczne)

3 Ustawienie domyślnej strony (Katalogu)


W katalogu /etc/apache2/sites-available edytujemy plik 000-defoult.conf np. tak:

sudo mcedit /etc/apache2/sites-available/000-default.conf

Znajdujemy linijkę

DocumentRoot /var/www/html/(tu wpisujemy folder w którym jest nasza główna strona). Zapisujemy F2 i wychodzimy F10.

4 Restart Apache2


sudo service apache2 restart

poniedziałek, 19 listopada 2018

GLPI z OCSInventory

1 Zacznijmy od tego >>>

2 Pobieramy GLPI


cd /tmp

sudo wget https://github.com/glpi-project/glpi/releases/download/9.3.2/glpi-9.3.2.tgz

3 Rozpakowujemy archiwum


tar -xvzf glpi-9.3.2.tgz -C /var/www/html

4 Zmiana Uprawnień do katalogów


cd /var/www/html/glpi

sudo chmod -R 777 config
sudo chmod -R 777 files

5 Doinstalowujemy pakiety


sudo apt-get install -y php-imap php-apcu php-xmlrpc php-cas

5 Zmiana Konfiguracji Apache2


sudo mcedit /etc/apache2/apache2.conf



i w linijce  zmieniamy <------------->AllowOverride zmieniamy None na All

6 Restartujemy Apache


sudo service apache2 restart

7 Baza danych i jej użytkownik


Zaglądnij TUTAJ

8 Startujemy z instalacją GLPI


- Na początek wybieramy język ojczysty,




- akceptujemy regulamin,




- wybieramy "Instaluj",




- tu jest miejsce na błędy ;) ale u mnie jest zadowalająco zielono :),




- podajemy namiary na naszą bazę sql. Serwer to localhost, użytkownika i hasło nadaliśmy w punkcie 7, 




- wskazujemy naszą bazę,




- klikamy "Dalej" i czekamy.... czekamy... czekamy..... długo czekamy ;) aż zobaczymy to




- a potem to. Dajemy "Dalej",




- jeszcze raz "Dalej",
- a na koniec czytamy informacje o domyślnych loginach i hasłach i klikamy "Używaj GLPI",




- i logujemy się do GLPI




Łączymy GLPI z OCSInventory


1 Pobieramy wtyczkę ocs'a dla GLPI


Na serwerze przechodzimy do katalogu

cd /tmp

i wydajemy polecenie:

sudo wget https://plugins.glpi-project.org/#/plugin/ocsinventoryng

2 Rozpakowujemy archiwum


tar -xvzf glpi-ocsinventoryng-1.5.4.tar.gz -C /var/www/html/glpi/plugins

3 Instalujemy plugin w GLPI


W oknie GLPI wchodzimy w USTAWIENIA a potem WTYCZKI. Po prawej stronie klikamy na "Instaluj" i czekamy.




W prawym dolnym rogu ekranu wyświetli się okienko z informacją o poprawnym zainstalowaniu wtyczki,




- klikamy na "Aktywuj"




3 Konfigurujemy plugin w GLPI


- Klikamy na nazwę wtyczki,



- wybieramy OCSNG Servers,



- klikamy w plusik,




- wprowadzamy namiary na nasz serwer ocs,a


- klikamy na dodaj.

3 Test wtyczki


W GLPI wchodzimy w "Narzędzia" - "OCS Inventory NG"

- oknie poniżej klikamy na "Configuration of OCSNG server : ocs"



- klikamy na "test" aby pojawił się BŁĄD ;), który koniecznie trzeba usunąć. Problem leży w tym, że OCSInventory żąda od GLPI logowania. Trzeba tę funkcje wyłączyć w OCSInventory.




Logujemy sie do naszego OCSInventory i przechodzimy kolejno do "Konfiguracja" - "General Configuration" - "Serwer". Odnajdujemy wpis:


Usunięcie funkcji logowania (potrzebne GLPI).

i ustawiamy przełącznik na ON. Aktualizujemy (taki przycisk u dołu) a na koniec odświeżamy okno GLPI. Jeśli wszystko poszło dobrze zobaczymy informację

Tu widać przykładowe Komputery z naszej sieci





To Jeszcze nie koniec

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:...