One-way synchronization with doveadm/TCP

2024-07-04 Thread Дилян Палаузов via dovecot
Hello,

the replication procedure described at 
https://doc.dovecot.org/configuration_manual/replication/ suggests to open a 
server port 12345 on two systems, and then point each system to the other one.  
This creates bi-directional synchronization.

I want to synchronize only from server A to server B, but not in the opposite 
direction.  Is it sufficient on server A to set

  service doveadm {
inet_listener {
  port = 12345
}
  }
  doveadm_password = secret

and server B to set

  doveadm_port = 12345
  doveadm_password = secret

?  In other words, when a doveadm client (system B) connects to a server 
(system A) for replication purposes, does it only read data? Or does it 
instruct the server also to delete data?

To start the replication I had to executed «doveadm replicator replicate '*'».  
Is in necessary to run this periodically?

Thanks for your answer,
  Дилян
___
dovecot mailing list -- dovecot@dovecot.org
To unsubscribe send an email to dovecot-le...@dovecot.org


Re: Change the default base_dir to /run from ${prefix}/var/run

2024-05-20 Thread Дилян Палаузов via dovecot
Hello,

similarly the default state_dir = /usr/local/var/lib/dovecot is not compatible 
with the default ProtectSystem=full (⇔read-only /usr):

May 20 10:04:44 d dovecot[319843]: master: Dovecot v0.0.0-33124+6b1bcf1bad 
(6b1bcf1bad) starting up for imap, lmtp
May 20 10:04:44 d dovecot[319843]: master: Error: 
open(/usr/local/var/lib/dovecot/.temp.d.319843.4804e3352f1b5fd3) failed: 
Read-only file system
May 20 10:04:44 d systemd[1]: Started dovecot.service - Dovecot IMAP/POP3 email 
server.
May 20 10:04:44 d dovecot[319843]: master: Error: 
file_dotlock_open(/usr/local/var/lib/dovecot/instances) failed: Read-only file 
system

Greetings
  Дилян

-Original Message-
From: Дилян Палаузов 
To: dovecot 
Subject: Change the default base_dir to /run from ${prefix}/var/run
Date: 05/20/2024 08:26:30 AM

Hello,

at 6b1bcf1bad1d7, calling

./configure && make install

sets prefix=/usr/local, and thus the default base_dir = 
/usr/local/var/run/dovecot.  Moreover it installs 
/usr/lib/systemd/system/dovecot.service with [Service] ProtectSystem=full.

ProtectSystem=full mounts /usr as read-only, so no files can be written under 
the default base_dir.

The Linux Hierachy Standard says for /usr/local - 
https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch04s09.html - directories 
bin, etc, games, include, lib, man, sbin, share, and src must be in /usr/local. 
No other directories, except those listed below, may be in /usr/local after 
first installing a FHS-compliant system.

var is not listed below. (“below” means the citation above, not the next 
paragraph)

For /var/run LSH contains - 
https://refspecs.linuxfoundation.org/FHS_3.0/fhs-3.0.html#varrunRuntimeVariableData
 - This directory was once intended for system information data describing the 
system since it was booted. These functions have been moved to /run; this 
directory exists to ensure compatibility with systems and software using an 
older version of this specification. In general, the requirements for /run 
shall also apply to /var/run. It is valid to implement /var/run as a symlink to 
/run.
.

For /run LHS mentions “This directory contains system information data 
describing the system since it was booted. Files under this directory must be 
cleared (removed or truncated as appropriate) at the beginning of the boot 
process.”


The defaults base_dir=/usr/local/var/run/dovecot and ProtectSystem=full present 
a non-working configuration.

• Please consider changing the default (implicit) value of base_dir to /run.

• When prefix is /usr/local, then dovecot.service should be installed in 
/usr/local/lib/systemd/system/.

Kind regards
  Дилян

___
dovecot mailing list -- dovecot@dovecot.org
To unsubscribe send an email to dovecot-le...@dovecot.org


Change the default base_dir to /run from ${prefix}/var/run

2024-05-19 Thread Дилян Палаузов via dovecot
Hello,

at 6b1bcf1bad1d7, calling

./configure && make install

sets prefix=/usr/local, and thus the default base_dir = 
/usr/local/var/run/dovecot.  Moreover it installs 
/usr/lib/systemd/system/dovecot.service with [Service] ProtectSystem=full.

ProtectSystem=full mounts /usr as read-only, so no files can be written under 
the default base_dir.

The Linux Hierachy Standard says for /usr/local - 
https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch04s09.html - directories 
bin, etc, games, include, lib, man, sbin, share, and src must be in /usr/local. 
No other directories, except those listed below, may be in /usr/local after 
first installing a FHS-compliant system.

var is not listed below. (“below” means the citation above, not the next 
paragraph)

For /var/run LSH contains - 
https://refspecs.linuxfoundation.org/FHS_3.0/fhs-3.0.html#varrunRuntimeVariableData
 - This directory was once intended for system information data describing the 
system since it was booted. These functions have been moved to /run; this 
directory exists to ensure compatibility with systems and software using an 
older version of this specification. In general, the requirements for /run 
shall also apply to /var/run. It is valid to implement /var/run as a symlink to 
/run.
.

For /run LHS mentions “This directory contains system information data 
describing the system since it was booted. Files under this directory must be 
cleared (removed or truncated as appropriate) at the beginning of the boot 
process.”


The defaults base_dir=/usr/local/var/run/dovecot and ProtectSystem=full present 
a non-working configuration.

• Please consider changing the default (implicit) value of base_dir to /run.

• When prefix is /usr/local, then dovecot.service should be installed in 
/usr/local/lib/systemd/system/.

Kind regards
  Дилян
___
dovecot mailing list -- dovecot@dovecot.org
To unsubscribe send an email to dovecot-le...@dovecot.org


example/config misses required section names for passdb{} and userdb{}

2024-05-19 Thread Дилян Палаузов via dovecot
Hello,

I installed Dovecot from git 6b1bcf1bad1d78e, copied 
/usr/local/share/doc/dovecot/example/config to /usr/local/etc/dovecot and 
called dovecot -F .  The system reported

doveconf: Fatal: Error in configuration file 
/usr/local/etc/dovecot/conf.d/auth-system.conf.ext line 11: passdb { } is 
missing section name

The problem remains, if I delete 

dovecot-dict-auth.conf.ext  dovecot-ldap.conf.ext  dovecot-oauth2.conf.ext  
dovecot-sql.conf.ext
conf.d/auth-deny.conf.ext  conf.d/auth-ldap.conf.ext
conf.d/auth-passwdfile.conf.ext  conf.d/auth-static.conf.ext
conf.d/auth-dict.conf.ext  conf.d/auth-master.conf.ext  conf.d/auth-sql.conf.ext

thus leaving passdb {} and userdb {} defined on a single place.

Indeed, auth-system.conf.ext contains the sections passdb and userdb without 
the optional name, as described at 
https://doc.dovecot.org/configuration_manual/config_file/#sections .

The problem report is that the example configuration does not contain for 
sections userdb and passdb a section name, and at the same time the as optional 
described section name is mandatory in Dovecot on these places.

Kind regards
  Dilyan

___
dovecot mailing list -- dovecot@dovecot.org
To unsubscribe send an email to dovecot-le...@dovecot.org