Jeśli mamy już zainstalowanego Debiana 9 (Stretch) i jesteśmy zalogowani na nim jako root (su - lub sudo su) to lecimy z instalacją LMS`a - LAN Management System:
Na początku musimy dodać repozytorium bazy danych MariaDB:
Zmieniamy parę ustawień dla Apache2 oraz wykonujemy restart:
cp /etc/php/7.0/apache2/php.ini /etc/php/7.0/apache2/php.ini.copy-$(date +%Y-%m-%d)
sed -i "s/\;*display_errors\s*\=.*/display_errors \= Off/g" /etc/php/7.0/apache2/php.ini
sed -i "s/\;*display_startup_errors\s*\=.*/display_startup_errors \= Off/g" /etc/php/7.0/apache2/php.ini
sed -i "s/\;*register_globals\s*\=.*/register_globals \= Off/g" /etc/php/7.0/apache2/php.ini
sed -i "s/\;*default_charset\s*\=.*/default_charset \= \"UTF\-8\"/g" /etc/php/7.0/apache2/php.ini
sed -i "s/\;*max_execution_time\s*\=.*/max_execution_time \= 60/g" /etc/php/7.0/apache2/php.ini
sed -i "s/\;*memory_limit\s*\=.*/memory_limit \= 512M/g" /etc/php/7.0/apache2/php.ini
sed -i "s/\;*date.timezone\s*\=.*/date.timezone \= \"Europe\/Warsaw\"/g" /etc/php/7.0/apache2/php.ini
service apache2 restart
Instalujemy paczki dla MariaDB 10.4:
apt-get install mariadb-server mariadb-client -y
Zmieniamy parę ustawień dla MariaDB 10.4:
mysql_secure_installation
Switch to unix_socket authentication [Y/n] n
Change the root password? [Y/n] n
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
Ustawiamy hasło dla roota w MariaDB 10.4:
mysql -u root
ALTER USER root@localhost IDENTIFIED VIA mysql_native_password USING PASSWORD("**MYSQL**PASSWORD**ROOT**");
quit
Można też zmienić parę ustawień dla MariaDB 10.4: (jakie wartość ustawić odsyłam do dokumentacji)
cp /etc/mysql/my.cnf /etc/mysql/my.cnf.copy-$(date +%Y-%m-%d)
sed -i "s/^max_connections.*/max_connections = 500/" /etc/mysql/my.cnf
sed -i "s/^innodb_buffer_pool_size.*/innodb_buffer_pool_size = 5G/" /etc/mysql/my.cnf
sed -i "s/^max_allowed_packet.*/max_allowed_packet = 64M/" /etc/mysql/my.cnf
service mariadb restart
Instalujemy paczki dla phpMyAdmin:
apt-get install phpmyadmin -y
Serwer WWW do automatycznej rekonfiguracji: apache2
Configure database for phpmyadmin with dbconfig-common? Tak
MySQL application password for phpmyadmin: **MYSQL**PASSWORD**PHPMYADMIN**
Password confirmation: **MYSQL**PASSWORD**PHPMYADMIN**
Password of the database's administrative user: **MYSQL**PASSWORD**ROOT**
Instalujemy parę programów, które potem się przydadzą:
apt-get install wget curl sudo git -y
Pobieramy LMS`a oraz go rozpakowujemy:
cd /tmp
wget -c https://github.com/lmsgit/lms/archive/LMS_24.tar.gz
tar zxvf /tmp/LMS_24.tar.gz -C /var/www/html
mv /var/www/html/lms-LMS_24/ /var/www/html/lms
rm /tmp/LMS_24.tar.gz
Tworzymy użytkownika oraz bazę dla LMS`a, a następnie importujemy strukturę:
mysql -u root -p
CREATE USER 'lms'@'localhost' IDENTIFIED BY '**MYSQL**PASSWORD**LMS**';
GRANT USAGE ON * . * TO 'lms'@'localhost' IDENTIFIED BY '**MYSQL**PASSWORD**LMS**' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
CREATE DATABASE IF NOT EXISTS `lms` CHARACTER SET utf8 COLLATE utf8_polish_ci;
GRANT ALL PRIVILEGES ON `lms` . * TO 'lms'@'localhost';
flush privileges;
use lms;
source /var/www/html/lms/doc/lms.mysql;
quit;
sed -i "s/\;\s*type\s*\=.*/type \= mysql/g" /etc/lms/lms.ini
sed -i "s/\;\s*host\s*\=.*/host \= localhost/g" /etc/lms/lms.ini
sed -i "s/\;\s*user\s*\=.*/user \= lms/g" /etc/lms/lms.ini
sed -i "s/\;\s*password\s*\=.*/password \= **MYSQL**PASSWORD**LMS**/g" /etc/lms/lms.ini
sed -i "s/\;\s*database\s*\=.*/database \= lms/g" /etc/lms/lms.ini
sed -i "s/\;\s*sys_dir\s*\=.*/sys_dir \= \/var\/www\/html\/lms/g" /etc/lms/lms.ini
sed -i "s/\;\s*userpanel_dir\s*\=.*/userpanel_dir \= \/var\/www\/html\/lms\/userpanel/g" /etc/lms/lms.ini
Teraz wchodzimy z przeglądarki na: http://IP_SERWERA/lms/
Naszym oczom ukaże się LMS, który poprosi o utworzenie pierwszego użytkownika.
Z podstawowych rzeczy po zalogowaniu się do LMS`a musimy utworzyć:
Konfiguracja > Firmy (Oddziały) > Nowa firma
Konfiguracja > Host
Konfiguracja > Stawki podatkowe
Finanse > Nowa taryfa
Sieci IP > Nowa sieć
Teraz już możemy dodać klientów, komputery (pierwsze urządzenia klienckie) oraz zobowiązania.
Jeśli używasz MikroTika jako główne urządzenie do autoryzacji oraz podziału pasma to polecam zakupić mojego autorstwa skrypty, które mają za zadanie synchronizować ustawienia komputerów DHCP oraz/lub PPPoE, ale także Simple Queues.