Articles by "eposta"

29Ekim Açık Kaynak açılış Akademik Bilişim 2012 Akademik Bilişim 2012 Uşak akgül all Alt+Ctrl+Delete altlinux Anatolya installer apache apache2 arm AtlantiS autoindex backup bağlantı ban banana bash bash script belediye betik bind9 boot bootloader bootparametre böl burg cache canlicdrom cdrom centos CHKUSER chrome clone clonezilla CloneZilla ile Remote Disk Clone işlemi cron crontab çöp dd denizaltı denizaltı kablo Desteği destek Dil Disk disk eklemek disket dizin şifreleme django djb dkim dns DNS sistemi docker Domain download drbl dvd e-posta eğitim eklenti EniXma eposta eQmail esxi ev ev almak fail2ban fake fakemail feed feedbro ffmpeg find Firefox format fortran free FreeBSD freenas ftp full backup Gazze Genel Gentoo Getgnu.org gezegen git github gitweb Gmail gnupg Gökşin Akdeniz görev Görsel gpg grub grub2 günlük Güvenlik Hacker harddisk hizmet hosting id_rsa imap index indimail indir internet ipv4 ipv6 iso israil İşletim Sistemi kablo KAMP kernel kernellogo kesin çözüm key klonlamak komut konsol koruma lampp. httpd lilo link linux liste listeci listmanager live livecd LKD loader login logo LVM mail mail hosting Mail-in-a-Box mailcow mailman mailserver mandriva-tr.org matrax Mint mirror mlmmj modül MTA multisite mustafa akgül Mustafa Akgül Özgür Yazılım Yaz Kampı. Abant İzzet Baysal Üniversitesi Müteahhit mx MySQL netinternet Netqmail network nfs nginx ngrok not.py online radyo opendkim openssl önyükleme özgür yazılım panel pano pardus parola paste patch paylaşım pdf perl pfsense pfsense full backup phpmyadmin pi plan Planet planetplanet plesk pop3 poste.io postfix postfixadmin proje proxy putty python qmail qmailtoaster randmap Ras webserver Raspberry pi Raspberry Pi raspi rawdisk recovery remote repository resim resimler robots.txt 401 rss rsync rsyncd rsyncd etiketi s/qmail Saldırı Samba screen script sendonly smtp server senronizasyon server servis shell sistem Slackarm slackware Slackware slackware-live slackware.org.tr slackware arşiv httrack truva linux hatıralar slacky.eu SMF SMF türkçe karakter problemi smtp sosyal ağ spam spf sql backup sqlite sqlite3 sqlite3 to wordpress ssh ssh_key ssh-key SSL ssl sertifika subversion sudo sunucu svn swap swapfile syslinux system system images şifreleme takasfile Tatil Tavuk Teneke Kebabı Tenekede Tavuk theme thunderbird TightVNC tmux Tokat Kebabı tokat kebabı sobası etiketi Trash Trash-cli Truva Linux truvalinux Turkcell tuxweet Türkçe türkiye ubuntu unban UNIX uzak varnish veri Virtualbox vmware Vodafone vps Vsftp vsftpd Wampp web web robot Web server web Sunucu webp webserver webserver Akıllı Tahta wget whitelist WINN Windows wordpress Wordpress wordpress multisite www xampp Xnest yansı yansılama yansılamak yapıştır yazmak Yedekleme Yemek zulüm
eposta etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

 


Postfix ile farklı iplerden eposta göndermek

Postfix 3.0 versiyonuyla gelen randmap özelliği sayesinde her table lookup sorgusundan rasgele bir dönüş gelir. Örneğin 3 adet değeriniz var diyelim ve her sorgulamada bir değer rasgele seçilir. Biz de bu yapıyı kullanarak tek bir sunucu üzerinden ama farklı ip adreslerinden eposta göndereceğiz ve bu sayede bedava eposta hizmeti sunan sistemlerin günlük eposta alma limitlerine takılmayacağız.

Ayrıca bu randmap özelliğiyle yük dengeleme de yapabilirsiniz.

randmap: Her tablo sorgusundan rasgele sonuçlar döndürür.

#Kurulum Öncesi

Gerçek sunucu ip adresi : 192.168.1.230

Sanal Ip 1 : 192.168.1.231

Sanal Ip 2 : 192.168.1.232

Sanal Ip 3 : 192.168.1.233

#Kurulum

1. master.cf dosyasına ekleyeciğimiz ip adresleri /etc/network/interface dosyasında vip olarak tanımlanır.

iface enp6s1:0 inet static

      address 192.168.1.231/24

iface enp6s1:1 inet static

      address 192.168.1.232/24

iface enp6s1:2 inet static

      address 192.168.1.233/24

Interfaceler ayağa kaldırılır.

ifup enp6s1:0;ifup enp6s1:1;ifup enp6s1:2

2. vim /etc/postfix/master.cf dosyasını açıp aşağıdaki satırları kendinize göre düzenleyin ve kaydedin.

relay1 unix - - n - - smtp

  -o smtp_bind_address=192.168.1.231

  -o smtp_helo_name=mail1.deneme.org

  -o syslog_name=relay1

relay2 unix - - n - - smtp

  -o smtp_bind_address=192.168.1.232

  -o smtp_helo_name=mail2.deneme.org

  -o syslog_name=relay2

relay0 unix - - n - - smtp

  -o smtp_bind_address=192.168.1.230

  -o smtp_helo_name=mail0.deneme.org

  -o syslog_name=relay0

relay3 unix - - n - - smtp

  -o smtp_bind_address=192.168.1.233

  -o smtp_helo_name=deneme.org

  -o syslog_name=relay3


3. vim /etc/postfix/main.cf dosyasına asağıdaki 2 satırı ekliyoruz.

sender_dependent_default_transport_maps = randmap:{relay0,relay1,relay2,relay3}

smtp_connection_cache_on_demand=no

4. Postfix servisi yeniden başlatılır.

systemctl restart postfix

Bundan sonraki kısım tamamen local ip adreslerinin dışarıya hangi ip ile natlanacağı kısımdır.

Örnek : 192.168.1.230 > 88.xx.x.55

Örnek : 192.168.1.231 > 88.xx.x.56

Örnek : 192.168.1.232 > 88.xx.x.57

Örnek : 192.168.1.233 > 88.xx.x.58

Gönderilmiş olan epostalar belirtmiş olduğumuz ip adreslerinden rasgele çıkacaktır. Loglarda relay{0,1,2,3} olarak takip edebilirsiniz.

Örnek Log:

Sep 27 16:46:28 duyuru **relay0/smtp**[15703]: E1358BC7C37: to=<deneme@deneme.org>, relay=gw.deneme.org[1.1.1.1]:25, delay=2, delays=0.01/0/1.6/0.44, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as A5BE7C12C89

Sevgiler.


 

Kaynak: https://www.murat.ws/postfix-ile-farkli-iplerden-eposta-gondermek/

 

Postfix's virtual alias maps

Postfix allows you to store virtual alias maps in a text file, which tells postfix how to route virtual email addresses to real users on the system. This setting and the file location is determined in the postfix configuration file /etc/postfix/main.cf like so:

virtual_alias_maps = hash:/etc/postfix/virtual

The format of the file is with the alias on one side, and the destination on the other, for example like so:

john_smith@example.com john
john-smith@example.com john
fred@example.com john

This routes all email addressed to john_smith@example.com, john-smith@example.com and fred@example.com to the real user (or system alias) john. It's possible to have a catch-all alias :x which will route anything addressed to @example.com to a particular user like so:

@example.com john

If you wanted everything to go to "john" except for mail to fred@ then you can do it like this:

@example.com john
fred@example.com fred

Just editing the /etc/postfix/virtual file is not enough to make the changes take affect. You must run the postmap command to make postfix read the file, like so:

/usr/sbin/postmap /etc/postfix/virtual

This creates a new file called /etc/postfix/virtual.db and the aliases are now loaded into postfix.

 

Postfix sender based routing.

November 20, 2022 - 18:28:03 — CaylakPenguen

If you want to use a more fine-grained model you can choose to relay the outbound traffic for domains over separate users. This allows you to apply different settings per domain, but also provides the enduser access to their own logfiles.

Create sasl_passwd file for the individual outgoing user(s):

/etc/postfix/sasl_passwd
@example.com outgoing@example.com:THEPASSWORD

Create the sender_relay file

@example.com [SMARTHOST1]:587
@example.net [SMARTHOST2]:587

Postmap both files:

postmap /etc/postfix/sasl_passwd
postmap /etc/postfix/sender_relay

Add the following part has to be added to your main.cf:

relayhost = [SMARTHOST]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options =
smtp_sender_dependent_authentication = yes
sender_dependent_relayhost_maps = hash:/etc/postfix/sender_relay

Please note the above extract also configures serverwide, to also filter those that are not added on the sender_relay file.

If you do not want this and only want to filter specific domains remove the relayhost line from above

Restart postfix.

 

Mailcow - Mail Server Kurulumu

Bu inek pek marifetliymiş 👌 

Docker ile pratik bir şekilde kurulum yapılabilen Mailcow pek marifetli bir o kadar da kolayca ve zahmetsizce kuruluyor.

Tek yapmanız gereken sitede belirtilen kurulum prosedürüne uymak.

https://mailcow.github.io/mailcow-dockerized-docs/i_u_m/i_u_m_install/

Mailcow aşağıda belirtilen hizmetleri otomatik kurup konfigure ediyor.

Virüs taraması – ClamAV
Metin arama (full text search) – Solr
Spam filtresi – Rspamd
Sistem güvenliği sağlayıcısı – Netfilter
Otomatik SSL sertifikası üretimi – LetsEncrypt – ACME-Client
Epostaların şifrelenerek saklanması – Mail Crypt
Webmail, takvim ve kişi listesi – SoGo
2 adımlı doğrulama (TFA – Two Factor Authentication)
IMAP, POP3 ve SMTP desteği


Kontrol Paneli


SoGo webmail


[alert title=UYARI" icon="info-circle"] E-posta gönderebilmeniz için 25 portunuzun açık ve erişilebilir olması gerekili. [/alert]


 


"Mail in a Box"'u kurup denemeye karar verdim.

https://mailinabox.email/guide.html

Öncelikle ihtiyacımız olan Ubuntu 18.04, bulabilirsiniz. Bundan sonra domain registrar üzerinde bazı DNS değişiklikleri yapmamız gerekiyor. 

Ben mail server adını  box.caylak.tk 'a kurdum burada ip adresinizi servera yönlendirme yapmamız gerekiyor. 

Sonrasında kullanmak istediğimiz domaine de MX record eklememiz gerekli. 

Bunları tamamladıktan sonra VPS'e bağlanalım. 

İlk başta VPS'e parola ile bağlantıyı devre dışı bırakalım. Bunun için:

nano /etc/ssh/sshd_config

Buraya

PasswordAuthentication no

olarak ekleyelim. Aynı zamanda kendi public ssh keyimizi servera göndermemiz gerekiyor.

ssh-copy-id -i ~/.ssh/id_rsa.pub root@server.com

Bunun sonrasında da artık Mail in a Box kurulumuna geçebiliriz. Çok basit bir kurulum süreci var.

curl -s https://mailinabox.email/setup.sh | sudo -E bash

kodu çalıştırdıktan karşımıza yükleme ekranı çıkıyor. burada size bir kullanıcı oluşturmanızı isteyecek. devam ettikten sonra sistemi kurduğuna dair bir geri dönüş veriyor.

Bundan sonra oluşturduğumuz kullanıcı ile sisteme giriş yapıyoruz. Ayarlarımızı yaptıktan sonra artık bir mail serverımız oldu :D

[alert title=UYARI" icon="info-circle"] E-posta gönderebilmeniz için 25 portunuzun açık ve erişilebilir olması gerekili. [/alert]

 

 


 

https://mailinabox.email/

https://discourse.mailinabox.email/

 

[full-post]

 



How to Install a Mail Server with PostfixAdmin on Ubuntu 20.04

 

In this tutorial, we’ll be covering the process of setting up a mail server with Postfix, Dovecot, Postfixadmin and MariaDB on an Ubuntu 20.04 VPS. But first, what is PostfixAdmin?

PostfixAdmin is an open-source web-based application written in PHP that’s used to create virtual domains and email accounts for a Postfix mail server. Using PostfixAdmin, we can manage mailboxes & aliases, set quotas, configure vacation/out-of-the-office messages, and more. Plus, the web-based interface gives you the user-friendliness of a browser window with a UI.

PostfixAdmin allows us to use virtual email addresses and virtual mailboxes, so we do not need to create a new system user account for each email address. Considering all of these details, PostfixAdmin is a versatile tool and can be used for almost all of your mailing needs. This tutorial goes quite in-depth and may take some time to configure everything properly. Let’s get started with the installation steps.


Hardware/Software Requirements

  • An Ubuntu 20.04 server or VPS with root access enabled, or a user with sudo privileges. We provide all of our users will full root access on their VPSes.
  • Postfix mail transfer agent (MTA) and Dovecot IMAP/POP3 Mail Delivery Agent need to be installed.
  • A database server (MySQL/MariaDB, PostgreSQL or SQLite) needs to be installed.
  • Apache web server needs to be installed with the mod_rewrite module enabled.
  • PHP 7.1 or greater must be installed with the imap, mbstring and mysql extensions all enabled.

Step 1. Getting Started

To begin, we’re going to need to log into our server using SSH. You can do that by entering this command:

ssh root@IP_Address -p Port_Number

Remember to replace “root” with your username if you are not using the root user. Change the values in red according to your server’s IP address and SSH port number (the default number is 22, so try that first unless your server uses a custom port number).

Once you are logged in, you should update all of your packages to their latest available versions.

apt-get update -y
apt-get upgrade -y

Once all the packages are up-to-date, restart your server to apply the configuration changes and ensure that all software is running on their latest versions.

Step 2. Create a System User Account

PostfixAdmin has the ability to create multiple virtual domains, users and aliases. This saves us the hassle of having to create new system users whenever we need a new email account added. For security reasons, we will create a new user named ‘vmail’ with permissions to store the emails in the /var/vmail directory:

useradd -r -u 150 -g mail -d /var/vmail -s /sbin/nologin -c "Virtual Mail User" vmail
mkdir -p /var/vmail
chmod -R 770 /var/vmail
chown -R vmail:mail /var/vmail

Step 3. Install PHP, Apache and Required Extensions

PHP 7.4 and Apache2 are included in the default Ubuntu repository for 20.04. We can install Apache 2, PHP 7.4 and the required PHP extensions using the following command. We also included the required PHP and Apache modules in the command:

apt-get install apache libapache2-mod-php php php-common php-mbstring php-imap php-mysql

Step 4. Install MariaDB Server

PostfixAdmin requires a database in order to be able to store the email account and domain information. For the purpose of this tutorial, we will use a MariaDB database system, an open-source version of MySQL that maintains feature parity. We can install the MariaDB server using the following command:

apt-get install mariadb-server mariadb-client mariadb-common

Start the MariaDB service and enable it to start on server boot using the following commands:

systemctl start mariadb 
systemctl enable mariadb

In order to improve the security of your MariaDB installation, run the mysql_secure_installation script:

mysql_secure_installation

When prompted, you can set the MariaDB root password and safely answer ‘Y’ to all questions.

Enter current password for root (enter for none): Just press the [Enter] key since there is no default password
Set root password? [Y/n]: Y
New password: Enter a strong password
Re-enter new password: Repeat the same password from before
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

If you followed the above steps, then you will have a password set for the MariaDB root user.

Run this command to access the MySQL console:

mysql -u root -p

And enter the root password you set previously using the mysql_secure_installation script. If you chose not to run that script, there is no password set, so you just need to press the [Enter] key once.

Next, create a MariaDB user and database for PostfixAdmin:

MariaDB [(none)]> CREATE USER 'postfixadmin'@'localhost' IDENTIFIED BY 'Strong_Password';
MariaDB [(none)]> CREATE DATABASE postfixadmin;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON postfixadmin.* TO 'postfixadmin'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> \q

Do not forget to replace ‘Strong_Password‘ with a good and unique password.

Step 5. Install Postfix

Install Postfix and postfix-mysql packages by running the command below:

apt-get install postfix postfix-mysql

During the Postfix installation, you will be asked for the type of mail configuration. Select ‘Internet Site’ and click on OK to continue. Then, enter the server’s hostname in the ‘system mail name’ field.

Once the Postfix installation is complete, we have to create several Postfix configuration files. This will take a while as there are quite a few files that have to be made and configured.

mkdir -p /etc/postfix/sql/

Define the database connection settings for querying the virtual alias domain catchall maps by creating this file. We’re using vi, but you can use any text editor that you prefer:

vi /etc/postfix/sql/mysql_virtual_alias_domain_catchall_maps.cf

Once the file is created, insert these contents:

user = postfixadmin
password = Strong_Password
hosts = localhost
dbname = postfixadmin
query = SELECT goto FROM alias,alias_domain WHERE alias_domain.alias_domain = '%d' and alias.address = CONCAT('@', alias_domain.target_domain) AND alias.active = 1 AND alias_domain.active='1'

Create this file so we can set the database connection settings for querying the virtual alias domain mailbox maps:

vi /etc/postfix/sql/mysql_virtual_alias_domain_mailbox_maps.cf

Then insert these contents:

user = postfixadmin
password = Strong_Password
hosts = localhost
dbname = postfixadmin
query = SELECT maildir FROM mailbox,alias_domain WHERE alias_domain.alias_domain = '%d' and mailbox.username = CONCAT('%u', '@', alias_domain.target_domain) AND mailbox.active = 1 AND alias_domain.active='1'

After that, define the database connection settings for querying the virtual alias domain maps by creating this file:

vi /etc/postfix/sql/mysql_virtual_alias_domain_maps.cf

Add the following:

user = postfixadmin
password = Strong_Password
hosts = localhost
dbname = postfixadmin
query = SELECT goto FROM alias,alias_domain WHERE alias_domain.alias_domain = '%d' and alias.address = CONCAT('%u', '@', alias_domain.target_domain) AND alias.active = 1 AND alias_domain.active='1'

The next settings are for the database connection settings for querying the virtual alias maps. Create this file:

vi /etc/postfix/sql/mysql_virtual_alias_maps.cf

Add this text:

user = postfixadmin
password = Strong_Password
hosts = localhost
dbname = postfixadmin
query = SELECT goto FROM alias WHERE address='%s' AND active = '1'

There are a few more to go. Now, create a file for the database connection settings for querying the virtual domain maps:

vi /etc/postfix/sql/mysql_virtual_domains_maps.cf

Make sure you set the passwords on all of these files that you have been adding. Add the contents:

user = postfixadmin
password = Strong_Password
hosts = localhost
dbname = postfixadmin
query = SELECT domain FROM domain WHERE domain='%s' AND active = '1'

Onto the next file. Create it and add the database connection settings for querying the virtual mailbox limit maps:

vi /etc/postfix/sql/mysql_virtual_mailbox_limit_maps.cf

Insert this and change the password:

user = postfixadmin
password = Strong_Password
hosts = localhost
dbname = postfixadmin
query = SELECT quota FROM mailbox WHERE username='%s' AND active = '1'

Finally, create this file and add the database connection settings for querying the virtual mailbox maps:

vi /etc/postfix/sql/mysql_virtual_mailbox_maps.cf
user = postfixadmin
password = Strong_Password
hosts = localhost
dbname = postfixadmin
query = SELECT maildir FROM mailbox WHERE username='%s' AND active = '1'

NOTE: Do not forget to replace ‘Strong_Password‘ with your own password in all of the configuration files above.

Modify the main.cf Postfix configuration file, which is the core of the Postfix configuration. Run these commands to edit each setting:

postconf -e "myhostname = $(hostname -f)"
postconf -e "virtual_mailbox_domains = proxy:mysql:/etc/postfix/sql/mysql_virtual_domains_maps.cf"
postconf -e "virtual_alias_maps = proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_catchall_maps.cf"
postconf -e "virtual_mailbox_maps = proxy:mysql:/etc/postfix/sql/mysql_virtual_mailbox_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_mailbox_maps.cf"
postconf -e "smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem"
postconf -e "smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key"
postconf -e "smtpd_use_tls = yes"
postconf -e "smtpd_tls_auth_only = yes"
postconf -e "smtpd_sasl_type = dovecot"
postconf -e "smtpd_sasl_path = private/auth"
postconf -e "smtpd_sasl_auth_enable = yes"
postconf -e "smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination"
postconf -e "mydestination = localhost"
postconf -e "mynetworks = 127.0.0.0/8"
postconf -e "inet_protocols = ipv4"
postconf -e "inet_interfaces = all"
postconf -e "virtual_transport = lmtp:unix:private/dovecot-lmtp"

We can also install Certbot, then install a new Let’s encrypt SSL certificate for the server hostname and replace /etc/ssl/certs/ssl-cert-snakeoil.pem and /etc/ssl/private/ssl-cert-snakeoil.key with the newly created SSL certificate and public key files.

Then, edit the the master.cf Postfix configuration file, and modify it as follows:

vi /etc/postfix/master.cf

Add or change the contents so that the file looks like this:

smtp inet n - y - - smtpd
#smtp inet n - y - 1 postscreen
#smtpd pass - - y - - smtpd
#dnsblog unix - - y - 0 dnsblog
#tlsproxy unix - - y - 0 tlsproxy
submission inet n - y - - smtpd
-o syslog_name=postfix/submission
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
# -o smtpd_reject_unlisted_recipient=no
# -o smtpd_client_restrictions=$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=
# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o milter_macro_daemon_name=ORIGINATING
smtps inet n - y - - smtpd
-o syslog_name=postfix/smtps
# -o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
# -o smtpd_reject_unlisted_recipient=no
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o smtpd_client_restrictions=$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=
# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
-o milter_macro_daemon_name=ORIGINATING

Enable the Postfix service to start on server boot and restart the Postfix service:

systemctl enable postfix
systemctl restart postfix

Postfix is finally installed and configured.

Step 6. Install Dovecot

Dovecot is a Mail Delivery Agent which allows a user to receive emails in complete security through IMAP and/or POP3 protocols. We can install Dovecot and the dovecot-mysql package using the command below:

apt-get install dovecot-core dovecot-lmtpd dovecot-imapd dovecot-pop3d dovecot-mysql

Edit the /etc/dovecot/conf.d/10-mail.conf file:

vi /etc/dovecot/conf.d/10-mail.conf

Insert this as the content:

mail_location = maildir:/var/vmail/%d/%n
mail_privileged_group = mail
mail_uid = vmail
mail_gid = mail
first_valid_uid = 150
last_valid_uid = 150

Open the /etc/dovecot/conf.d/10-auth.conf file:

vi /etc/dovecot/conf.d/10-auth.conf

Edit it so that the file looks like this:

auth_mechanisms = plain login
#!include auth-system.conf.ext
!include auth-sql.conf.ext

Then edit the dovecot-sql.conf.ext file, and add these lines:

vi /etc/dovecot/dovecot-sql.conf.ext
driver = mysql
connect = host=localhost dbname=postfixadmin user=postfixadmin password=Strong_Password
default_pass_scheme = MD5-CRYPT
password_query = SELECT username as user, password, '/var/vmail/%d/%n' as userdb_home, 'maildir:/var/vmail/%d/%n' as userdb_mail, 150 as userdb_uid, 8 as userdb_gid FROM mailbox WHERE username = '%u' AND active = '1'
user_query = SELECT '/var/vmail/%d/%u' as home, 'maildir:/var/vmail/%d/%u' as mail, 150 AS uid, 8 AS gid, concat('dirsize:storage=', quota) AS quota FROM mailbox WHERE username = '%u' AND active = '1'

Do not forget to replace Strong_Password with the actual password that you set previously in Step 4 when creating the MariaDB user.

Edit the /etc/dovecot/conf.d/10-ssl.conf file, and enable SSL support:

vi /etc/dovecot/conf.d/10-ssl.conf
ssl = yes

Save and close that file, then edit the /etc/dovecot/conf.d/15-lda.conf file and set the postmaster_address email address.

vi /etc/dovecot/conf.d/15-lda.conf
postmaster_address = postmaster@yourdomain.com

Make sure that you change yourdomain.com to the actual domain name that points to your server.

Edit the /etc/dovecot/conf.d/10-master.conf file, find the service lmtp section and replace it with the following lines:

vi /etc/dovecot/conf.d/10-master.conf
service lmtp {
     unix_listener /var/spool/postfix/private/dovecot-lmtp {
     mode = 0600
     user = postfix
     group = postfix
     }
}

Once that part is edited, find the service auth section and replace it with the following snippet:

service auth {
     unix_listener /var/spool/postfix/private/auth {
     mode = 0666
     user = postfix
     group = postfix
}

unix_listener auth-userdb {
     mode = 0600
     user = vmail

}
user = dovecot
}

Then change the service auth-worker section to the following:

service auth-worker {
user = vmail
}

Save and close the file.

Set the correct permissions of the Dovecot configuration files:

chown -R vmail:dovecot /etc/dovecot 
chmod -R o-rwx /etc/dovecot

Enable the Dovecot service to start on server boot, and restart Dovecot so that all of these new configuration files are in effect:

systemctl enable dovecot
systemctl restart dovecot

Step 7. Install PostfixAdmin

Now that all of our required software is installed and configured, let’s install and configure PostfixAdmin and finish this tutorial.

Download the latest available version of PostfixAdmin from Github and extract it in the /var/www/html/postfixadmin directory.

apt-get install git
cd  /var/www/html/
git clone https://github.com/postfixadmin/postfixadmin.git

Edit the /var/www/html/postfixadmin/config.local.php file and add these lines:

vi /var/www/html/postfixadmin/config.local.php
<?php
$CONF['database_type'] = 'mysqli';
$CONF['database_host'] = 'localhost';
$CONF['database_user'] = 'postfixadmin';
$CONF['database_password'] = 'Strong_Password';
$CONF['database_name'] = 'postfixadmin';
$CONF['configured'] = true;
$CONF['encrypt'] = 'md5crypt';
?>

Replace Strong_Password with the MariaDB user password.

mkdir /var/www/html/postfixadmin/templates_c

chown -R www-data: /var/www/html/postfixadmin

Open http://your_server_IP/postfixadmin/public/setup.php . Check if everything is okay and make sure that there are no errors:

Scroll down and enter your new setup password twice. Make sure to choose a strong one:

Then click on the ‘Generate password hash’ button.

Edit the config.local.php file and add the generated hash to it:

$CONF['setup_password'] = '0584cbe2b03cad2e29c8be0127361e37:d41ceb2689b747cf143d1809aec7b8e6bdde983e';

Replace the hash shown in the example with the one generated for your instance.

Save the config.local.php file, open the setup page once again and create a PostfixAdmin admin user account. The setup password in that page is the same password you used in the previous step, so fill the other required fields such as the admin email address and password, then click on the ‘Add admin’ button.

That’s it! The PostfixAdmin installation is complete.

Open http://your_server_IP/postfixadmin/login.php in your preferred web browser. You’ll see the login page:

Log in as the admin user and add the domains hosted on the server:

Once you do that, then you can create email addresses, set a mail quota, and so on:

That is everything you’ll need to install, configure, and start using your PostfixAdmin install on your Ubuntu 20.04 VPS.


This install process is very involved and is quite easy to mess up and end up with a botched install of Postfix, Dovecot, or both. However, if you have a Managed Ubuntu VPS hosting with us, you won’t need to do anything more than ask us to install it for you, Our team of support experts will completely install and configure all aspects of your server so that Postfix, Dovecot, and PostfixAdmin all work flawlessly. They can also help set up routine maintenance and optimize your server to maximize its speed.

We would appreciate you sharing this on social media if you found this tutorial useful. Or, you can write a comment letting us know how the install went, and if PostfixAdmin helped you manage your mail server more easily. Thanks!



 Kaynak: https://www.rosehosting.com/blog/how-to-install-a-mail-server-with-postfixadmin-on-ubuntu-20-04

Postfix as backup MX host


The backup MX host must accept and queue mails, if the primary mailhost is down for a certain domain. To have a high degree of availability the backup MX host must be located outside the backed up domain. You can setup the backup MX host as a primary or secondary mx for a remote site.


The primary mailhost is down ...



Email is delivered to the backup MX host and queued there ....




After the primary mailhost is up and running again, email is delivered from the backup MX host to the primary mailhost and stored in the local mailboxes.


Setup of a primary mx host for a remote site


IN MX 10 mail1.backup1.com.
IN MX 20 mail2.backup2.com.


All email for the remote site is delivered to the primary mx host: mail1.backup1.com.


Postfix Configuration on backup1.com:


/etc/postfix/main.cf:


relay_domains = $mydestination the.backed-up.domain.name
smtpd_recipient_restrictions = permit_mynetworks
check_relay_domains


/etc/postfix/main.cf:


transport_maps = hash:/etc/postfix/transport


/etc/postfix/transport:


the.backed-up.domain.name smtp:[their.mail.host.name]


Setup of a secondary mx host for a remote site


DNS entry on the remote site:

IN MX 10 mail1.backup1.com.
IN MX 20 mail2.backup2.com.


All email for the remote site is delivered to the secondary mx host: mail2.backup.com.

Postfix Configuration on backup2.com:

/etc/postfix/main.cf:


relay_domains = $mydestination the.backed-up.domain.name
smtpd_recipient_restrictions = permit_mynetworks
check_relay_domains


Kaynak: https://www.akadia.com/services/postfix_mx_backup.html

WordPress sistemi üzerinde gönderilen mailler “WordPress” adına ve “wordpress@siteadi.com” gibi bir adresten gönderilir.

Şimdi bunu kendi sitemiz olarak ve istediğimiz mail adresinden göndermeyi nasıl sağlayabiliriz ona bakalım.

Kullandığınız tema’nın fonksiyon dosyasına (function.php) mail gönderim fonksiyonu eklemek


function gonderen_mail($from_email){ return "istedigimadres@siteadi.com"; } add_filter('wp_mail_from', 'gonderen_mail');
function gonderen_isim($from_name){ return "Benim Sitem"; } add_filter('wp_mail_from_name', 'gonderen_isim');
Kaynak : https://wpnotlari.com/wordpress-giden-mail-ayarini-degistirmek/



İnfografiğimizi görüntüleyin ve paylaşın → Kitlesel gözetim, temel haklarımızı ihlal eder ve ifade özgürlüğümüzü tehdit eder. Bu rehber size gözetime karşı basit bir öz savunma tekniği olan e-posta şifrelemeyi öğretecek. Bu rehberi tamamladığınızda, gözetleyen bir görevlinin veya hırsızın okuyamayacağına emin olabileceğiniz şekilde karıştırılmış e-postalar gönderip alabileceksiniz. Bütün ihtiyacınız olan İnternet bağlantısı olan bir bilgisayar, bir e-posta hesabı ve yaklaşık kırk dakika.

Gizleyecek hiç bir şeyiniz olmasa bile, şifrelemeyi kullanmak, iletişim kurduğunuz insanların mahremiyetini korumanıza yardımcı olur ve kitlesel gözetim sistemlerinin işini zorlaştırır. Eğer gizleyecek önemli bir şeyiniz varsa, endişelenmeyin, aradığınızı burada bulacaksınız. Burada kullanmayı öğreneceğiniz araçlar, ifşacıların insan hakları ihlalleri, yolsuzluk ve diğer suçları aydınlatırken kimliklerini korumak için kullandığı araçların aynısıdır.

Hakkımızda toplanan veri miktarının azaltılması için şifreleme kullanmanın yanında, gözetlemeye karşı politik bir mücadeleye de girmek gerekir. Ancak ilk aşamada kendinizi korumak ve iletişiminiz üzerindeki gözetimi zorlaştırmak önemlidir. Bu rehber size bu konuda yardımcı olacak. Bu rehber, yeni başlayanlar için tasarlanmış durumda, ancak GnuPG hakkında temel bilgiye sahip olsanız da veya deneyimli bir özgür yazılım kullanıcısı olsanız bile, gelişmiş ipuçları ve arkadaşlarınıza nasıl öğretebileceğinize ilişkin rehber hoşunuza gidecektir.

Yazının devamı:  https://emailselfdefense.fsf.org/tr/index.html



qmail kullanıyorum.

Giden mail ler için Dkim imzası gerekli oldu.

Uygulanması gereken adımlar ve gerekli dosyalar bu adrestedir.

https://github.com/qmtoaster/dkim

ubuntu üzerinde kurulması gereken paketler.
apt install -y libdkim-dev
apt install -y libdkim1d
apt install -y libmail-dkim-perl
apt install -y libopendkim10
apt install -y libopendkim9
apt install -y opendkim
apt install -y opendkim-tools

faydalı olması dileğiyle.

Author Name

İletişim Formu

Ad

E-posta *

Mesaj *

Blogger tarafından desteklenmektedir.