Difference between revisions of "Postfix: smtp-sink"

From OnnoWiki
Jump to navigation Jump to search
(New page: SMTP-SINK(1) SMTP-SINK(1) NAME smtp-sink - parallelized SMTP/LMTP test server SYNOPSIS smtp-sink [options] [inet:][host...)
 
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
−
SMTP-SINK(1)                                                      SMTP-SINK(1)
+
Postfix sudah menyediakan smtp-sink untuk mentest postfix dalam mengirimkan e-mail dalam jumlah besar.
  
−
NAME
 
−
      smtp-sink - parallelized SMTP/LMTP test server
 
  
−
SYNOPSIS
+
==Menjalankan==
−
      smtp-sink [options] [inet:][host]:port backlog
 
  
−
      smtp-sink [options] unix:pathname backlog
+
Pertama-tama sinkronkan waktu di kedua mesin
  
−
DESCRIPTION
+
  ntpdate pool.ntp.org
−
      smtp-sink listens  on  the named host (or address) and port. It takes
 
−
      SMTP messages from the network and throws them away.  The purpose is to
 
−
      measure client performance, not protocol compliance.
 
  
−
      smtp-sink may also be configured to capture each mail delivery transac-
 
−
      tion to file. Since  disk  latencies  are  large  compared  to  network
 
−
      delays,  this  mode  of operation can reduce the maximal performance by
 
−
      several orders of magnitude.
 
  
−
      Connections  can  be  accepted  on  IPv4  or  IPv6  endpoints,  or  on
+
Setup SMTP listenser di port 25 (misalnya di localhost)
−
      UNIX-domain  sockets.  IPv4 and IPv6 are the default.  This program is
 
−
      the complement of the smtp-source(1) program.
 
  
−
      Note: this is an unsupported test program. No attempt is made to  main-
 
−
      tain compatibility between successive versions.
 
  
−
      Arguments:
+
smtp-sink -c localhost:25 1000
  
−
      -4    Support  IPv4  only.  This  option has no effect when Postfix is
 
−
              built without IPv6 support.
 
  
−
      -6    Support IPv6 only. This option is not available when Postfix  is
+
Bisa menggunakan postfix untuk mengirim atau dengan smtp-source.
−
              built without IPv6 support.
 
  
−
      -8    Do not announce 8BITMIME support.
+
  time smtp-source -s 20 -l 5120 -m 100 -c 100 -f sender@example.com -t recipient@example.com localhost:25
−
 
 
−
      -a    Do not announce SASL authentication support.
 
−
 
 
−
      -A delay
 
−
              Wait delay  seconds after responding to DATA, then abort prema-
 
−
              turely with a 550 reply status.  Do not read further input  from
 
−
              the  client;  this  is  an attempt to block the client before it
 
−
              sends ".".  Specify a zero delay value to abort immediately.
 
−
 
 
−
      -b soft-bounce-reply
 
−
              Use soft-bounce-reply for soft reject  responses.  The  default
 
−
              reply is "450 4.3.0 Error: command failed".
 
−
 
 
−
      -B hard-bounce-reply
 
−
              Use  hard-bounce-reply  for  hard reject responses.  The default
 
−
              reply is "500 5.3.0 Error: command failed".
 
−
 
 
−
      -c    Display running counters that are updated whenever an SMTP  ses-
 
−
              sion  ends, a QUIT command is executed, or when "." is received.
 
−
 
 
−
      -C    Disable XCLIENT support.
 
−
 
 
−
      -d dump-template
 
−
              Dump each mail transaction to a single-message file  whose  name
 
−
              is  created  by  expanding the dump-template via strftime(3) and
 
−
              appending  a  pseudo-random  hexadecimal  number  (example:
 
−
              "%Y%m%d%H/%M."  expands  into "2006081203/05.809a62e3").  If the
 
−
              template contains "/" characters, missing directories  are  cre-
 
−
              ated automatically.  The message dump format is described below.
 
−
 
 
−
              Note: this option keeps one capture file  open  for  every  mail
 
−
              transaction in progress.
 
−
 
 
−
      -D dump-template
 
−
              Append mail transactions to a multi-message dump file whose name
 
−
              is created by expanding the dump-template via  strftime(3).  If
 
−
              the  template  contains  "/" characters, missing directories are
 
−
              created automatically.  The message  dump  format  is  described
 
−
              below.
 
−
 
 
−
              Note:  this  option  keeps  one capture file open for every mail
 
−
              transaction in progress.
 
−
 
 
−
      -e    Do not announce ESMTP support.
 
−
 
 
−
      -E    Do not announce ENHANCEDSTATUSCODES support.
 
−
 
 
−
      -f command,command,...
 
−
              Reject the specified commands with  a  hard  (5xx)  error  code.
 
−
              This option implies -p.
 
−
 
 
−
              Examples  of commands are CONNECT, HELO, EHLO, LHLO, MAIL, RCPT,
 
−
              VRFY, DATA, ., RSET, NOOP, and QUIT. Separate command  names  by
 
−
              white  space  or  commas,  and use quotes to protect white space
 
−
              from the shell. Command names are case-insensitive.
 
−
 
 
−
      -F    Disable XFORWARD support.
 
−
 
 
−
      -h hostname
 
−
              Use hostname in the SMTP greeting, in the HELO response, and  in
 
−
              the EHLO response. The default hostname is "smtp-sink".
 
−
 
 
−
      -H delay
 
−
              Delay  the  first  read  operation after receiving DATA (time in
 
−
              seconds). Combine with a large test message and a small TCP win-
 
−
              dow  size  (see  the  -T  option)  to  test  the  Postfix client
 
−
              write_wait() implementation.
 
−
 
 
−
      -L    Enable LMTP instead of SMTP.
 
−
 
 
−
      -m count (default: 256)
 
−
              An upper bound on the maximal number of simultaneous connections
 
−
              that  smtp-sink will handle. This prevents the process from run-
 
−
              ning out of  file  descriptors.  Excess  connections  will  stay
 
−
              queued in the TCP/IP stack.
 
−
 
 
−
      -M count
 
−
              Terminate after receiving count messages.
 
−
 
 
−
      -n count
 
−
              Terminate after count sessions.
 
−
 
 
−
      -N    Do not announce support for DSN.
 
−
 
 
−
      -p    Do not announce support for ESMTP command pipelining.
 
−
 
 
−
      -P    Change  the server greeting so that it appears to come through a
 
−
              CISCO PIX system. Implies -e.
 
−
 
 
−
      -q command,command,...
 
−
              Disconnect (without replying) after receiving one of the  speci-
 
−
              fied commands.
 
−
 
 
−
              Examples  of commands are CONNECT, HELO, EHLO, LHLO, MAIL, RCPT,
 
−
              VRFY, DATA, ., RSET, NOOP, and QUIT. Separate command  names  by
 
−
              white  space  or  commas,  and use quotes to protect white space
 
−
              from the shell. Command names are case-insensitive.
 
−
 
 
−
      -Q command,command,...
 
−
              Send a 421 reply and disconnect after receiving one of the spec-
 
−
              ified commands.
 
−
 
 
−
              Examples  of commands are CONNECT, HELO, EHLO, LHLO, MAIL, RCPT,
 
−
              VRFY, DATA, ., RSET, NOOP, and QUIT. Separate command  names  by
 
−
              white  space  or  commas,  and use quotes to protect white space
 
−
              from the shell. Command names are case-insensitive.
 
−
 
 
−
      -r command,command,...
 
−
              Reject the specified commands with  a  soft  (4xx)  error  code.
 
−
              This option implies -p.
 
−
 
 
−
              Examples  of commands are CONNECT, HELO, EHLO, LHLO, MAIL, RCPT,
 
−
              VRFY, DATA, ., RSET, NOOP, and QUIT. Separate command  names  by
 
−
              white  space  or  commas,  and use quotes to protect white space
 
−
              from the shell. Command names are case-insensitive.
 
−
 
 
−
      -R root-directory
 
−
              Change the process root directory  to  the  specified  location.
 
−
              This  option  requires  super-user  privileges.  See also the -u
 
−
              option.
 
−
 
 
−
      -s command,command,...
 
−
              Log the named commands to syslogd.
 
−
 
 
−
              Examples of commands are CONNECT, HELO, EHLO, LHLO, MAIL,  RCPT,
 
−
              VRFY,  DATA,  ., RSET, NOOP, and QUIT. Separate command names by
 
−
              white space or commas, and use quotes  to  protect  white  space
 
−
              from the shell. Command names are case-insensitive.
 
−
 
 
−
      -S start-string
 
−
              An  optional  string  that  is prepended to each message that is
 
−
              written to a dump file (see the  dump  file  format  description
 
−
              below).  The  following  C  escape  sequences  are supported: \a
 
−
              (bell), \b (backspace), \f (formfeed), \n  (newline),  \r  (car-
 
−
              riage  return), \t (horizontal tab), \v (vertical tab), \ddd (up
 
−
              to three octal digits) and \\ (the backslash character).
 
−
 
 
−
      -t timeout (default: 100)
 
−
              Limit the time for receiving a command or  sending  a  response.
 
−
              The time limit is specified in seconds.
 
−
 
 
−
      -T windowsize
 
−
              Override  the default TCP window size. To work around broken TCP
 
−
              window scaling implementations, specify a value > 0 and < 65536.
 
−
 
 
−
      -u username
 
−
              Switch  to  the specified user privileges after opening the net-
 
−
              work socket and optionally changing the process root  directory.
 
−
              This  option  is  required when the process runs with super-user
 
−
              privileges. See also the -R option.
 
−
 
 
−
      -v    Show the SMTP conversations.
 
−
 
 
−
      -w delay
 
−
              Wait delay seconds before responding to a DATA command.
 
−
 
 
−
      -W command:delay[:odds]
 
−
              Wait delay seconds before responding to  command.   If  odds  is
 
−
              also  specified  (a  number  between 1-99 inclusive), wait for a
 
−
              random multiple of delay. The random multiplier is equal to  the
 
−
              number of times the program needs to roll a dice with a range of
 
−
              0..99 inclusive, before the dice produces a result greater  than
 
−
              or equal to odds.
 
−
 
 
−
      [inet:][host]:port
 
−
              Listen  on  network  interface host (default: any interface) TCP
 
−
              port port. Both host and port may be  specified  in  numeric  or
 
−
              symbolic form.
 
−
 
 
−
      unix:pathname
 
−
              Listen on the UNIX-domain socket at pathname.
 
−
 
 
−
      backlog
 
−
              The  maximum length the queue of pending connections, as defined
 
−
              by the listen(2) system call.
 
−
 
 
−
DUMP FILE FORMAT
 
−
      Each dumped message contains a sequence of text lines, terminated  with
 
−
      the newline character. The sequence of information is as follows:
 
−
 
 
−
      o      The optional string specified with the -S option.
 
−
 
 
−
      o      The smtp-sink generated headers as documented below.
 
−
 
 
−
      o      The message header and body as received from the SMTP client.
 
−
 
 
−
      o      An empty line.
 
−
 
 
−
      The format of the smtp-sink generated headers is as follows:
 
−
 
 
−
      X-Client-Addr: text
 
−
              The  client  IP address without enclosing []. An IPv6 address is
 
−
              prefixed with "ipv6:". This record is always present.
 
−
 
 
−
      X-Client-Proto: text
 
−
              The client protocol: SMTP, ESMTP or LMTP. This record is  always
 
−
              present.
 
−
 
 
−
      X-Helo-Args: text
 
−
              The  arguments of the last HELO or EHLO command before this mail
 
−
              delivery transaction. This record is present only if the  client
 
−
              sent  a  recognizable  HELO or EHLO command before the DATA com-
 
−
              mand.
 
−
 
 
−
      X-Mail-Args: text
 
−
              The arguments of the MAIL command that started this mail  deliv-
 
−
              ery transaction. This record is present exactly once.
 
−
 
 
−
      X-Rcpt-Args: text
 
−
              The  arguments  of  an  RCPT  command  within this mail delivery
 
−
              transaction. There is one record for each RCPT command, and they
 
−
              are in the order as sent by the client.
 
−
 
 
−
      Received: text
 
−
              A  message  header  for compatibility with mail processing soft-
 
−
              ware. This three-line header marks the end of the  headers  pro-
 
−
              vided by smtp-sink, and is formatted as follows:
 
−
 
 
−
              from helo ([addr])
 
−
                    The  HELO or EHLO command argument and client IP address.
 
−
                    If the client did not send HELO or EHLO,  the  client  IP
 
−
                    address is used instead.
 
−
 
 
−
              by host (smtp-sink) with proto id random;
 
−
                    The  hostname  specified  with  the -h option, the client
 
−
                    protocol (see X-Client-Proto above), and the  pseudo-ran-
 
−
                    dom portion of the per-message capture file name.
 
−
 
 
−
              time-stamp
 
−
                    A time stamp as defined in RFC 2822.
 
−
 
 
−
SEE ALSO
 
−
      smtp-source(1), SMTP/LMTP message generator
 
−
 
 
−
LICENSE
 
−
      The Secure Mailer license must be distributed with this software.
 
−
 
 
−
AUTHOR(S)
 
−
      Wietse Venema
 
−
      IBM T.J. Watson Research
 
−
      P.O. Box 704
 
−
      Yorktown Heights, NY 10598, USA
 
  
 +
real    0m0.239s
 +
user    0m0.000s
 +
sys    0m0.040s
  
  

Latest revision as of 17:26, 8 June 2015

Postfix sudah menyediakan smtp-sink untuk mentest postfix dalam mengirimkan e-mail dalam jumlah besar.


Menjalankan

Pertama-tama sinkronkan waktu di kedua mesin

ntpdate pool.ntp.org


Setup SMTP listenser di port 25 (misalnya di localhost)


smtp-sink -c localhost:25 1000


Bisa menggunakan postfix untuk mengirim atau dengan smtp-source.

time smtp-source -s 20 -l 5120 -m 100 -c 100 -f sender@example.com -t recipient@example.com localhost:25
real    0m0.239s
user    0m0.000s
sys     0m0.040s


Referensi