Send e-post gjennom en HTTP-proxy med curl
Kontroller CONNECT-tillatelser, SMTP-TLS og de separate påloggingsdetaljene for proxyen og e-posttjenesten før du prøver å sende.
En HTTP-proxy kan bære en SMTP-tilkobling hvis den tillater en CONNECT-tunnel til e-postserverens port. Den tillatelsen betyr mer enn om en nettside lastes gjennom samme proxy.
En sending med SMTP og STARTTLS har denne generelle formen:
curl --proxy http://203.0.113.10:8080 --proxytunnel \
--url smtp://mail.example.com:587 --ssl-reqd \
--user mail-user \
--mail-from [email protected] \
--mail-rcpt [email protected] \
--upload-file message.eml
Adressene er plassholdere. Bruk en e-posttjeneste og en avsender du er autorisert til å bruke. curl spør etter passordet når brukervalget bare inneholder brukernavnet. Meldingsfilen trenger passende e-postheadere, en tom linje og en brødtekst; den er ikke bare mottakeradressen.
Forvent atskilte tilkoblinger og pålogginger
HTTP-tunnelvalget får curl til å be proxyen om en tilkobling til SMTP-målet. Proxyen kan kreve sine egne påloggingsdetaljer gjennom curls valg for proxyautentisering. Deretter autentiserer SMTP-tjenesten e-postbrukeren inne i den tilkoblingen.
--ssl-reqd krever TLS-oppgraderingen for denne SMTP-URL-en. Hold sertifikatverifisering på for det tiltenkte e-postvertsnavnet. Vellykket proxyautentisering beviser ikke at TLS eller e-postpåloggingen vil lykkes.
Mange generelle HTTP-proxyer begrenser CONNECT-porter. En avvisning av port 587 kan være en bevisst policy. Be om en godkjent rute i stedet for å prøve urelaterte porter gjentatte ganger eller behandle begrensningen som en feil.
E-posttjenester kan også håndheve avsendertillatelser og innsendingsregler etter at ruten virker. Les SMTP-svaret. En melding som avvises etter autentisering, krever en annen løsning enn en tunnel som avvises før SMTP-hilsenen kommer.