Сообщение "Service Unavailable" в качестве DSN 5 довольно часто связано с расширенным уведомлением DSN. Возьмем, к примеру, следующее:
220 banner-something-something
EHLO mailer.example.com
250-banner response
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-STARTTLS
MAIL FROM: foo@example.com
250 2.1.0 Sender ok
RCPT TO: bar@example.com
250 2.1.5 Recipient ok
DATA
550-5.7.1 [10.10.10.10] Mail from this IP has been blacklisted due to user
550-5.7.1 complaints. Please visit our website to get de-listed
554 5.0.0 Service unavailable
В этот момент ответственность за то, чтобы что-то сделать с DSN, лежит на клиенте-отправителе. Все, что поддерживает расширенные DSN, создаст ответный сигнал, включающий все 550 строк. Все, что не поддерживает его (а на некоторых серверах ведется много журналов), покажет только строку 554.
Эта строка показывает генерируемый отскок (r82C8JtA005525):
Sep 2 17:38:19 mail sm-mta[5525]: r82C8CtA005523: r82C8JtA005525: DSN: Service unavailable
Одна вещь, которую я бы проверил, это посмотреть, совпадает ли HELO на sm-mta с базовым sendmail. В этом случае экземпляр sendmail решит, что имеет место почтовый цикл, и отклонит сообщение.
В противном случае проверьте отскок или сделайте захват пакетов и пропустите их через wireshark, чтобы увидеть, что именно передается туда и обратно.
openpgp.org
имеет возможностьhttps. Просто импортировал несколько ключей по их отпечаткам пальцев. Путь предсказуем, вам просто нужно заменить ${KEY_FINGERPRINT}
отпечатком ключа, который вы хотите импортировать. Который конечно уже должен быть загружен наhttps://keys.openpgp.org
:
curl --sSL https://keys.openpgp.org/vks/v1/by-fingerprint/${KEY_FINGERPRINT} | \
gpg --import
Сервер ключей Ubuntu также имеет HTTP (S )API, с помощью которого можно получать ключи в формате ASCII:
curl -sSL https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x${KEY_FINGERPRINT} | \
gpg --import
Обратите внимание на канал | gpg --import
, который используется для импорта данных ключа в связку ключей GnuPG.
Поскольку путь https://keys.openpgp.org
предсказуем и зависит только от отпечатков ключей, хранящихся на сервере, мы можем автоматизировать импорт списка ключей, идентифицированных по их отпечаткам. Ниже проверено и известно, что оно работает правильно
Чтобы адаптировать сценарий для собственного использования, просто замените мои (3 )образца отпечатков ключей на отпечатки ключей, которые вы хотите импортировать, и, конечно же, установите переменную PATHSCRIPTS
на желаемый путь:
#!/bin/bash
PATHSCRIPTS='/home/pi'
# Create text file using a Here-Doc containing Key Fingerprints of keys to import into keyring:
cat <<EOF> $PATHSCRIPTS/Key-fingerprints-list.txt
AEB042FFD73BAA7545EDA021343A2DF613C5E7F8
7AFAF20259E69236E43EEF521F45D0F6E89F27A6
704FCD2556C40AF8F2FBD8E2E5A1DE67F98FA66F
EOF
# Read the text file we created into an array
readarray arrayKeyFingerprints < $PATHSCRIPTS/Key-fingerprints-list.txt
# Loop through the array adding each key in turn by its fingerprint from keys.openpgp.org:
for i in ${arrayKeyFingerprints[@]}; do
curl https://keys.openpgp.org/vks/v1/by-fingerprint/$i | gpg --import
done
Результаты приведенного выше скрипта -, который был сохранен как test.sh
и запущен на Raspberry Pi -, показаны ниже:
pi@pi4-ap1:~ $./test.sh
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 3212 100 3212 0 0 7629 0 --:--:-- --:--:-- --:--:-- 7629
gpg: /home/pi/.gnupg/trustdb.gpg: trustdb created
gpg: key 343A2DF613C5E7F8: public key "Terrence Houlahan (I'm the former NYPD cop living in the UK. This is my only *personal* key. Trust no others.) <terrence@houlahan.co.uk>" imported
gpg: Total number processed: 1
gpg: imported: 1
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 3220 100 3220 0 0 18720 0 --:--:-- --:--:-- --:--:-- 18612
gpg: key 1F45D0F6E89F27A6: public key "Terrence Houlahan (Terrence Houlahan Linux & Network Engineer) <houlahan@F1Linux.com>" imported
gpg: Total number processed: 1
gpg: imported: 1
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 3252 100 3252 0 0 19473 0 --:--:-- --:--:-- --:--:-- 19473
gpg: key E5A1DE67F98FA66F: public key "Terrence Houlahan (Open-IPcamera Project Developer Key Terrence Houlahan) <terrence.houlahan@open-ipcamera.net>" imported
gpg: Total number processed: 1
gpg: imported: 1
Делаем список ключей и там наши (3 )импортированные ключи:
pi@pi4-ap1:~ $ gpg --list-keys
/home/pi/.gnupg/pubring.kbx
---------------------------
pub rsa4096 2011-03-13 [SC]
AEB042FFD73BAA7545EDA021343A2DF613C5E7F8
uid [ unknown] Terrence Houlahan (I'm the former NYPD cop living in the UK. This is my only *personal* key. Trust no others.) <terrence@houlahan.co.uk>
sub rsa4096 2011-03-13 [E]
pub rsa4096 2019-02-06 [SC] [expires: 2029-01-31]
7AFAF20259E69236E43EEF521F45D0F6E89F27A6
uid [ unknown] Terrence Houlahan (Terrence Houlahan Linux & Network Engineer) <houlahan@F1Linux.com>
sub rsa4096 2019-02-06 [E] [expires: 2029-01-31]
pub rsa4096 2019-02-06 [SC] [expires: ????-??-??]
704FCD2556C40AF8F2FBD8E2E5A1DE67F98FA66F
uid [ unknown] Terrence Houlahan (Open-IPcamera Project Developer Key Terrence Houlahan) <terrence.houlahan@open-ipcamera.net>
sub rsa4096 2019-02-06 [E] [expires: ????-??-??]