Linux
  •     Как зарежда Linux

  • DEBIAN

  •   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
  •     Разпределение на диска при 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 Сървър
  •     Добавяне на втори диск
  •     SAMBA + WEBMIN
  •     SAMBA
  •     Инсталиране и настройка на Apache
  •     MySQL и PHPMyAdmin
  •     Инсталиране и настройка на Nginx
  •       Директиви location в Nginx
  •       MYSQL,PHP и PHPMyAdmin в Nginx
  •     Елементарен MAIL сървър
  •       Подобрение SSL/TLS, Maildir, LMTP
  •       Подобрение ВИРТУАЛИЗАЦИЯ без MySQL
  •       Подобрение ВИРТУАЛИЗАЦИЯ и MySQL
  •       Подобрение Антиспам - SpamAssasin
  •       Подобрение Антиспам - RSpamd
  •     Пълноценен MAIL сървър
  •     Пощенски сървър с iRedMail
  •       CertBot 1 домейн
  •       Виртуални хостове, CertBot 2 домейна
  •       DKIM, SPF и DMARK
  •       Допълнителни настройки (спам и т.н.)
  •     MAIL сървър за вътрешна мрежа
  •     NextCloud
  •     Сървър за отдалечен достъп - RustDESK

  • UBUNTU
  •   Ubuntu SERVER 22.04
  •     Инсталиране на Ubuntu 22.04 Server
  •     Първоначални настройки на Ubuntu 22.04 Server

  • ARCH
  •     Минимална базова инсталация на Arch
  •        Настройка на базовата система
  •        Инсталиране на OpenBOX
  •     Инсталиране на Arch на UEFI и ext4
  •     Инсталиране на Arch на UEFI и btrfs
  •       Резервно копиране в Arch
  •     Инсталиране на Arch на UEFI и DualBoot
  •     Инсталиране на Arch с DualBoot и archinstall
  •     KDE в Arch
  •     Инсталиране на KDE1 в Arch
  •     Инсталиране на LXQt върху Arch

  • RAID
  •     BIOS RAID1+MSDOS
  •     BIOS RAID1+MSDOS+LVM
  •     UEFI RAID1
  •     UEFI LVM RAID1

  • ZFS
  •     ZFS теория и малко практика

  • BTRFS
  •     BTRFS - създаване монтиране fstab размер
  •     BTRFS - RAID
  •     BTRFS - subvolume и snapshot

  • КОНТЕЙНЕРИ
  •     Инсталиране на LXC/LXD
  •     Образи (image) в LXC/LXD
  •     Контейнери в LXC/LXD
  •     Команди в LXC/LXD

  • ОТСТРАНЯВАНЕ НА ГРЕШКИ
  •     SWAP
  •     InitRAMFs

  • PROGRAMS
  •   Conky
  •   Sublime Text
  •   PiHole
  •   AdGuard

  • BGPOST
  •     Tar-App-01 SAMBA

  • DKIM-SPF-DMARC

    Тази статия е продължение на Пощенски сървър с iRedMail и PHPMyAdmin До тук имаме: ● инсталиран сървър за електронна поща ● инсталиран и настроен PHPMyAdmin Задачата е: ● да включим удостоверяване за защита на сървъра ● да се защитим от подправяне на сървъра Да поясним какво значат понятията от заглавието. DKIM - служи за потвърждение на това, че изпращача е реален. За повече инфо ТУК SPF - служи за защита от подправяне на домейна. За повече инфо ТУК DMARK - служи за създаване на правила за обработка на получените писмата, не преминали удостоверяването. За повече инфо ТУК За тези които владеят руски: ТУК

    DKIM

    Подправянето на изпращача на имейл е действието на преструване, че контролирате имейл адреса на някой друг. Това е често срещан проблем при фишинга . Често измамниците изпращат имейли с адрес на изпращача something@paypal.com и се надяват, че получателят ще им се довери. Всъщност SMTP не се интересува кой адрес на подател изпращате. Много доставчици на пощенски услуги налагат да изпращате имейли само с вашия собствен имейл адрес. Но някои не го правят. А на спамерите и измамниците очевидно не им пука. Спуфинг случай без DKIM: И така, преди приблизително десет години беше замислен нов метод, който добавяше криптографски подпис към заглавката на имейл, който получателят можеше да провери, за да провери автентичността на подателя и целостта на имейла. Подписът се създава с помощта на частен ключ, който има само изпращащият имейл сървър. След това може да бъде проверен от получателя чрез изтегляне на съответния публичен ключ от DNS зоната на изпращащия домейн и извършване на проверка на подписа. Това работи много подобно на PGP или S/MIME подписване – само на ниво домейн. Вашият пощенски сървър може автоматично да подписва всички изходящи имейли. Методът, който се използва днес, се нарича Domain Keys Identified Mail – или накратко: DKIM . Да вземем пример. Току-що изпратих имейл от GMail до личния си имейл акаунт на собствения си имейл сървър. Google използва DKIM подписване, така че имейлът получи тази допълнителна заглавка от пощенските сървъри на Google: След инсталирането на iRedMail, по подразбиране получавате готов DKIM ключ. Можете да го намерите във файла /root/iRedMail-1.7.2//iRedMail.tips или като изпълните командата в конзолата.

    amavisd showkeys head: cannot open '/etc/mailname' for reading: No such file or directory head: cannot open '/etc/mailname' for reading: No such file or directory ; key#1 2048 bits, s=dkim, d=tachko.com, /var/lib/dkim/tachko.com.pem dkim._domainkey.tachko.com. 3600 TXT ( "v=DKIM1; p=" "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzM5b8RQwAaF348lsC5vk" "8eI07BUk4VqaTHgh3CTDhS5+p4GI4XFQiuzSO/dBbzdpfCmYQSpBPi2NqQ6i65+X" "NVbP3V1IoSzrfOzrlwOqD7KhsqGU8UZhemUeLshD8qph74N7Kjb+6dHC1iENd6W9" "XtcvsIn3NbuxyDGCaUBTZ4sj6CUmpnewiLW87vUP3RaGZlOkaDL1fCwNfpvCp+xn" "jnz6oUUv1J/BN+oy+qpNRh3ZXw3EYsnlQO59APsj/kwi71TjsfUBxHC6QwgoQHxS" "4n1WdJ+uct8uV2DiUNEse9YuJTDZgKdf1zML2zGNNz3vfc+00j7Zjz1wsTE5Zlcv" "xQIDAQAB")

    Нещата които са важни са в червено. В отделен текстов файл копираме това което е в червено.

    dkim._domainkey.tachko.com "v=DKIM1; p=" "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzM5b8RQwAaF348lsC5vk" "8eI07BUk4VqaTHgh3CTDhS5+p4GI4XFQiuzSO/dBbzdpfCmYQSpBPi2NqQ6i65+X" "NVbP3V1IoSzrfOzrlwOqD7KhsqGU8UZhemUeLshD8qph74N7Kjb+6dHC1iENd6W9" "XtcvsIn3NbuxyDGCaUBTZ4sj6CUmpnewiLW87vUP3RaGZlOkaDL1fCwNfpvCp+xn" "jnz6oUUv1J/BN+oy+qpNRh3ZXw3EYsnlQO59APsj/kwi71TjsfUBxHC6QwgoQHxS" "4n1WdJ+uct8uV2DiUNEse9YuJTDZgKdf1zML2zGNNz3vfc+00j7Zjz1wsTE5Zlcv" "xQIDAQAB")

    Имаме кавички в началото на реда и в края. Те трябва да се махнат. Също така имаме шпации в началото на реда, те също трябва да се махнат. В края на стринга имаме затваряща скоба. Тя също трябва да се махне. Трябва да се получи:

    dkim._domainkey.tachko.com v=DKIM1; p= MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzM5b8RQwAaF348lsC5vk 8eI07BUk4VqaTHgh3CTDhS5+p4GI4XFQiuzSO/dBbzdpfCmYQSpBPi2NqQ6i65+X NVbP3V1IoSzrfOzrlwOqD7KhsqGU8UZhemUeLshD8qph74N7Kjb+6dHC1iENd6W9 XtcvsIn3NbuxyDGCaUBTZ4sj6CUmpnewiLW87vUP3RaGZlOkaDL1fCwNfpvCp+xn jnz6oUUv1J/BN+oy+qpNRh3ZXw3EYsnlQO59APsj/kwi71TjsfUBxHC6QwgoQHxS 4n1WdJ+uct8uV2DiUNEse9YuJTDZgKdf1zML2zGNNz3vfc+00j7Zjz1wsTE5Zlcv xQIDAQAB

    Това не е крайния резултат. Внимателно четете надолу. Създаваме TXT запис в DNS-а. Обръщам внимание, така след p= ще се получи шпация. Това ще е грешка ако я оставите.

    Name dkim._domainkey.tachko.com Text data v=DKIM1; p= MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzM5b8RQwAaF348lsC5vk 8eI07BUk4VqaTHgh3CTDhS5+p4GI4XFQiuzSO/dBbzdpfCmYQSpBPi2NqQ6i65+X NVbP3V1IoSzrfOzrlwOqD7KhsqGU8UZhemUeLshD8qph74N7Kjb+6dHC1iENd6W9 XtcvsIn3NbuxyDGCaUBTZ4sj6CUmpnewiLW87vUP3RaGZlOkaDL1fCwNfpvCp+xn jnz6oUUv1J/BN+oy+qpNRh3ZXw3EYsnlQO59APsj/kwi71TjsfUBxHC6QwgoQHxS 4n1WdJ+uct8uV2DiUNEse9YuJTDZgKdf1zML2zGNNz3vfc+00j7Zjz1wsTE5Zlcv xQIDAQAB TTL (Time to live) 1 hour (3600)

    Внимание !!! Ако така запишете файла то след p= MIB..... ще се получи шпация. Това е грешка, тя трябва да се обере. В крайна сметка трябва да се получи следното (Това е вярното съдържание):

    Name dkim._domainkey.tachko.com Text data v=DKIM1; =DKIM1; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzM5b8RQwAaF348lsC5vk 8eI07BUk4VqaTHgh3CTDhS5+p4GI4XFQiuzSO/dBbzdpfCmYQSpBPi2NqQ6i65+X NVbP3V1IoSzrfOzrlwOqD7KhsqGU8UZhemUeLshD8qph74N7Kjb+6dHC1iENd6W9 XtcvsIn3NbuxyDGCaUBTZ4sj6CUmpnewiLW87vUP3RaGZlOkaDL1fCwNfpvCp+xn jnz6oUUv1J/BN+oy+qpNRh3ZXw3EYsnlQO59APsj/kwi71TjsfUBxHC6QwgoQHxS 4n1WdJ+uct8uV2DiUNEse9YuJTDZgKdf1zML2zGNNz3vfc+00j7Zjz1wsTE5Zlcv xQIDAQAB TTL (Time to live) 1 hour (3600)

    SPF

    Name tachko.com Text data v=spf1 ip4:185.163.245.186 mx ~all TTL (Time to live) 1 hour (3600)

    DMARC

    Name _dmarc.tachko.com Text data v=DMARC1; p=none; pct=100; rua=mailto:postmaster@tachko.com; sp=none; aspf=r TTL (Time to live) 1 hour (3600)

    Проверка на DKIM, SPF и DMARC

    Проверяваме DKIM записа.

    dig -t txt dkim._domainkey.tachko.com ; <<>> DiG 9.18.33-1~deb12u2-Debian <<>> -t txt dkim._domainkey.tachko.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59218 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 1232 ;; QUESTION SECTION: ;dkim._domainkey.tachko.com. IN TXT ;; ANSWER SECTION: dkim._domainkey.tachko.com. 3592 IN TXT "v=DKIM1; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzM5b8RQwAaF348lsC5vk 8eI07BUk4VqaTHgh3CTDhS5+p4GI4XFQiuzSO/dBbzdpfCmYQSpBPi2NqQ6i65+X NVbP3V1IoSzrfOzrlwOqD7KhsqGU8UZhemUeLshD8qph74N7Kjb+6dHC1iENd6W9 XtcvsIn3NbuxyDGCaUBTZ4sj6CUmpnewiLW87vUP3RaGZlOka" "DL1fCwNfpvCp+xn jnz6oUUv1J/BN+oy+qpNRh3ZXw3EYsnlQO59APsj/kwi71TjsfUBxHC6QwgoQHxS 4n1WdJ+uct8uV2DiUNEse9YuJTDZgKdf1zML2zGNNz3vfc+00j7Zjz1wsTE5Zlcv xQIDAQAB" ;; Query time: 52 msec ;; SERVER: 1.1.1.1#53(1.1.1.1) (UDP) ;; WHEN: Tue May 20 20:44:19 UTC 2025 ;; MSG SIZE rcvd: 478 nslookup -type=txt dkim._domainkey.tachko.com Server: 1.1.1.1 Address: 1.1.1.1#53 Non-authoritative answer: dkim._domainkey.tachko.com text = "v=DKIM1; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzM5b8RQwAaF348lsC5vk 8eI07BUk4VqaTHgh3CTDhS5+p4GI4XFQiuzSO/dBbzdpfCmYQSpBPi2NqQ6i65+X NVbP3V1IoSzrfOzrlwOqD7KhsqGU8UZhemUeLshD8qph74N7Kjb+6dHC1iENd6W9 XtcvsIn3NbuxyDGCaUBTZ4sj6CUmpnewiLW87vUP3RaGZlOka" "DL1fCwNfpvCp+xn jnz6oUUv1J/BN+oy+qpNRh3ZXw3EYsnlQO59APsj/kwi71TjsfUBxHC6QwgoQHxS 4n1WdJ+uct8uV2DiUNEse9YuJTDZgKdf1zML2zGNNz3vfc+00j7Zjz1wsTE5Zlcv xQIDAQAB" Authoritative answers can be found from:

    Да проверим и SPF записа.

    dig -t txt tachko.com ; <<>> DiG 9.18.33-1~deb12u2-Debian <<>> -t txt tachko.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63453 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 1232 ;; QUESTION SECTION: ;tachko.com. IN TXT ;; ANSWER SECTION: tachko.com. 3600 IN TXT "v=spf1 ip4:185.163.245.186 mx ~all" ;; Query time: 68 msec ;; SERVER: 1.1.1.1#53(1.1.1.1) (UDP) ;; WHEN: Tue May 20 20:48:55 UTC 2025 ;; MSG SIZE rcvd: 86 nslookup -type=txt tachko.com Server: 1.1.1.1 Address: 1.1.1.1#53 Non-authoritative answer: tachko.com text = "v=spf1 ip4:185.163.245.186 mx ~all" Authoritative answers can be found from:

    Последно да проверим DMARC записа.

    dig -t txt _dmarc.tachko.com ; <<>> DiG 9.18.33-1~deb12u2-Debian <<>> -t txt _dmarc.tachko.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6461 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 1232 ;; QUESTION SECTION: ;_dmarc.tachko.com. IN TXT ;; ANSWER SECTION: _dmarc.tachko.com. 3600 IN TXT "v=DMARC1; p=none; pct=100; rua=mailto:postmaster@tachko.com; sp=none; aspf=r" ;; Query time: 37 msec ;; SERVER: 1.1.1.1#53(1.1.1.1) (UDP) ;; WHEN: Tue May 20 20:52:30 UTC 2025 ;; MSG SIZE rcvd: 135 nslookup -type=txt _dmarc.tachko.com Server: 1.1.1.1 Address: 1.1.1.1#53 Non-authoritative answer: _dmarc.tachko.com text = "v=DMARC1; p=none; pct=100; rua=mailto:postmaster@tachko.com; sp=none; aspf=r" Authoritative answers can be found from: