Linux
  • << DEBIAN >>

  •   Сървър на отделни хостове
  •     DNS Сървър
  •     SQL Сървър
  •     WEB Сървър
  •     Пощенски Сървър
  •   PXE Server
  •   PXE UEFI Server - TFTP
  •   Debian 9
  •     Инсталиране на Debian 9
  •     Първоначални настройки (мрежа, VIM, Кирилизация)
  •     Инсталиране и настройка на SSH
  •     Инсталиране и настройка на DNS
  •     Инсталиране и настройка на NTP
  •     Инсталиране и настройка на Apache
  •     Инсталиране и настройка на MySQL (MariaDB)
  •     Инсталиране и настройка на PHPMyAdmin
  •     Инсталиране и настройка на собствен облак
  •     Инсталиране и настройка на SAMBA
  •     Инсталиране и настройка на FTP сървър
  •     Инсталиране и настройка на OSCAM
  •     Инсталиране и настройка на Mail server
  •       Първоначално конфигуриране на базата данни
  •       Инсталиране и конфигуриране на PostFix
  •       Инсталиране и конфигуриране на Dovecot
  •       PostFix дефинира Dovecot да удостоверява
  •       RoundCube
  •       Тестване доставката на поща
  •       Създаване на TLS криптиран ключ и сертификат
  •       WEB администриране
  •       Антиспам със SpamAssassin
  •       Антиспам с RSpmad
  •   Debian 11
  •     Как зарежда Linux
  •     Разпределение на диска при BIOS и UEFI
  •     Debian 11 на BIOS върху LVM и RAID
  •     Инсталиране на Debian 11 на BIOS и ZFS
  •     Инсталиране на Debian 11 на BIOS и ZFS-1
  •     Инсталиране на Debian 11 на UEFI и ZFS
  •     ZFS Замяна на развален огледален диск
  •     Ремонт на GRUB и INITRAMFS
  •   Debian 12
  •     Първоначални настройки
  •     DNS Сървър
  •     Добавяне на втори диск
  •     Файлов сървър + WEBMIN
  •     SAMBA
  •     Инсталиране и настройка на Apache
  •     Инсталиране и настройка на Nginx
  •     MySQL и PHPMyAdmin
  •     Елементарен MAIL сървър
  •       Подобрение SSL/TLS, Maildir, LMTP
  •       Подобрение ВИРТУАЛИЗАЦИЯ без MySQL
  •       Подобрение ВИРТУАЛИЗАЦИЯ и MySQL
  •       Подобрение Антиспам - SpamAssasin
  •       Подобрение Антиспам - RSpamd
  •       Защита - SPF, DKIM и DMARK
  •       Подобрение Антивирус
  •     Пълноценен MAIL сървър
  •     Пощенски сървър с iRedMail и PHPMyAdmin
  •       DKIM, SPF и DMARK
  •     MAIL сървър за вътрешна мрежа
  •     NextCloud
  •     Сървър за отдалечен достъп - RustDESK
  • << UBUNTU >>
  •   Ubuntu SERVER 22.04
  •     Инсталиране на Ubuntu 22.04 Server
  •     Първоначални настройки на Ubuntu 22.04 Server
  •     DNS в Ubuntu 22.04 Server
  •     MySQL Apache PHPMyAdmin
  •     Пощенски сървър
  •       Пощенски сървър в опростен вариант
  •       PostFix, Dovecot по-подробно
  •   Ubuntu mini
  • << RAID >>
  •     BIOS RAID1+MSDOS
  •     BIOS RAID1+MSDOS+LVM
  •     UEFI RAID1
  • << BTRFS >>
  •     BTRFS - създаване монтиране fstab размер
  •     BTRFS - RAID
  •     BTRFS - subvolume и snapshot
  • << КОНТЕЙНЕРИ >>
  •     Инсталиране на LXC/LXD
  •     Образи (image) в LXC/LXD
  •     Контейнери в LXC/LXD
  •     Команди в LXC/LXD
  • << ОТСТРАНЯВАНЕ НА ГРЕШКИ >>
  •     SWAP
  •     InitRAMFs
  • Пощенски сървър с iRedMail

    Системни изисквания: - хардуер с минимум 4GB RAM, за слабо натоварен сървър, 8GB и нагоре за натоварен, - свободни номера на UID/GID (потребител/група) 2000, 2001, 2002, - домейн може и под домейни с дефинирани А и МХ записи, - инсталиран Debian 12. Какво имаме: - инсталирана ОС Debian 12, - име на домейна - my.tlan.net - име на поддомейни в DNS-a - mail.my.tlan.net, ns1.my.tlan.net, www.my.tlan.net - име на хоста - ns1 - FQDN на хоста - ns1.my.tlan.net Започваме с няколко проверки. Първата е да определим FQDN (пълното име на хоста в домейна).

    hostname -f ns1.my.tlan.net

    Искаме да го променим.

    hostnamectl set-hostname mail.my.tlan.net

    На практика смени в /etc/hostname ns1 на mail.my.tlan.net Да проверим.

    hostname -f mail.my.tlan.net

    Правилно. Да поправим файла обвързващ IP с име на хоста.

    nano /etc/hosts 127.0.0.1 localhost 127.0.1.1 ns1.my.tlan.net ns1 185.163.245.186 ns1.my.tlan.net ns1

    Забележете, тук за 185.163.245.186, FQDN е ns1.my.tlan.net ns1, а когато тестваме за hostname отговора е mail.my.tlan.net.

    Инсталиране на iRedMail

    За самата инсталация ще ни трябват пакети wget и gzip. Да ги инсталираме.

    apt install wget gzip -y

    В случая бяха инсталирани, но все пак трябва да се провери. Самата инсталация на iRedMail се прави от архив наличен на сайта на iRedMail. Нека да смъкнем архива на нашия сървър. С браузъра отиваме на : https://www.iredmail.org/download.html. Там където е описана стабилната версия. Копираме линка към архива. След това изпълняваме на нашия сървър:

    cd /root/ wget https://github.com/iredmail/iRedMail/archive/refs/tags/1.6.8.tar.gz

    На практика в /root папката смъкнахме файла 1.6.8.tar.gz (инсталационния архив на iRedMail). Да го разархивираме.

    tar xvf 1.6.8.tar.gz

    Прехвърляме се в папката на архива.

    cd iRedMail-1.6.8

    Променяме правата на инсталационния скрипт, така че да може да се изпълнява.

    chmod +x iRedMail.sh

    Стартираме инсталационния скрипт

    bash iRedMail.sh

    Предлага да инсталираме iRedMail чрез помощник.

    Pic01

    Предлага къде да се намират пощенските кутии с принадлежащите им файлове.

    Pic02

    В случая ще се намират във /var/vmail. Отново се съгласяваме, Next за продължение.

    Pic03

    Предлага да ползваме Nginx web сървър за пощенския клиент.

    Pic04

    Ще ползваме MariaDB за база данни Предлага да създадем парола за главния потребител за MariaDB

    Pic05

    Pic06

    Име на домейна на пощенския ни сървър. В случая е my.tlan.net.

    Pic07

    Парола за администратора на пощенския сървър.

    Pic08

    Предлага кои пакети да инсталираме за пощенския сървър: - Roundcubemail - WEB клиент на пощенския сървър, - SOGO - допълнителен WEB клиент, календар, адресна кника и т.н. - netdata - системно наблюдение - iRedAdmin - WEB базирано администриране на iRedMail - Fail2ban - блокиране по IP ако няколко пъти е въведена грешно паролата от потребителя Появява се следния надпис.

    Storage base directory: /var/vmail * Mailboxes: * Daily backup of SQL/LDAP databases: * Store mail accounts in: MariaDB * Web server: Nginx * First mail domain name: my.tlan.net * Mail domain admin: postmaster@my.tlan.net * Additional components: Roundcubemail netdata iRedAdmin Fail2ban < Question > Continue? [y|N] y

    Предлага да огледаме какво сме дефинирали до тук и ако всичко е вярно избираме y за потвърждение. Започва самата инсталация която продължава не малко време. След време се появява следния екран:

    ************************************************************************ * iRedMail-1.6.8 installation and configuration complete. ************************************************************************* < Question > Would you like to use firewall rules provided by iRedMail? < Question > File: /etc/nftables.conf, with SSHD ports: 6705. [Y|n] n

    Предлага защитна стена за iRedMail. В слуая не ни е необходима, защото ползваме рутер със защитна стена в него. Завършихме. Появява се следния екран:

    ******************************************************************* * URLs of installed web applications: * * - Roundcube webmail: https://mail.my.tlan.net/mail/ * - netdata (monitor): https://mail.my.tlan.net/netdata/ * * - Web admin panel (iRedAdmin): https://mail.my.tlan.net/iredadmin/ * * You can login to above links with below credential: * * - Username: postmaster@my.tlan.net * - Password: TIT3x100bs * * ******************************************************************** * Congratulations, mail server setup completed successfully. Please * read below file for more information: * * - /root/iRedMail-1.6.8/iRedMail.tips * * And it's sent to your mail account postmaster@my.tlan.net. * ********************* WARNING ************************************** * * Please reboot your system to enable all mail services. * ********************************************************************

    Адреси за ползване и управление на пощенския сървър: https://mail.my.tlan.net/mail/ - WEB клиент на пощенския сървър https://mail.my.tlan.net/netdata/ - адрес за наблюдение на пощенския сървър https://mail.my.tlan.net/iredadmin/ - адрес за администриране на пощенския сървър Рестартираме Debian.

    reboot

    След рестарта проверяваме по горните адреси за работоспособността на пощенския сървър. До тук всичко работи коректно. Остана да се преборим със сертификатите. Ще използваме на Let's Encrypt. За целта първо да инсталираме certbot.

    apt install certbot -y

    След това проверяваме дали можем да получим сертификат.

    certbot certonly --webroot --dry-run -w /var/www/html -d my.tlan.net -d mail.my.tlan.net -d ns1.my.tlan.net Saving debug log to /var/log/letsencrypt/letsencrypt.log Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): tachko@my.tlan.net - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.4-April-3-2024.pdf. You must agree in order to register with the ACME server. Do you agree? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y Account registered. Simulating a certificate request for my.tlan.net and 2 more domains The dry run was successful.

    Всичко е точно, проверката е успешна можем да получим истинския сертификат.

    certbot certonly --webroot -w /var/www/html -d my.tlan.net -d mail.my.tlan.net -d ns1.my.tlan.net Saving debug log to /var/log/letsencrypt/letsencrypt.log Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): tachko@my.tlan.net - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.4-April-3-2024.pdf. You must agree in order to register with the ACME server. Do you agree? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing, once your first certificate is successfully issued, to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y Account registered. Requesting a certificate for my.tlan.net and 2 more domains Successfully received certificate. Certificate is saved at: /etc/letsencrypt/live/my.tlan.net/fullchain.pem Key is saved at: /etc/letsencrypt/live/my.tlan.net/privkey.pem This certificate expires on 2024-07-19. These files will be updated when the certificate renews. Certbot has set up a scheduled task to automatically renew this certificate in the background. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - If you like Certbot, please consider supporting our work by: * Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate * Donating to EFF: https://eff.org/donate-le - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    По време на създаване на сертификата ще бъдете попитани за ел. поща на която ще се пращат уведомления ако сертификата автоматично не е подновен. Отваряме файла с настройки за нашия домейн.

    nano /etc/letsencrypt/renewal/my.tlan.net.conf ### Търсим секцията [renewalparams] ### Отдолу под [renewalparams] в самата секция добавяме: renew_hook = /etc/iRedMail_ssl.sh

    Сега да създаем и самия скрипт.

    nano /etc/iRedMail_ssl.sh #!/bin/bash rm -f /etc/ssl/private/iRedMail.key rm -f /etc/ssl/certs/iRedMail.crt ln -s /etc/letsencrypt/live/my.tlan.net/privkey.pem /etc/ssl/private/iRedMail.key ln -s /etc/letsencrypt/live/my.tlan.net/fullchain.pem /etc/ssl/certs/iRedMail.crt systemctl restart dovecot systemctl restart postfix systemctl restart nginx

    Дадения скрипт трие старите сертификати и на тяхно място създава нови. Правим скрипта изпълним

    chmod +x /etc/iRedMail_ssl.sh

    Стартираме скрипта

    /etc/iRedMail_ssl.sh

    Проверяваме дали работи правилно сертификата на: https://mail.my.tlan.net/mail С това приключваме. Имаме работещ пощенски сървър. Имаме инсталиран SQL в случая е MariaDB. Имаме инсталиран WEB сървър, който е Nginx. Да инсталираме PHPMyAdmin така, че да можем да го ползваме с Nginx. Инстгалираме PHPMyAdmin

    apt -y install wget php php-cgi php-mysqli php-pear php-mbstring libapache2-mod-php php-common php-phpseclib php-mysql php-zip php-gd -y apt install phpmyadmin -y

    По време на инсталацията за WEB сървър избираме Apache независимо, че го нямаме. Можете да проверите самата инсталация на http://tlan.net/menu/linux/debian/debian12/mysql_phpmyadmin/mysql_phpmyadmin12.php Тъй като ползваме Nginx, трябва да създадем линк на PHPMyAdmin към нашия WEB сървър

    ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

    Проверяваме как работи PHPMyAdmin на: https://my.tlan.net/phpmyadmin. Всичко е нормално.