{"id":1469,"date":"2011-08-16T10:01:41","date_gmt":"2011-08-16T07:01:41","guid":{"rendered":"http:\/\/skeletor.org.ua\/?p=1469"},"modified":"2015-03-24T12:24:14","modified_gmt":"2015-03-24T10:24:14","slug":"exim-%d0%bc%d0%b0%d1%81%d1%81%d0%be%d0%b2%d0%b0%d1%8f-%d1%80%d0%b0%d1%81%d1%81%d1%8b%d0%bb%d0%ba%d0%b0","status":"publish","type":"post","link":"https:\/\/skeletor.org.ua\/?p=1469","title":{"rendered":"[exim] \u043c\u0430\u0441\u0441\u043e\u0432\u0430\u044f \u0440\u0430\u0441\u0441\u044b\u043b\u043a\u0430"},"content":{"rendered":"<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0437\u0430\u043c\u0435\u0442\u043a\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u043a\u0430\u043a \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c <strong>Exim<\/strong> \u0434\u043b\u044f \u043c\u0430\u0441\u0441\u043e\u0432\u043e\u0439 \u0440\u0430\u0441\u0441\u044b\u043b\u043a\u0438, \u0447\u0442\u043e \u0431\u044b \u043f\u0438\u0441\u044c\u043c\u0430 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u043b\u0438\u0441\u044c \u043e\u0447\u0435\u043d\u044c \u0431\u044b\u0441\u0442\u0440\u043e.<\/p>\n<p><strong><span style=\"color: #ff0000;\">1) \u0421\u043f\u0443\u043b, \u043b\u043e\u0433\u0438.<\/span><\/strong><\/p>\n<p>\u0421\u043f\u0443\u043b \u043f\u043e\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043d\u0430 <strong>SSD<\/strong> \u0438\u043b\u0438 \u043b\u0443\u0447\u0448\u0435 \u043d\u0430 <strong>RAM<\/strong>-\u0434\u0438\u0441\u043a. \u041b\u043e\u0433\u0438 \u043b\u0443\u0447\u0448\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0438\u043b\u0438 \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u0434\u043e \u043c\u0438\u043d\u0438\u043c\u0443\u043c\u0430<\/p>\n<p><code>no_message_logs<br \/>\nwrite_rejectlog=false<br \/>\n<\/code><br \/>\n\u0420\u0430\u0437\u0431\u0438\u0432\u0430\u0435\u043c \u043f\u0438\u0441\u044c\u043c\u0430 \u0432 \u0441\u043f\u0443\u043b\u0435 \u043f\u043e \u043f\u043e\u0434\u043f\u0430\u043f\u043a\u0430\u043c<\/p>\n<p><code>split_spool_directory = true<\/code><\/p>\n<p><!--more--><\/p>\n<p><strong><span style=\"color: #ff0000;\">2) \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438.<\/span><\/strong><\/p>\n<p>\u041d\u0435 \u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0435\u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e\u0439 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438. \u044d\u0442\u043e \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0442\u0430\u043a\u043e\u0433\u043e \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043c\u0430 \u043f\u0438\u0441\u0435\u043c:<\/p>\n<p><code>queue_only<br \/>\nqueue_run_max = 500<\/code><\/p>\n<p>\u0423\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0435\u043c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439:<\/p>\n<p><code>smtp_accept_max = 1000<br \/>\nsmtp_accept_max_nonmail = 100<br \/>\nsmtp_accept_max_per_connection = 500<br \/>\nsmtp_accept_max_per_host = 1000<br \/>\nsmtp_accept_queue_per_connection = 1000<br \/>\nsmtp_connect_backlog = 200<br \/>\nsmtp_receive_timeout = 5m<\/code><\/p>\n<p><strong><span style=\"color: #ff0000;\">3) \u041f\u0440\u043e\u0447\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b.<\/span><\/strong><\/p>\n<p><strong>exim<\/strong> \u0434\u0435\u043b\u0430\u0435\u0442 <strong>ident<\/strong> \u0437\u0430\u043f\u0440\u043e\u0441 \u043d\u0430 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u0438\u0441\u044c\u043c\u0430. \u0432\u044b\u043a\u043b\u044e\u0447\u0430\u0435\u043c.<\/p>\n<p><code>rfc1413_hosts =<br \/>\nrfc1413_query_timeout = 0s<\/code><\/p>\n<p>\u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b:<\/p>\n<p><code>bounce_return_size_limit = 100K<br \/>\ncallout_domain_negative_expire = 3h<br \/>\ncallout_domain_positive_expire = 1w<br \/>\ncallout_negative_expire = 2h<br \/>\ncallout_positive_expire = 1d<br \/>\ndaemon_startup_sleep = 30s<br \/>\ndelay_warning = 1d<br \/>\ndns_retrans = 0s<br \/>\nauto_thaw = 0s<br \/>\nlocal_scan_timeout = 1s<br \/>\nlookup_open_max = 25<br \/>\nmessage_body_visible = 500<br \/>\nmessage_size_limit = 50M<br \/>\nreceive_timeout = 0s<br \/>\nreceived_headers_max = 30<br \/>\nremote_max_parallel = 500<br \/>\nretry_data_expire = 1w<br \/>\nretry_interval_max = 1d<br \/>\n...<br \/>\nremote_smtp:<br \/>\n...<br \/>\n# plain text smtp \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u0447\u0435\u043c tls<br \/>\nhosts_avoid_tls=*<br \/>\n# \u043c\u0435\u043d\u044c\u0448\u0435 \u0442\u0430\u0439\u043c\u0430\u0443\u0442 - \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u0430\u0435\u0442\u0441\u044f \u043e\u0447\u0435\u0440\u0435\u0434\u044c<br \/>\nconnect_timeout = 10s<br \/>\n...<br \/>\nbegin retry<br \/>\n# \u043c\u0430\u043a\u0441. \u0432\u0440\u0435\u043c\u044f \u0436\u0438\u0437\u043d\u0438 \u043f\u0438\u0441\u044c\u043c\u0430 \u0432 \u043e\u0447\u0435\u0440\u0435\u0434\u0438 24h<br \/>\n* * F,2h,15m; G,24h,1h,1.5;<\/code><\/p>\n<p><strong><span style=\"color: #ff0000;\">4) \u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435.<\/span><\/strong><\/p>\n<p>\u0415\u0441\u043b\u0438 \u043d\u0435 \u0441 \u044d\u0442\u0438\u043c\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438 \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0434\u043e\u0441\u0442\u0438\u0447\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c \u0442\u0430\u043a\u043e\u0439 \u0441\u043a\u0440\u0438\u043f\u0442. \u041f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432 <strong>cron<\/strong> \u043d\u0430 \u0435\u0436\u0435\u043c\u0438\u043d\u0443\u0442\u043d\u044b\u0439 \u0437\u0430\u043f\u0443\u0441\u043a. \u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e <strong>LIMIT<\/strong> \u0434\u0435\u043b\u0430\u0435\u043c \u0441\u043e\u0440\u0430\u0437\u043c\u0435\u0440\u043d\u043e \u0438\u043c\u0435\u044e\u0449\u0435\u0439\u0441\u044f \u043f\u0430\u043c\u044f\u0442\u0438, \u043e\u0434\u043d\u0430 \u043a\u043e\u043f\u0438\u044f <strong>exim<\/strong> \u0436\u0440\u0435\u0442 \u043e\u043a\u043e\u043b\u043e <strong>30Mb<\/strong>.<\/p>\n<p><code>#!\/bin\/bash<br \/>\nPATH=\/usr\/local\/sbin:\/usr\/local\/bin:\/sbin:\/bin:\/usr\/sbin:\/usr\/bin<br \/>\nLIMIT=100<br \/>\nCOUNT=`pgrep exim | wc -l`<br \/>\necho $COUNT exims are running<br \/>\nif [ \"$COUNT\" -lt \"$LIMIT\" ]<br \/>\nthen<br \/>\necho starting new 10<br \/>\nfor i in `seq 10`; do exim -q &amp; done<br \/>\nelse<br \/>\necho doing nothing<br \/>\nfi<\/code><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0437\u0430\u043c\u0435\u0442\u043a\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u043a\u0430\u043a \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c Exim \u0434\u043b\u044f \u043c\u0430\u0441\u0441\u043e\u0432\u043e\u0439 \u0440\u0430\u0441\u0441\u044b\u043b\u043a\u0438, \u0447\u0442\u043e \u0431\u044b \u043f\u0438\u0441\u044c\u043c\u0430 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u043b\u0438\u0441\u044c \u043e\u0447\u0435\u043d\u044c \u0431\u044b\u0441\u0442\u0440\u043e. 1) \u0421\u043f\u0443\u043b, \u043b\u043e\u0433\u0438. \u0421\u043f\u0443\u043b \u043f\u043e\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043d\u0430 SSD \u0438\u043b\u0438 \u043b\u0443\u0447\u0448\u0435 \u043d\u0430 RAM-\u0434\u0438\u0441\u043a. \u041b\u043e\u0433\u0438 \u043b\u0443\u0447\u0448\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0438\u043b\u0438 \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u0434\u043e \u043c\u0438\u043d\u0438\u043c\u0443\u043c\u0430 no_message_logs write_rejectlog=false \u0420\u0430\u0437\u0431\u0438\u0432\u0430\u0435\u043c \u043f\u0438\u0441\u044c\u043c\u0430 \u0432 \u0441\u043f\u0443\u043b\u0435 \u043f\u043e \u043f\u043e\u0434\u043f\u0430\u043f\u043a\u0430\u043c split_spool_directory = true<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11,10],"tags":[],"class_list":["post-1469","post","type-post","status-publish","format-standard","hentry","category-mail","category-others"],"_links":{"self":[{"href":"https:\/\/skeletor.org.ua\/index.php?rest_route=\/wp\/v2\/posts\/1469","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/skeletor.org.ua\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/skeletor.org.ua\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/skeletor.org.ua\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/skeletor.org.ua\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1469"}],"version-history":[{"count":9,"href":"https:\/\/skeletor.org.ua\/index.php?rest_route=\/wp\/v2\/posts\/1469\/revisions"}],"predecessor-version":[{"id":4734,"href":"https:\/\/skeletor.org.ua\/index.php?rest_route=\/wp\/v2\/posts\/1469\/revisions\/4734"}],"wp:attachment":[{"href":"https:\/\/skeletor.org.ua\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1469"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/skeletor.org.ua\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1469"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/skeletor.org.ua\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1469"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}