Comando sendmail di Linux

comando sendmail

Su sistemi operativi simili a Unix, sendmail è una funzione di routing della posta elettronica per scopi generici che supporta molti tipi di metodi di trasferimento e consegna della posta, incluso il protocollo SMTP (Simple Mail Transfer Protocol) utilizzato per il trasporto di posta elettronica su Internet.


Descrizione

sendmail invia un messaggio a uno o più destinatari, instradando il messaggio su qualunque rete sia necessaria. sendmail esegue l'inoltro internetwork come necessario per recapitare il messaggio nella posizione corretta.

sendmail non è inteso come una routine dell'interfaccia utente; altri programmi forniscono front-end intuitivi. sendmail viene utilizzato solo per recapitare messaggi preformattati.

Senza flag specificati, sendmail legge il suo input standard fino a un end-of-file o una riga composta da un solo punto e invia una copia del messaggio trovato lì a tutti gli indirizzi elencati. Determina le reti da utilizzare in base alla sintassi e al contenuto degli indirizzi.

Gli indirizzi locali vengono cercati in un file e opportunamente modificati. L'aliasing può essere prevenuto precedendo l'indirizzo con una barra rovesciata. A partire dalla versione 8.10, il mittente è incluso in eventuali espansioni di alias; ad esempio, se "john" invia la posta a "gruppo" e "gruppo" include "john" nell'espansione, la lettera verrà recapitata anche a "john".


Sintassi

sendmail [flags] [indirizzo ...]

Sintassi alternativa

sendmail può anche essere invocato, con funzionalità speciali, usando i seguenti comandi.

newaliases
mailq [-v]
hoststat
purgestat
smtpd

Vedi sotto per maggiori informazioni.


parametri

-Corrente alternata Utilizzare submit.cf anche se la modalità operativa non indica un invio iniziale di posta.
-am Utilizzare sendmail.cf anche se la modalità operativa indica un invio iniziale di posta.
-Btype Imposta il tipo di corpo da digitare. I valori legali correnti sono 7BIT o 8BITMIME.
-ba Entra in modalità ARPANET. Tutte le righe di input devono terminare con un CR-LF e tutti i messaggi verranno generati con un CR-LF alla fine. Inoltre, i campi "Da:" e "Mittente:" vengono esaminati per il nome del mittente.
-bd Esegui come demone. sendmail eseguirà il fork e verrà eseguito in background in ascolto sul socket 25 per le connessioni SMTP in entrata. Questo è normalmente eseguito da / etc / rc.
-bd Come -bd, tranne per il fatto che viene eseguito in primo piano.
-bH Stampa il database di stato dell'host persistente.
-bH Elimina le voci scadute dal database di stato host persistente.
-bi Inizializza il database alias.
-BM Recapita la posta come di consueto (impostazione predefinita).
-bp Stampa un elenco delle code.
-bP Stampa il numero di voci nelle code; disponibile solo con supporto di memoria condivisa.
-bs Utilizzare il protocollo SMTP come descritto in RFC 821 su input e output standard. Questo flag implica tutte le operazioni del flag -ba che sono compatibili con SMTP.
-BT Esegui in modalità test indirizzo. Questa modalità legge gli indirizzi e mostra i passaggi dell'analisi; viene utilizzato per il debug delle tabelle di configurazione.
-bV Verifica solo nomi; non tentare di raccogliere o recapitare un messaggio. La modalità di verifica viene normalmente utilizzata per la convalida di utenti o mailing list.
-Cfile Usa un file di configurazione alternativo. sendmail rinuncia a qualsiasi privilegio avanzato (set-user-ID o set-group-ID) se viene specificato un file di configurazione alternativo.
MrGreen file di log Invia l'output di debug al file di registro indicato invece di stdout.
-dcategory.level ... Impostare il flag di debug per la categoria al livello. La categoria è un numero intero o un nome che specifica l'argomento e livella un numero intero che specifica il livello dell'output di debug desiderato. Livelli più alti generalmente significano più output. È possibile specificare più di un flag separandoli con virgole. Un elenco di categorie numeriche di debug è disponibile nel file TRACEFLAGS nella distribuzione di origine sendmail. L'opzione -d0.1 stampa la versione di sendmail e le opzioni utilizzate durante la compilazione. La maggior parte delle altre categorie sono utili solo e documentate nel codice sorgente di sendmail.
-Ffullname Imposta il nome completo del mittente.
-fname Imposta il nome della persona "da" (ovvero il mittente della busta della posta). Questo indirizzo può essere utilizzato anche nell'intestazione "Da:" se tale intestazione è mancante durante l'invio iniziale. L'indirizzo del mittente della busta viene utilizzato come destinatario per le notifiche sullo stato della consegna e può anche apparire in un'intestazione "Percorso di ritorno:". -f dovrebbe essere usato solo da utenti "fidati" (normalmente root, demone e rete) o se la persona che stai cercando di diventare è la stessa persona che sei. Altrimenti, al messaggio verrà aggiunta un'intestazione "X-Authentication-Warning".
-G Invio inoltro (gateway) di un messaggio, ad es. Quando rmail chiama sendmail.
-HN Impostare il conteggio hop su N. Il conteggio hop viene incrementato ogni volta che la posta viene elaborata. Quando raggiunge un limite, la posta viene restituita con un messaggio di errore, molto probabilmente vittima di un ciclo di aliasing. Se non specificato, vengono conteggiate le righe "Ricevute:" nel messaggio.
-i Ignora i punti da soli sulle linee da soli nei messaggi in arrivo. Questo dovrebbe essere impostato se stai leggendo dati da un file.
-L tag Impostare l'identificatore utilizzato nei messaggi syslog sul tag fornito.
-N dsn Impostare le condizioni di notifica dello stato di consegna su dsn, che può essere "mai" per nessuna notifica, oppure un elenco separato da virgole dei valori "mancata" da notificare in caso di mancata consegna, "ritardo" da notificare in caso di ritardo nella consegna e "esito positivo "essere avvisato quando il messaggio viene recapitato correttamente.
-n Non fare aliasing.
-O opzione = valore Impostare l'opzione opzione sul valore specificato. Questo modulo utilizza nomi lunghi. Vedi sotto per ulteriori dettagli.
valore -ox Impostare l'opzione x sul valore specificato. Questo modulo utilizza solo nomi di singoli caratteri.
-pprotocol Imposta il nome del protocollo utilizzato per ricevere il messaggio. Può essere un nome di protocollo semplice come "UUCP" o un protocollo e un nome host, come "UUCP: ucbvax".
-q [ora] Elabora i messaggi salvati nella coda a determinati intervalli. Se il tempo viene omesso, elaborare la coda una volta. Il tempo è indicato come un numero con tag, con "s" come secondi, "m" è minuti (impostazione predefinita), "h" è ore, "d" è giorni e "w" sono settimane. Ad esempio, "-q1h30m" o "-q90m" imposteranno entrambi il timeout su un'ora e trenta minuti. Per impostazione predefinita, sendmail verrà eseguito in background. Questa opzione può essere usata in sicurezza con -bd.
-qp [ora] Simile a -qtime, tranne per il fatto che invece di eseguire periodicamente il fork di un bambino per elaborare la coda, sendmail esegue il fork di un singolo figlio persistente per ogni coda che si alterna tra l'elaborazione della coda e la sospensione. Il tempo di sonno è dato come argomento; il valore predefinito è 1 secondo. Il processo si spegnerà sempre almeno 5 secondi se la coda era vuota nella precedente esecuzione della coda.
-qf Elabora i messaggi salvati nella coda una volta e non si biforca, ma viene eseguito in primo piano.
-qGname Elaborare i lavori nel gruppo di code chiamato solo nome.
q [!] Isubstr Limitare i lavori elaborati a quelli che contengono substr come sottostringa dell'ID coda o no quando! è specificato.
q [!] Qsubstr Limitare i lavori elaborati ai lavori in quarantena contenenti substr come sottostringa del motivo della quarantena o meno quando! è specificato.
q [!] Rsubstr Limitare i lavori elaborati a quelli contenenti substr come sottostringa di uno dei destinatari o meno quando! è specificato.
q [!] Ssubstr Limitare i lavori elaborati a quelli contenenti substr come sottostringa del mittente o meno quando! è specificato.
-Q [ragione] Metti in quarantena gli elementi di una coda normale con il motivo specificato o gli elementi di coda in quarantena non quarantena se non viene fornito alcun motivo. Questo dovrebbe essere usato solo con una sorta di corrispondenza degli oggetti usando come descritto sopra.
-R ritorno Imposta la quantità del messaggio da restituire se il messaggio rimbalza. Il parametro return può essere "full" per restituire l'intero messaggio o "hdrs" per restituire solo le intestazioni. In quest'ultimo caso, i rimbalzi locali restituiscono solo le intestazioni.
-rname Una forma alternativa e obsoleta della bandiera -f.
-t Leggi il messaggio per i destinatari. A :, Cc :, e Ccn: le linee verranno scansionate per gli indirizzi dei destinatari. Ccn: la riga verrà eliminata prima della trasmissione.
-V invidiato Imposta l'ID busta originale. Questo viene propagato attraverso SMTP ai server che supportano i DSN e viene restituito in messaggi di errore conformi a DSN.
-v Entra in modalità dettagliata. Le espansioni di alias verranno annunciate, ecc.
-X file di log Accedi a tutto il traffico in entrata e in uscita dai mailer nel file di registro indicato. Questo dovrebbe essere usato solo come ultima risorsa per il debug dei bug del mailer. Registrerà molti dati molto rapidamente.
-- Interrompere l'elaborazione dei flag di comando e utilizzare il resto degli argomenti come indirizzi.

Opzioni

Ci sono anche molte opzioni di elaborazione che possono essere impostate. Normalmente questi saranno usati solo da un amministratore di sistema. Le opzioni possono essere impostate sulla riga di comando usando il flag -o (per nomi abbreviati), il flag -O (per nomi lunghi) o nel file di configurazione. Questo è un elenco parziale limitato a quelle opzioni che potrebbero essere utili sulla riga di comando e mostra solo i nomi lunghi. Le opzioni sono:

FileAlias ​​= File Usa file alias alternativo.
HoldExpensive Sui mailer considerati "costosi" a cui connettersi, non avviare una connessione immediata. Questo richiede l'accodamento.
CheckpointInterval = N Controllare il file della coda dopo ogni N consegne riuscite (valore predefinito 10). Ciò evita consegne eccessive duplicate durante l'invio a lunghe mailing list interrotte da arresti anomali del sistema.
DeliveryMode = x Impostare la modalità di consegna su x. Le modalità di consegna sono "i" per la consegna interattiva (sincrona), "b" per la consegna in background (asincrona), "q" solo per la coda; vale a dire, la consegna effettiva viene eseguita alla successiva esecuzione della coda e "d" per differito: lo stesso di "q" tranne che le ricerche nel database per le mappe che hanno impostato l'opzione -D (impostazione predefinita per la mappa host) vengono evitate.
ErrorMode = x Impostare l'elaborazione degli errori in modalità x. Le modalità valide sono "m" per rispedire il messaggio di errore, "w" per "riscrivere" il messaggio di errore (o rispedirlo se il mittente non ha effettuato l'accesso), "p" per stampare gli errori sul terminale (impostazione predefinita ), "q" per eliminare i messaggi di errore (viene restituito solo lo stato di uscita) ed "e" per eseguire un'elaborazione speciale per BerkNet. Se il testo del messaggio non viene rispedito per posta dalle modalità "m" o "w" e se il mittente è locale su questa macchina, una copia del messaggio viene aggiunta al file dead.letter nella home directory del mittente.
SaveFromLine Salva in stile Unix Dalle righe nella parte anteriore dei messaggi.
MaxHopCount = N Il numero massimo di volte in cui un messaggio può "saltare" prima di decidere che è in un ciclo.
IgnoreDots Non prendere punti su una linea da soli come terminatore di messaggi.
SendMimeErrors Invia messaggi di errore in formato MIME. Se non impostato, l'estensione SMTP DSN (Notifica stato consegna) è disabilitata.
ConnectionCacheTimeout = timeout Imposta il timeout della cache di connessione.
ConnectionCacheSize = N Imposta la dimensione della cache di connessione.
Loglevel = n Il livello di registro.
MeToo = false Non inviare a "me" (il mittente) se sono in un'espansione alias.
CheckAliases Convalida il lato destro degli alias durante un comando newaliases.
OldStyleHeaders Se impostato, questo messaggio potrebbe avere intestazioni di vecchio stile. Se non impostato, questo messaggio avrà nuove intestazioni di stile (ovvero virgole anziché spazi tra gli indirizzi). Se impostato, viene utilizzato un algoritmo adattivo che determinerà correttamente il formato dell'intestazione nella maggior parte dei casi.
QueueDirectory = queuedir Seleziona la directory in cui mettere in coda i messaggi.
StatusFile = File Salva le statistiche nel file indicato.
Timeout.queuereturn = tempo Impostare il timeout sui messaggi non consegnati nella coda sull'ora specificata. Dopo che la consegna non è riuscita (ad es. A causa di un host inattivo) per questo periodo di tempo, i messaggi non riusciti verranno restituiti al mittente. L'impostazione predefinita è cinque giorni.
UserDatabaseSpec = userDatabase Se impostato, viene consultato un database utente per ottenere informazioni di inoltro. È possibile considerarlo un'aggiunta al meccanismo di aliasing, tranne per il fatto che il database è destinato alla distribuzione; gli alias sono locali per un determinato host. Questo potrebbe non essere disponibile se sendmail non ha l'opzione USERDB compilata.
ForkEachJob Effettuare il fork di ogni lavoro durante le corse in coda. Può essere utile su macchine con poca memoria.
SevenBitInput Spoglia i messaggi in arrivo a sette bit.
EightBitMode = modalità Impostare la gestione dell'input a otto bit su destinazioni a sette bit in modalità: m (mimefy) verrà convertito in formato MIME a sette bit, p (pass) lo passerà come otto bit (ma viola i protocolli) e s (rigoroso) rimbalzerà il messaggio.
MinQueueAge = timeout Imposta per quanto tempo un lavoro deve fermentare nella coda tra i tentativi di invio.
DefaultCharSet = charset Imposta il set di caratteri predefinito utilizzato per etichettare i dati a 8 bit che non sarebbero altrimenti etichettati.
DialDelay = SleepTime Se l'apertura di una connessione non riesce, sospendi il sonno per alcuni secondi e riprova. Utile sui siti dial-on-demand.
NoRecipientAction = azione Imposta il comportamento quando non ci sono intestazioni di destinatari (A :, Cc: o Ccn 🙂 nel messaggio all'azione: nessuno lascia invariato il messaggio, il componente aggiuntivo aggiunge un'intestazione A: con i destinatari della busta, aggiungi-apparentemente-a aggiunge un'intestazione apparentemente-A: con i destinatari della busta, add-bcc aggiunge un'intestazione Bcc: vuota e l'aggiunta-a-non divulgata aggiunge un'intestazione che legge `A: destinatari non divulgati :; '.
MaxDaemonChildren = N Imposta il numero massimo di figli che un demone SMTP in arrivo consentirà di generare in qualsiasi momento su N.
ConnectionRateThrottle = N Imposta il numero massimo di connessioni al secondo alla porta SMTP su N.

Negli alias, il primo carattere di un nome può essere una barra verticale ("|") per causare l'interpretazione del resto del nome come comando per reindirizzare la posta. Potrebbe essere necessario citare il nome per impedire a sendmail di sopprimere gli spazi vuoti tra gli argomenti. Ad esempio, un alias comune è:

msg: "| / usr / bin / msgs -s"

Gli alias possono anche avere la sintassi ": include: nomefile" per chiedere a sendmail di leggere il file indicato per un elenco di destinatari. Ad esempio, un alias come:

poeti: ": include: /usr/local/lib/poets.list"

leggerebbe /usr/local/lib/poets.list per l'elenco di indirizzi che compongono il gruppo.

Stato di uscita

Sendmail restituisce uno stato di uscita che descrive ciò che ha fatto. I codici di uscita sono elencati di seguito e definiti in <sysexits.h>.

EX_OK Completamento riuscito su tutti gli indirizzi.
EX_NOUSER Nome utente non riconosciuto.
EX_UNAVAILABLE Catchall significa che le risorse necessarie non erano disponibili.
EX_SYNTAX Errore di sintassi nell'indirizzo.
EX_SOFTWARE Errore interno del software, inclusi argomenti non validi.
EX_OSERR Errore temporaneo del sistema operativo, ad esempio "impossibile fork".
EX_NOHOST Nome host non riconosciuto.
EX_TEMPFAIL Il messaggio non può essere inviato immediatamente, ma è stato messo in coda.

Invocazioni alternative

Se invocato come newalias, sendmail ricostruirà il database alias.

Se invocato come mailq, sendmail stamperà il contenuto della coda di posta.

Se invocato come hoststat, sendmail stamperà il database di stato host persistente.

Se invocato come purgestat, sendmail eliminerà le voci scadute dal database di stato host persistente.

Se invocato come smtpd, sendmail fungerà da demone, come se fosse specificata l'opzione -bd.

File

Ad eccezione del file /etc/mail/sendmail.cf stesso, i seguenti percorsi sono tutti specificati in /etc/mail/sendmail.cf. Pertanto, questi valori dovrebbero essere considerati solo approssimazioni.

/ etc / mail / aliases dati non elaborati per nomi di alias
/etc/mail/aliases.db database di nomi alias
/etc/mail/sendmail.cf file di configurazione
/ Etc / mail / fileguida file di aiuto
/ etc / mail / statistiche statistiche raccolte
/ Var / spool / mqueue / * file temporanei

Esempi

sendmail [e-mail protetta]

sendmail leggerà l'e-mail dall'input standard e tenterà di inviare l'e-mail quando si inserisce un singolo punto (".") su una nuova riga e si preme Invio. Ad esempio, dopo aver eseguito il comando precedente, è possibile digitare:

Da: [e-mail protetta] A: [e-mail protetta] Ciao, questo è il mio messaggio e te lo sto inviando! .

e sendmail tenterà di inviarlo.

Comandi correlati

biff - Ricevi notifiche dettagliate di posta elettronica dalla riga di comando.mail - Leggi, componi e gestisci mail.mailx - Elabora messaggi di posta.newalias - Installa new elm aliases.pine - Un client per l'utilizzo di posta e newsgroup.

#goog-gt-tt {display:none !important;}.goog-te-banner-frame {display:none !important;}.goog-te-menu-value:hover {text-decoration:none !important;}body {top:0 !important;}#gtranslate_element {display:none!important;}

var gt_not_translated_list = ["mailq [-v]","hoststat","purgestat","smtpd","-Btype","-ba","-bd","-bH","-bi","-bp","-bP","-bs","-Cfile","-Ffullname","-fname","-L tag","-N dsn","-pprotocol","-qf","-qGname","-rname","HoldExpensive","SaveFromLine","IgnoreDots","SendMimeErrors","CheckAliases","OldStyleHeaders","ForkEachJob","SevenBitInput","EX_OK","EX_NOUSER","EX_UNAVAILABLE","EX_SYNTAX","EX_SOFTWARE","EX_OSERR","EX_NOHOST","EX_TEMPFAIL","/etc/mail/aliases.db","/etc/mail/sendmail.cf"];
document.cookie = "googtrans=/en/it; domain=.balogs.xyz";
document.cookie = "googtrans=/en/it";
function GTranslateElementInit() {new google.translate.TranslateElement({pageLanguage: 'en',layout: google.translate.TranslateElement.InlineLayout.SIMPLE,autoDisplay: false,multilanguagePage: true}, 'gtranslate_element');}


Pagine utili:

Informazioni sul formato .ai
Informazioni sul formato .do

Lascia un commento