В тази част ще разгледаме как да създадем WEB панел за администрация на пощенските домейни, пощенските клиенти, алиасите и т.н. За целта ще ползваме на GRSoft продукта Virtual Mail Manager. Като за начало да посетим сайта http://www.grs-service.ch/pub/grs_mminstallation.html и да смъкнем сорса на програмата.
# wget http://www.grs-service.ch/pub/grs_mgr_v3-03_jessie_with_php7_setup.tgz
Създаваме директория за програмата и преместваме смъкнатия файл в новата директория:
# mkdir /home/www/GRSoft # mv ./grs_mgr_v3-03_jessie_with_php7_setup.tgz /home/www/GRSoft/
Разархивираме файла като преди това се преместваме в новосъздадената директория
# cd /home/www/GRSoft/ root@home:/home/www/GRSoft# tar zxvf grs_mgr_v3-03_jessie_with_php7_setup.tgz
Сега трябва да направиме така, че да се отваря в браузъра с https://home.tlan.net/admin/, същото се отнася и до https://home.tachko.com/admin/
# vi /etc/apache2/conf-available/GRSoft.conf Alias /admin /home/www/GRSoft <Directory /home/www/GRSoft> AllowOverride None Options +Indexes +ExecCGI Order deny,allow Allow from all DirectoryIndex index.php Require all granted </Directory>
Активираме промяната:
# a2enconf GRSoft # service apache2 restart
Инсталираме програмата от сайта https://home.tlan.net/admin/install.php
Избираме линка Check database connection за проверка на свързаността с базата данни.
Натискаме бутона Go to next step за да продължим
Натискаме линка Create tables now
Натискаме бутона Go to next step за да продължим
Натискаме линка Create MailMaster за продължение
Натискаме бутона Go to next step за да продължим
Натискаме върху линка Start customizing Mail Manager за продължение
Нямаме права за запис върху директорията
# chmod ugo+w /home/www/GRSoft/conf/
Натискаме върху линка Start customizing Mail Manager
Последните стъпки за защита са да изтрием файла install.php, файла conf/cnf_main_template.php, да изтрием папката install. Аз предпочитам не да ги трия а да ги преименувам със странни имена.
# mv /home/www/GRSoft/install.php /home/www/GRSoft/install.php.back # mv /home/www/GRSoft/conf/cnf_main_template.php /home/www/GRSoft/conf/cnf_main_template.php.back # mv /home/www/GRSoft/install /home/www/GRSoft/install.back
Да копираме /home/www/GRSoft/login.php като /home/www/GRSoft/index.php
# cp /home/www/GRSoft/login.php /home/www/GRSoft/index.php
И да влезем в сайта за настройка на пощенския сървър
По същия начин можеше да се влезе и с https://home.tlaan.net/admin/, тогава вместо login.php ще захапе index.php
До тука добре но не можем да управляваме домейни и да създаваме нови потребители. За целта трябва да се редактира записа domain_admins в базата pfdb
# mysql -u root -p
Да проверим наличните бази от данни:
MariaDB [(none)]> show databases; +-----------------------------+ | Database | +-----------------------------+ | information_schema | | mysql | | nextcloud | | performance_schema | | pfdb | | phpmyadmin | | roundcube | +-----------------------------+ 7 rows in set (0.00 sec)
Нас ни интерисува базата pfdb. Влизаме в нея:
MariaDB [(none)]> use pfdb; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed
Да проверим наличните таблици:
MariaDB [pfdb]> show tables; +-----------------------+ | Tables_in_pfdb | +-----------------------+ | domain_admins | | languages | | text | | virtual_aliases | | virtual_domains | | virtual_users | +-----------------------+ 6 rows in set (0.00 sec)
Интерисува ни таблицата domain_admins.
MariaDB [pfdb]> select * from domain_admins; +----+---------------+-----------+ | id | domain_id | user_id | +----+---------------+-----------+ | 1 | 0 | 0 | +----+---------------+-----------+ 1 row in set (0.00 sec)
Отговора е: id=1, domain_id=0, user_id=0, а трябва да е: id=1, domain_id=0, user_id=1, затова:
MariaDB [pfdb]> REPLACE INTO `pfdb`.`domain_admins` ( `id` , `domain_id` , `user_id` ) VALUES ('1', '0', '1'); Query OK, 2 rows affected (0.00 sec)
Да проверим:
MariaDB [pfdb]> select * from domain_admins; +----+---------------+-----------+ | id | domain_id | user_id | +----+---------------+-----------+ | 1 | 0 | 1 | +----+---------------+-----------+ 1 row in set (0.00 sec)
Всичко е наред.
MariaDB [pfdb]> flush privileges; Query OK, 0 rows affected (0.00 sec) MariaDB [pfdb]> quit Bye
Администраторските права са оправени. Ако пък се ползваше phpmyadmin:
Натискаме бутона Изпълнение за да влезем в PHPMyAdmin
Виждаме, че имаме запис id=1, domain_id=0 и user_id=0 , а трябва да изглежда id=1, domain_id=0 и user_id=1, редактираме го като два пъти цъкаме с левия бутон на мишката върху полето user_id и променяме стойността от 0 на 1 Влизаме наново в сайта https://home.tlan.net/admin/login.php и вече всичко си е както трябва
Вече можем да управляваме нашия пощенски сървър. Предстои да се сборим със спама, но както винаги в следващия епизод :)