Thread View: pl.comp.mail.mta
3 messages
3 total messages
Started by LFC
Tue, 14 Apr 2020 16:27
Do znających sendmaila - dlaczego z opcją delay_checks tak się dzieje?
Author: LFC
Date: Tue, 14 Apr 2020 16:27
Date: Tue, 14 Apr 2020 16:27
60 lines
3849 bytes
3849 bytes
Zasięgałem tu porad w kwestii konfiguracji sendmaila. Szczególnie chciałęm osiągnąć aby "roaming users" mogli wysyłać pocztę ze swoich domowych laptopów/internetów. Stanęło na STARTTLS, porcie 587 i opcji delay_checks, a w pliku access za poradnikiem konfiguracji antyspamowej sendmaila To: domena.pl OK Connect:domena.pl OK Było RELAY, jak dałem OK. Po odpaleniu takiej konfiguracji godzina spokoju a potem: Apr 14 13:33:04 host sendmail[4126]: STARTTLS=server, relay=[58.58.185.75], version=TLSv1/SSLv3, verify=NO, cipher=DHE-RSA-AES128-GCM-SHA256, bits=128/128 Apr 14 13:33:07 host sendmail[4126]: AUTH=server, relay=[58.58.185.75], authid=user@domena.pl, mech=LOGIN, bits=0 Apr 14 13:33:12 host sendmail[4126]: 03EBX0DG004126: from=<j-evans14@domena.pl>, size=1195, class=0, nrcpts=1, msgid=<v016c324.1mucmmux.ae3ea.6vpf@domena.pl>, proto=ESMTP, daemon=MSA, relay=[58.58.185.75] Apr 14 13:33:17 host sendmail[4126]: 03EBX0DH004126: from=<j-evans14@domena.pl>, size=1132, class=0, nrcpts=1, msgid=<ed6b4raa.hvf1bxaf.98ufz.3er9@domena.pl>, proto=ESMTP, daemon=MSA, relay=[58.58.185.75] Potem otwiera połączenie, też TLs z serwerem docelowym i śle do jakiegoś usera z tego serwera: Apr 14 13:33:14 mpwik sendmail[4137]: STARTTLS=client, relay=hotmail-com.olc.protection.outlook.com., version=TLSv1/SSLv3, verify=OK, cipher=ECDHE-RSA-AES256-GCM-SHA384, bits=256/256 Apr 14 13:33:15 mpwik sendmail[4137]: 03EBX0DG004126: to=<dave_gresham@hotmail.com>, delay=00:00:05, xdelay=00:00:03, mailer=esmtp, pri=121195, relay=hotmail-com.olc.protection.outlook.com. [104.47.10.33], dsn=2.0.0, stat=Sent (<v016c324.1mucmmux.ae3ea.6vpf@mpwikzdw.com.pl> [InternalId=84911503470524, Hostname=DB5EUR03HT...od.protection.outlook.com] 9023 bytes in 0.368, 23.938 KB/sec Queued mail for delivery -> 250 2.1.5) I dalej sieje po różnych adresach email - prawdziwych i fikcyjnych. Dochodza podobne połączenia z innych IP - istny sajgon Nie rozumiem mechanizmu. Mało tego, ze się uwiesza i spamuje to jeszcze otwiera połączenia ipv6 choć support dla ipv6 jest wyłączony, a na inpucie ipv6 jest drop. Wszystkie adresy email w domenie należą do userów systemowych z /bin/false, ale authid dla faktycznego usera autoryzującego się w sieci lokalnej wygląda authid=user. Mam rozumieć, że dysponuje hasłami niektórych userów i się autoryzuje, czy też wykorzystuje jakąś dziurę w sendmailu. Zresztą, gdyby się autoryzował, to mógłby wysyłać jako ten user, a on spamuje z fikcyjnych kont niby z domeny - coś jakby aktywować opcję relay_local_from albo relay_mail_from, Jak tylko wyłączę tą opcję delay_checks wraca spokój i normalna praca sendmaila. Wyłączyłem FEATURE dnsbl zen.spamhaus i można wysłać pocztę z dynamicznego, ale to oznacza, że ze spamerskimi nalotami trzeba będzie walczyć na piechotę. LFC
Re: Do znających sendmaila - dlaczego z opcją delay_checks tak się dzieje?
Author: Piotr Lechowicz
Date: Tue, 14 Apr 2020 21:29
Date: Tue, 14 Apr 2020 21:29
67 lines
5498 bytes
5498 bytes
W dniu 2020-04-14 o 18:27, LFC pisze: > Zasięgałem tu porad w kwestii konfiguracji sendmaila. Szczególnie chciałęm osiągnąć aby "roaming users" mogli wysyłać pocztę ze swoich domowych laptopów/internetów. > Stanęło na STARTTLS, porcie 587 i opcji delay_checks, a w pliku access za poradnikiem konfiguracji antyspamowej sendmaila > To: domena.pl OK > Connect:domena.pl OK Tego Connect: bym nie robił... Uwierzytelnienie ma być jedynym warunkiem dopuszczającym relay > Było RELAY, jak dałem OK. > Po odpaleniu takiej konfiguracji godzina spokoju a potem: > > Apr 14 13:33:04 host sendmail[4126]: STARTTLS=server, relay=[58.58.185.75], version=TLSv1/SSLv3, verify=NO, cipher=DHE-RSA-AES128-GCM-SHA256, bits=128/128> Apr 14 13:33:07 host sendmail[4126]: AUTH=server, relay=[58.58.185.75], authid=user@domena.pl, mech=LOGIN, bits=0 Niżej twierdzisz, że masz wyłącznie userów systemowych; powinno być authid=user Ten j-evans14@ poniżej to rzeczywisty user, czy fake? Bo nie wiem czy logi przerabiasz konsekwentnie czy wyrywkowo: raz user@domena, potem j-evans14@domena; raz host, potem mpwik... > Apr 14 13:33:12 host sendmail[4126]: 03EBX0DG004126: from=<j-evans14@domena.pl>, size=1195, class=0, nrcpts=1, msgid=<v016c324.1mucmmux.ae3ea.6vpf@domena.pl>, proto=ESMTP, daemon=MSA, relay=[58.58.185.75] > Apr 14 13:33:17 host sendmail[4126]: 03EBX0DH004126: from=<j-evans14@domena.pl>, size=1132, class=0, nrcpts=1, msgid=<ed6b4raa.hvf1bxaf.98ufz.3er9@domena.pl>, proto=ESMTP, daemon=MSA, relay=[58.58.185.75] > Przyjrzałbym się konfiguracji SASLa, bo może przechodzi każde uwierzytelnienie, nawet na fałszywe dane... > Potem otwiera połączenie, też TLs z serwerem docelowym i śle do jakiegoś usera z tego serwera> > Apr 14 13:33:14 mpwik sendmail[4137]: STARTTLS=client, relay=hotmail-com.olc.protection.outlook.com., version=TLSv1/SSLv3, verify=OK, cipher=ECDHE-RSA-AES256-GCM-SHA384, bits=256/256 > Apr 14 13:33:15 mpwik sendmail[4137]: 03EBX0DG004126: to=<dave_gresham@hotmail.com>, delay=00:00:05, xdelay=00:00:03, mailer=esmtp, pri=121195, relay=hotmail-com.olc.protection.outlook.com. [104.47.10.33], dsn=2.0.0, stat=Sent (<v016c324.1mucmmux.ae3ea.6vpf@mpwikzdw.com.pl> [InternalId=84911503470524, Hostname=DB5EUR03HT...od.protection.outlook.com] 9023 bytes in 0.368, 23.938 KB/sec Queued mail for delivery -> 250 2.1.5) > > I dalej sieje po różnych adresach email - prawdziwych i fikcyjnych. Jak już się uwierzytelnił, to może - tak to ma działać. Jak się uporasz z tym bałaganem, to możesz ustawić limity dla loginów/adresów IP nadawców. > Dochodza podobne połączenia z innych IP - istny sajgon Uwierzytelnienie tymi samymi danymi co w logu, czy za każdym razem innymi? Pokazałeś jeden wpis z logów - pokaż więcej... > Nie rozumiem mechanizmu. > > Mało tego, ze się uwiesza i spamuje to jeszcze otwiera połączenia ipv6 choć support dla ipv6 jest wyłączony, a na inpucie ipv6 jest drop. Pokaż te logi z IPv6. > Wszystkie adresy email w domenie należą do userów systemowych z /bin/false, ale authid dla faktycznego usera autoryzującego się w sieci lokalnej wygląda authid=user. > Mam rozumieć, że dysponuje hasłami niektórych userów i się autoryzuje Może tak być, jeżeli hasła masz słabe. Ponownie pytanie: w logu przy uwierzytelnieniu tych spamów są dane rzeczywistych userów czy fejki? , czy też wykorzystuje jakąś dziurę w sendmailu. > Zresztą, gdyby się autoryzował, to mógłby wysyłać jako ten user, a on spamuje z fikcyjnych kont niby z domeny - coś jakby aktywować opcję relay_local_from albo relay_mail_from, A nie masz FEATURE(relay_entire_domain) albo innego podobnego wynalazku? Sprawdziłeś całe sendmail.mc? > Jak tylko wyłączę tą opcję delay_checks wraca spokój i normalna praca sendmaila. > Wyłączyłem FEATURE dnsbl zen.spamhaus i można wysłać pocztę z dynamicznego, ale to oznacza, że ze spamerskimi nalotami trzeba będzie walczyć na piechotę. Czyli potwierdzasz, że problem z relay wynika z włączenia uwierzytelnienia? > > LFC > Możesz ewentualnie jeszcze spróbować zapytać na comp.mail.sendmail. Udziela się tam (chociaż tu też czasem zagląda) specjalista od sendmaila: Andrzej Adam Filip <anfi@onet.eu>
Re: Do znających sendmaila - dlaczego z opcją delay_checks tak się dzieje?
Author: LFC
Date: Wed, 15 Apr 2020 06:18
Date: Wed, 15 Apr 2020 06:18
309 lines
12364 bytes
12364 bytes
W dniu 14.04.2020 o 23:29, Piotr Lechowicz pisze:
>
> Tego Connect: bym nie robił...
> Uwierzytelnienie ma być jedynym warunkiem dopuszczającym relay
>
Poszedłem za radą
https://www.sendmail.org/~ca/email/doc8.12/cf/m4/anti_spam.html#delay_check
>
> Niżej twierdzisz, że masz wyłącznie userów systemowych; powinno być
> authid=user
Właśnie
> Ten j-evans14@ poniżej to rzeczywisty user, czy fake?
Fake
> Bo nie wiem czy logi przerabiasz konsekwentnie czy wyrywkowo: raz
> user@domena, potem j-evans14@domena; raz host, potem mpwik...
Nie wyszła mi anonymizacja
Widziałeś w logu najpierw linia z authid a po niej j-evans
>
> Przyjrzałbym się konfiguracji SASLa, bo może przechodzi każde
> uwierzytelnienie, nawet na fałszywe dane...
>
W /usr/lib64/sasl2 jest Sendmail.conf, a w nim
pwcheck_method: saslauthd
mech_list: login plain
Taki sam plik jest w /etc/sasl2
>
>> Nie rozumiem mechanizmu.
>>
>> Mało tego, ze się uwiesza i spamuje to jeszcze otwiera połączenia ipv6
>> choć support dla ipv6 jest wyłączony, a na inpucie ipv6 jest drop.
>
> Pokaż te logi z IPv6.
>
Nie loguję całego ruchu, jak zobaczyłem charakterystyczne linie w
netstat -tuan, to zatrzymałem sendmaila i przywróciłem pierwotny konfig
>
> Może tak być, jeżeli hasła masz słabe.
> Ponownie pytanie: w logu przy uwierzytelnieniu tych spamów są dane
> rzeczywistych userów czy fejki?
>
Tu może tak być, bo zwykle, jak daję nowego usera, to hasło jest takie
samo. Serwer jest linuksowy usery systemowe z /bin/false, więc sami nie
mogą zmienić hasła. Powinni dać mi swoją propozycję do zmiany, ale "kto
by pamiętał o tym"
Uczciwie powiem, że nie robiłem wilekiej analizy tego, co w logach, ale
widziałem tam w postaci authid=user@domena.pl 2 faktycznych userów.
Spróbuję zmienić ich hasła i próba.
Nie kumam tego, załóżmy, autoryzuje się jako user1, a potem śle pocztę z
fikcjnego adresu z domeny
>
> A nie masz FEATURE(relay_entire_domain) albo innego podobnego wynalazku?
> Sprawdziłeś całe sendmail.mc?
>
divert(-1)dnl
dnl #
dnl # This is the sendmail macro config file for m4. If you make changes to
dnl # /etc/mail/sendmail.mc, you will need to regenerate the
dnl # /etc/mail/sendmail.cf file by confirming that the sendmail-cf
package is
dnl # installed and then performing a
dnl #
dnl # make -C /etc/mail
dnl #
include(`/usr/share/sendmail-cf/m4/cf.m4')dnl
VERSIONID(`setup for linux')dnl
OSTYPE(`linux')dnl
dnl #
dnl # Do not advertize sendmail version.
dnl #
dnl define(`confSMTP_LOGIN_MSG', `$j Sendmail; $b')dnl
dnl #
dnl # default logging level is 9, you might want to set it higher to
dnl # debug the configuration
dnl #
dnl define(`confLOG_LEVEL', `9')dnl
dnl #
dnl # Uncomment and edit the following line if your outgoing mail needs to
dnl # be sent out through an external mail server:
dnl #
dnl define(`SMART_HOST', `smtp.your.provider')dnl
dnl #
define(`confDEF_USER_ID', ``8:12'')dnl
dnl define(`confAUTO_REBUILD')dnl
define(`confTO_CONNECT', `1m')dnl
define(`confTRY_NULL_MX_LIST', `True')dnl
define(`confDONT_PROBE_INTERFACES', `True')dnl
define(`PROCMAIL_MAILER_PATH', `/usr/bin/procmail')dnl
define(`ALIAS_FILE', `/etc/aliases')dnl
define(`STATUS_FILE', `/var/log/mail/statistics')dnl
define(`UUCP_MAILER_MAX', `2000000')dnl
define(`confUSERDB_SPEC', `/etc/mail/userdb.db')dnl
define(`confPRIVACY_FLAGS', `authwarnings,novrfy,noexpn,restrictqrun')dnl
define(`confAUTH_OPTIONS', `A p')dnl
dnl #
dnl # The following allows relaying if the user authenticates, and disallows
dnl # plaintext authentication (PLAIN/LOGIN) on non-TLS links
dnl #
dnl define(`confAUTH_OPTIONS', `A p y')dnl
dnl #
dnl # PLAIN is the preferred plaintext authentication method and used by
dnl # Mozilla Mail and Evolution, though Outlook Express and other MUAs do
dnl # use LOGIN. Other mechanisms should be used if the connection is not
dnl # guaranteed secure.
dnl # Please remember that saslauthd needs to be running for AUTH.
dnl #
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN
PLAIN')dnl
dnl #
dnl # Rudimentary information on creating certificates for sendmail TLS:
dnl # cd /etc/pki/tls/certs; make sendmail.pem
dnl # Complete usage:
dnl # make -C /etc/pki/tls/certs usage
dnl #
define(`confCACERT_PATH', `/etc/pki/tls/certs')dnl
define(`confCACERT', `/etc/pki/tls/certs/ca-bundle.crt')dnl
define(`confSERVER_CERT', `/etc/pki/tls/certs/sendmail.pem')dnl
define(`confSERVER_KEY', `/etc/pki/tls/certs/sendmail.key')dnl
dnl #
dnl # This allows sendmail to use a keyfile that is shared with OpenLDAP's
dnl # slapd, which requires the file to be readble by group ldap
dnl #
dnl define(`confDONT_BLAME_SENDMAIL', `groupreadablekeyfile')dnl
dnl #
dnl define(`confTO_QUEUEWARN', `4h')dnl
dnl define(`confTO_QUEUERETURN', `5d')dnl
dnl define(`confQUEUE_LA', `12')dnl
dnl define(`confREFUSE_LA', `18')dnl
define(`confTO_IDENT', `0')dnl
dnl FEATURE(`delay_checks')dnl
dnl FEATURE(`no_default_msa', `dnl')dnl
FEATURE(`no_default_msa')dnl
FEATURE(`smrsh', `/usr/sbin/smrsh')dnl
FEATURE(`mailertable', `hash -o /etc/mail/mailertable.db')dnl
FEATURE(`virtusertable', `hash -o /etc/mail/virtusertable.db')dnl
FEATURE(redirect)dnl
FEATURE(always_add_domain)dnl
FEATURE(use_cw_file)dnl
FEATURE(use_ct_file)dnl
dnl #
dnl # The following limits the number of processes sendmail can fork to
accept
dnl # incoming messages or process its message queues to 20.) sendmail
refuses
dnl # to accept connections once it has reached its quota of child
processes.
dnl #
dnl define(`confMAX_DAEMON_CHILDREN', `20')dnl
dnl #
dnl # Limits the number of new connections per second. This caps the
overhead
dnl # incurred due to forking new sendmail processes. May be useful against
dnl # DoS attacks or barrages of spam. (As mentioned below, a per-IP
address
dnl # limit would be useful but is not available as an option at this
writing.)
dnl #
dnl define(`confCONNECTION_RATE_THROTTLE', `3')dnl
dnl #
dnl # The -t option will retry delivery if e.g. the user runs over his
quota.
dnl #
FEATURE(local_procmail, `', `procmail -t -Y -a $h -d $u')dnl
FEATURE(`access_db', `hash -T<TMPF> -o /etc/mail/access.db')dnl
FEATURE(`blacklist_recipients')dnl
EXPOSED_USER(`root')dnl
dnl #
dnl # For using Cyrus-IMAPd as POP3/IMAP server through LMTP delivery
uncomment
dnl # the following 2 definitions and activate below in the MAILER
section the
dnl # cyrusv2 mailer.
dnl #
dnl define(`confLOCAL_MAILER', `cyrusv2')dnl
dnl define(`CYRUSV2_MAILER_ARGS', `FILE /var/lib/imap/socket/lmtp')dnl
dnl #
dnl # The following causes sendmail to only listen on the IPv4 loopback
address
dnl # 127.0.0.1 and not on any other network devices. Remove the loopback
dnl # address restriction to accept email from the internet or intranet.
dnl #
DAEMON_OPTIONS(`Family=inet, Port=smtp, Name=MTA')dnl
dnl #
dnl # The following causes sendmail to additionally listen to port 587 for
dnl # mail from MUAs that authenticate. Roaming users who can't reach their
dnl # preferred sendmail daemon due to port 25 being blocked or
redirected find
dnl # this useful.
dnl #
DAEMON_OPTIONS(`Family=inet, Port=submission, Name=MSA, M=Ea')dnl
dnl #
dnl # The following causes sendmail to additionally listen to port 465, but
dnl # starting immediately in TLS mode upon connecting. Port 25 or 587
followed
dnl # by STARTTLS is preferred, but roaming clients using Outlook
Express can't
dnl # do STARTTLS on ports other than 25. Mozilla Mail can ONLY use STARTTLS
dnl # and doesn't support the deprecated smtps; Evolution <1.1.1 uses smtps
dnl # when SSL is enabled-- STARTTLS support is available in version 1.1.1.
dnl #
dnl # For this to work your OpenSSL certificates must be configured.
dnl #
dnl DAEMON_OPTIONS(`Family=inet, Port=smtps, Name=TLSMTA, M=s')dnl
dnl #
dnl # The following causes sendmail to additionally listen on the IPv6
loopback
dnl # device. Remove the loopback address restriction listen to the network.
dnl #
dnl DAEMON_OPTIONS(`port=smtp,Addr=::1, Name=MTA-v6, Family=inet6')dnl
dnl #
dnl # enable both ipv6 and ipv4 in sendmail:
dnl #
dnl DAEMON_OPTIONS(`Name=MTA-v4, Family=inet, Name=MTA-v6, Family=inet6')
dnl #
dnl # We strongly recommend not accepting unresolvable domains if you
want to
dnl # protect yourself from spam. However, the laptop and users on computers
dnl # that do not have 24x7 DNS do need this.
dnl #
dnl FEATURE(`accept_unresolvable_domains')dnl
dnl #
dnl FEATURE(`relay_based_on_MX')dnl
dnl #
dnl # Also accept email sent to "localhost.localdomain" as local email.
dnl #
LOCAL_DOMAIN(`localhost.localdomain')dnl
dnl #
dnl # The following example makes mail from this host and any additional
dnl # specified domains appear to be sent from mydomain.com
dnl #
dnl MASQUERADE_AS(`mpwikzdw.com.pl')dnl
dnl #
dnl # masquerade not just the headers, but the envelope as well
dnl #
dnl FEATURE(masquerade_envelope)dnl
dnl #
dnl # masquerade not just @mydomainalias.com, but @*.mydomainalias.com
as well
dnl #
dnl FEATURE(masquerade_entire_domain)dnl
dnl #
dnl MASQUERADE_DOMAIN(localhost)dnl
dnl MASQUERADE_DOMAIN(localhost.localdomain)dnl
dnl MASQUERADE_DOMAIN(mydomainalias.com)dnl
dnl MASQUERADE_DOMAIN(mydomain.lan)dnl
dnl MAILER(cyrusv2)dnl
INPUT_MAIL_FILTER(`spamassassin',
`S=unix:/var/run/spamass-milter/spamass-milter.sock, F=,
T=C:15m;S:4m;R:4m;E:10m')dnl
define(`confMILTER_MACROS_CONNECT',`t, b, j, _, {daemon_name},
{if_name}, {if_addr}')dnl
define(`confMILTER_MACROS_HELO',`s, {tls_version}, {cipher},
{cipher_bits}, {cert_subject}, {cert_issuer}')dnl
dnl FEATURE(`dnsbl', `zen.spamhaus.org', `"550 Mail from "
$`'&{client_addr} " refused - see http://www.spamhaus.org/zen/"')dnl
INPUT_MAIL_FILTER(`clmilter',
`S=local:/var/run/clamav/clamav-milter.sock, F=, T=S:4m;R:4m')dnl
INPUT_MAIL_FILTER(`milter-regex', `S=unix:/var/spool/milter-regex/sock,
T=S:30s;R:2m')dnl
MAILER(smtp)dnl
MAILER(procmail)dnl
Sorry za przydługą wstawkę, ale na tym konfigu pracuję. Wczoraj
wyłączyłem dnsbl zen.spamhaus bo pozwala wtedy relayować ze świata.
Looknij na niego, może znajdziesz w nim coś niedobrego, bo ja śledziłem
go wiele razy i nic nie znajduję.
>
> Czyli potwierdzasz, że problem z relay wynika z włączenia uwierzytelnienia?
>
Uwierzytelnianie sasl stosuję od dawna. Problem pojawia się, gdy
aktywuję opcję delay_checks. Przynajmniej tak to wygląda.
Nadmieniam, ze nie zajmuję się tym zawodowo.
Znam trochę linuksa i kiedyś dawno temu postawiłem serwer pocztowy w
firmie i to się przyjęło, a teraz firma już nie umie pracować bez serwera.
Dbanie o ten serwer to jest tylko wycinek moich obowiązków.
Z każdej jakiejś akcji spamowo wirusowej w przeszłości pozostawały nowe
zabezpieczenia, które musiałem na cito aktywować.
Generalnie nie zajmuję się nim o ile nie muszę, a ostatnio niestety
muszę, bo modna stała się praca zdalna, a tu nie można było wysyłać
poczty z domu, bo dnsbl wysyłał hosty na drzewo.
LFC
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads