Добавляем сертификат LetsEncrypt в SAMBA

Для использования безопасных соединений с Samba, необходимо настроить протокол SSL/TLS и использовать соответствующий SSL-сертификат, который обеспечивает шифрование данных и подтверждает подлинность сервера. SSL-сертификат удостоверяет личность сервера и позволяет клиентам устанавливать защищенное соединение с Samba, что предотвращает перехват данных при передаче по сети. 

Устанавливаем certbot

sudo apt install -y certbot python3-certbot-dns-rfc2136

Запрашиваем ключ для добавления записи в ДНС зону

sudo certbot -d vmdc01.ladm.lazyadmin.ru --manual --preferred-challenges dns certonly

Вводим email на который будут приходить напоминания и два раза соглашаемся

Enter email address (used for urgent renewal and security notices)
 (Enter 'c' to cancel): lazyadmin@lazyadmin.ru
 Y
 Y

Дальше нам выдадут ключ, который нужно добавить в DNS записях основного домена, как правило у провайдера или хостинг провайдера. Не нажимайте Enter до того момента как запись не появится и не обновится. У всех это по разному от нескольких минут до нескольких часов.

Please deploy a DNS TXT record under the name:

_acme-challenge.vmdc01.ladm.lazyadmin.ru.

with the following value:

[hash key value generated by certbot]

Before continuing, verify the TXT record has been deployed. Depending on the DNS
provider, this may take some time, from a few seconds to multiple minutes. You can
check if it has finished deploying with aid of online tools, such as the Google
Admin Toolbox: https://toolbox.googleapps.com/apps/dig/#TXT/_acme-challenge.vmdc01.ladm.lazyadmin.ru.
Look for one or more bolded line(s) below the line ';ANSWER'. It should show the
value(s) you've just added.

проверять можно на разных сервисах:

Когда в выдаче команды DIG появится запись, можно будет продолжить и нажать Enter

;; ANSWER SECTION:
_acme-challenge.vmdc01.ladm.lazyadmin.ru.	10800 IN TXT "[hash key value generated by certbot]"
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Press Enter to Continue
Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/vmdc01.ladm.lazyadmin.ru/fullchain.pem
Key is saved at:         /etc/letsencrypt/live/vmdc01.ladm.lazyadmin.ru/privkey.pem
This certificate expires on YYYY-MM-DD.
These files will be updated when the certificate renews.

Такой сертификат не обновляется автоматически, поэтому его нужно будет обновить до указанной даты

NEXT STEPS:
- This certificate will not be renewed automatically. Autorenewal of --manual certificates requires the use of an authentication hook script (--manual-auth-hook) but one was not provided. To renew this certificate, repeat this same certbot command before the certificate's expiry date.

Создаем ссылки

sudo cp /etc/letsencrypt/live/vmdc01.ladm.lazyadmin.ru/fullchain.pem /var/lib/samba/private/tls/vmdc01-cert.pem
sudo cp /etc/letsencrypt/live/vmdc01.ladm.lazyadmin.ru/privkey.pem /var/lib/samba/private/tls/vmdc01-key.pem

Добавляем в Samba, в секцию [Global]

sudo nano /etc/samba/smb.conf
        tls enabled  = yes
        tls keyfile  = tls/vmdc01-key.pem
        tls certfile = tls/vmdc01-cert.pem
        tls cafile   =
sudo systemctl restart samba-ad-dc.service

проверка через TCP

sudo openssl s_client -showcerts -connect vmdc01.ladm.lazyadmin.ru:636
---
Server certificate
subject=CN = vmdc01.ladm.lazyadmin.ru
issuer=C = US, O = Let's Encrypt, CN = E7
---
No client certificate CA names sent
Requested Signature Algorithms: RSA+SHA256:RSA-PSS+SHA256:RSA-PSS+SHA256:ECDSA+SHA256:Ed25519:RSA+SHA384:RSA-PSS+SHA384:RSA-PSS+SHA384:ECDSA+SHA384:Ed448:RSA+SHA512:RSA-PSS+SHA512:RSA-PSS+SHA512:ECDSA+SHA512:RSA+SHA1:ECDSA+SHA1
Shared Requested Signature Algorithms: RSA+SHA256:RSA-PSS+SHA256:RSA-PSS+SHA256:ECDSA+SHA256:Ed25519:RSA+SHA384:RSA-PSS+SHA384:RSA-PSS+SHA384:ECDSA+SHA384:Ed448:RSA+SHA512:RSA-PSS+SHA512:RSA-PSS+SHA512:ECDSA+SHA512
Peer signing digest: SHA256
Peer signature type: ECDSA
Server Temp Key: X25519, 253 bits
---
SSL handshake has read 2502 bytes and written 441 bytes
Verification: OK
---
New, TLSv1.3, Cipher is TLS_AES_256_GCM_SHA384
Server public key is 256 bit
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
Early data was not sent
Verify return code: 0 (ok)
---