{"id":11066,"date":"2026-04-24T16:23:18","date_gmt":"2026-04-24T07:23:18","guid":{"rendered":"https:\/\/www.k-in.co.jp\/niwakan\/?p=11066"},"modified":"2026-04-24T17:43:07","modified_gmt":"2026-04-24T08:43:07","slug":"macports%e3%81%ae%e5%88%9d%e6%9c%9f%e5%8c%96%e3%81%8b%e3%82%89%e3%80%81web-mail-server%e3%81%ae%e5%86%8d%e8%a8%ad%e5%ae%9a%ef%bc%88%e3%81%8a%e3%81%be%e3%81%91%ef%bc%89","status":"publish","type":"post","link":"https:\/\/www.k-in.co.jp\/niwakan\/archives\/2026\/04\/11066\/","title":{"rendered":"MacPorts\u306e\u521d\u671f\u5316\u304b\u3089\u3001Web &#038; Mail Server\u306e\u518d\u8a2d\u5b9a\uff08\u304a\u307e\u3051\uff09"},"content":{"rendered":"<p>\u30b3\u30f3\u30d5\u30a3\u30b0\u30d5\u30a1\u30a4\u30eb\u306e\u5185\u5bb9\u3067\u3059\u3002<br \/>\n\u4f7f\u3044\u9053\u304c\u3042\u308b\u304b\u3069\u3046\u304b\u2026\u2026\u3002<br \/>\n<!--more--><\/p>\n<p>clams.conf\u306e\u4e2d\u8eab\u3067\u3059\u3002<\/p>\n<pre class=\"height:300 lang:default decode:true\" title=\"\">% grep -v '^\\s*#' \/opt\/local\/etc\/clamd.conf | grep -v '^\\s*$' |grep -v '^Exclud'\r\nLogFile \/opt\/local\/var\/log\/clamav\/clamd.log\r\nLogFileMaxSize 2M\r\nLogTime yes\r\nLogClean yes          # \u5f8c\u65e5\u30b3\u30e1\u30f3\u30c8\u30a2\u30a6\u30c8\uff08\u3064\u307e\u308ano\uff09\u306b\u5909\u66f4\u4e88\u5b9a\uff08\u3042\u304f\u307e\u3067\u78ba\u8a8d\u7528\u3067\u3059\uff09\r\nLogVerbose yes        # \u5f8c\u65e5\u30b3\u30e1\u30f3\u30c8\u30a2\u30a6\u30c8\uff08\u3064\u307e\u308ano\uff09\u306b\u5909\u66f4\u4e88\u5b9a\uff08\u3042\u304f\u307e\u3067\u78ba\u8a8d\u7528\u3067\u3059\uff09\r\nLogRotate yes\r\nExtendedDetectionInfo yes\r\nPidFile \/opt\/local\/var\/run\/clamav\/clamd.pid\r\nTemporaryDirectory \/var\/tmp\r\nDatabaseDirectory \/opt\/local\/share\/clamav\r\nLocalSocket \/opt\/local\/var\/run\/clamav\/clamd.socket\r\nLocalSocketMode 666  # \u52d5\u304f\u69d8\u306a\u3089660\u3067\u554f\u984c\u306a\u3044\u3068\u601d\u3046\u3002\r\nMaxThreads 6\r\nMaxDirectoryRecursion 30\r\nFollowDirectorySymlinks yes\r\nUser _clamav\r\nForeground yes\r\nDetectPUA yes\r\nIncludePUA RAT\r\nIncludePUA Spy\r\nIncludePUA Server\r\nIncludePUA Script\r\nScanPE yes\r\nDisableCertCheck yes\r\nScanELF yes\r\nScanOLE2 yes\r\nScanPDF yes\r\nScanMail yes\r\nScanHTML yes\r\nScanArchive yes<\/pre>\n<p>\u8272\u3005\u5f04\u3063\u3066\u3001amavisd\u3068\u9023\u643a\u304c\u53d6\u308c\u306a\u304f\u3066\u60a9\u307f\u306b\u60a9\u3093\u3067\u3001Gemini\u3055\u3093\u3068\u5f04\u304f\u308a\u56de\u3057\u307e\u3057\u305f\u3002<br \/>\n\u3053\u308c\u304c\u305d\u306e\u7d50\u679c\u3002<br \/>\nLocalSocketMode 666<br \/>\n\u306f\u3001660\u3067\u826f\u3044\u6c17\u304c\u3059\u308b\u3002<br \/>\nScanXXX\u306f\u30c7\u30d5\u30a9\u30eb\u30c8\u3067yes\uff08HTML\u4ee5\u5916\uff09\u306a\u306e\u3067\u3001\u30b3\u30e1\u30f3\u30c8\u3092\u5916\u3055\u306a\u304f\u3066\u3082\u30b9\u30ad\u30e3\u30f3\u3059\u308b\u7b48\u3002<br \/>\nForeground yes<br \/>\n\u306f\u3001\u30b3\u30e1\u30f3\u30c8\u5316\u3059\u308b\u3068\u4e8c\u91cd\u306bdaemondo\u304c\u7acb\u3061\u4e0a\u304c\u3063\u3066\u3001pid\u3092\u53d6\u308a\u5408\u3063\u3061\u3083\u3046\u70ba\u306e\u82e6\u8089\u306e\u7b56\u3067\u3059\u3002<br \/>\n<strong>clamd.socket<\/strong>\u306f\u666e\u901a<strong>clamd.sock<\/strong>\u3067\u3059\u3088\u306d\u3002<br \/>\n\u4f55\u6545\u3053\u3046\u3057\u305f\u306e\u304b\u306f\u4e0d\u660e\u3002<br \/>\namavisd.conf\u306b\u5927\u4e8b\u306a\u3053\u3068\u304c\u66f8\u3044\u3066\u3042\u308a\u307e\u3057\u305f\u3002<\/p>\n<div style=\"background: #F2EAD4; padding: 15px; border: 0px solid #F2EAD4; border-radius: 10px; word-break: break-all;\"># # NOTE: run clamd under the same user as amavisd &#8211; or run it under its own<br \/>\n# #   uid such as clamav, add user clamav to the amavis group, and then add<br \/>\n# #   AllowSupplementaryGroups to clamd.conf;<br \/>\n# # NOTE: match socket name (LocalSocket) in clamav.conf to the socket name in<br \/>\n# #   this entry; when running chrooted one may prefer a socket under $MYHOME.<\/div>\n<p>clamd.conf\u3067\u898b\u308b\u3068\u3053\u308d\u306e\u30c7\u30d5\u30a9\u30eb\u30c8\u306eUser\u306fclamav\u3067\u3059\u3002<br \/>\n\u30c7\u30d5\u30a9\u30eb\u30c8\u3060\u3068clamd\u306f\u5b9f\u8cea\u52d5\u304d\u307e\u305b\u3093\u3002\uff08\u305d\u3093\u306auser\u5c45\u306a\u3044\u304b\u3089\uff09<br \/>\nMacPorts\u3067\u306eclamav\u306f\u3001_clamav:_clamav\u3067\u52d5\u304b\u3057\u307e\u3059\u3002<\/p>\n<p>freshclam.conf\u3082<br \/>\nDatabaseDirectory \/opt\/local\/share\/clamav<br \/>\n\u3068path\u3092\u5408\u308f\u305b\u3066\u304a\u308a\u307e\u3059\u3002<br \/>\n\u56e0\u307f\u306b\u3001\/Library\/LaunchDaemons\/org.macports.freshclam.plist\u306b\u306f\u3001<\/p>\n<pre class=\"height:300 lang:default decode:true\" title=\"\">       <key>StartInterval<\/key>\r\n       <integer>21600<\/integer><\/pre>\n<p>\u3068\u3042\u308a\u307e\u3059\u304c\u30016\u6642\u9593\u7f6e\u304d\u306b\u5b9f\u884c\u3057\u308d\u3068\u3044\u3046\u610f\u5473\u3060\u305d\u3046\u3067\u3059\u3002<\/p>\n<p>amavisd.conf\u306f\u4e00\u90e8\u3001\u66f8\u304d\u63db\u3048\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n<pre class=\"height:300 lang:default decode:true\" title=\"\">$log_level = 3;    # \u30ed\u30b0\u3092\u898b\u308b\u306e\u306b1\u3060\u3068\u4f59\u308a\u306b\u60c5\u5831\u304c\u5c11\u306a\u3044\u70ba\u30013\u306b\u3002\u4eca\u5f8c1\u306b\u623b\u3057\u307e\u3059\u3002\r\n\r\n$do_syslog = 0;    # syslog\u306b\u66f8\u304d\u51fa\u3055\u306a\u3044\u3002\r\n$logfile = \"\/opt\/local\/var\/log\/amavisd\/amavisd.log\";\r\n                   # log\u306b\u76f4\u63a5\u66f8\u304d\u51fa\u3059\u3002\uff08syslog\u306b\u6e21\u3059\u3068\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u3057\u3066\u304f\u308c\u306a\u304b\u3063\u305f\u70ba\uff09\r\n\r\n  \\&ask_daemon, [\"SCAN {}\\n\", \"\/opt\/local\/var\/run\/clamav\/clamd.socket\"],\r\n                   # \"SCAN {}\\n\" \u306e\u524d\u306b \"CONTSCAN {}\\n\"\u3001\"CONTSCAN {}\/\\n\"\u3068\u8a66\u3057\u3066\u3044\u307e\u3057\u305f\u3002\r\n                   # \u4eca\u306a\u3089\u3001 \"CONTSCAN {}\\n\"\u3067\u5341\u5206\u901a\u308a\u305d\u3046\u306a\u6c17\u304c\u3057\u307e\u3059\u3002<\/pre>\n<p>\u300c\u30e6\u30fc\u30b6\u30fc_clamav\u3092_amavis\u30b0\u30eb\u30fc\u30d7\u306b\u8ffd\u52a0\u300d\u3057\u3066\u304b\u3089\u3001\u300cclamd.conf\u306bAllowSupplementaryGroups\u3092\u8ffd\u52a0\u300d\u3068\u3057\u305f\u3089\u3001\u300cAllowSupplementaryGroups\u306f\u73fe\u5728\u4f7f\u308f\u308c\u3066\u3044\u307e\u305b\u3093\u3002\u7121\u304b\u3063\u305f\u3053\u3068\u306b\u306b\u3057\u307e\u3059\u300d\u307f\u305f\u3044\u306a\u3053\u3068\u8a00\u308f\u308c\u305f\u306e\u3067\u524a\u9664\u3057\u307e\u3057\u305f\u3002<\/p>\n<pre class=\"height:300 lang:default decode:true\" title=\"\">sudo dseditgroup -o edit -a _clamav -t user _amavis<\/pre>\n<p>\u3067\u3001_clamav\u304c_amavis\u306e\u30b0\u30eb\u30fc\u30d7\u306b\u8ffd\u52a0\u3055\u308c\u308b\u305d\u3046\u3067\u3059\u3002\uff08\u9006\u3058\u3083\u306a\u3044\u306e\uff1f\u3068\u601d\u3046\u306e\u3060\u304c\u3001\u3053\u308c\u3067\u52d5\u3044\u3066\u3044\u308b\uff09<\/p>\n<p>\u30cf\u30de\u3063\u305f\u6240\u306e\u3046\u3061\u306e\u4e00\u3064\u3002<br \/>\n\/etc\/dovecot\/users\u306b<\/p>\n<pre class=\"height:300 lang:default decode:true\" title=\"\">virusalert:{PLAIN}passwd:83:83::\/var\/tmp\/virusmails::<\/pre>\n<p>\u306e1\u884c\u3092\u300e\u5148\u306b\u300f\u66f8\u304d\u8fbc\u3093\u3067\u304b\u3089\u3001amavisd\u3092\u901a\u3059\u69d8\u306b\u3057\u3066\u304a\u304f\u306e\u304c\u5409\u3002<br \/>\n\u3046\u3093\u3001\u3053\u308c\u91cd\u8981\u3002\uff08\u60a9\u3093\u3060\u3082\u306e\u306a\u3041\uff09<\/p>\n<p>amavisd-new\u3068ClamAV\u7d61\u307f\u306f\u3053\u3093\u306a\u3082\u306e\u304b\u306a\u3002<br \/>\nClamSMTP\u306f\u3001\u4ee3\u308f\u308a\u306bamavisd-new\u304c\u3084\u3063\u3066\u304f\u308c\u3066\u3044\u308b\u306e\u3067\u4e0d\u8981\u3060\u305d\u3046\u3067\u3059\u3002\uff08\u3082\u3046\u6d88\u3057\u3061\u3083\u3063\u305f\uff09<\/p>\n<p>\u6700\u5f8c\u306b\u3001Gemini\u3055\u3093\u306b\u30a2\u30c9\u30d0\u30a4\u30b9\u8cb0\u3044\u306a\u304c\u3089\u3060\u3068\u3001\u7d50\u679c\u304c\u65e9\u304f\u51fa\u307e\u3059\u3002<br \/>\n\u4e00\u4eba\u3067\u30a6\u30b8\u30a6\u30b8\u3084\u3063\u3066\u3044\u308b\u3088\u308a\u3001\u6642\u9593\u306e\u639b\u304b\u308b\u30b3\u30f3\u30d1\u30a4\u30eb\u3067\u3082Gemini\u3055\u3093\u3068\u306e\u4f1a\u8a71\u3092\u697d\u3057\u307f\u306a\u304c\u3089\u306e\u6642\u9593\u306f\u904e\u3054\u3057\u6613\u304b\u3063\u305f\u3067\u3059\u3088\u3002<br \/>\n\u30a2\u30c9\u30d0\u30a4\u30b9\u304c\u30eb\u30fc\u30d7\u3057\u3066\u3057\u307e\u3063\u305f\u308a\u3001\u3064\u3044\u3064\u3044\u306elinux\u524d\u63d0\u3067\u306e\u5185\u5bb9\u3001bash\u4f7f\u3063\u3066\u306e\u4f8b\u6587\uff08tcsh\u4f7f\u3044\u3060\u3063\u3066\u306e\uff09\u3082\u7b11\u3063\u3066\u8a02\u6b63\u3067\u304d\u308b\u69d8\u306b\u306a\u308a\u307e\u3057\u305f\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u30b3\u30f3\u30d5\u30a3\u30b0\u30d5\u30a1\u30a4\u30eb\u306e\u5185\u5bb9\u3067\u3059\u3002 \u4f7f\u3044\u9053\u304c\u3042\u308b\u304b\u3069\u3046\u304b\u2026\u2026\u3002<\/p>\n","protected":false},"author":1,"featured_media":11048,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_crdt_document":"","footnotes":""},"categories":[115],"tags":[207,225],"class_list":["post-11066","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software","tag-amavisd-new","tag-clamav"],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/www.k-in.co.jp\/niwakan\/wp-content\/uploads\/2026\/04\/images.jpeg?fit=363%2C139&ssl=1","_links":{"self":[{"href":"https:\/\/www.k-in.co.jp\/niwakan\/wp-json\/wp\/v2\/posts\/11066","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.k-in.co.jp\/niwakan\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.k-in.co.jp\/niwakan\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.k-in.co.jp\/niwakan\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.k-in.co.jp\/niwakan\/wp-json\/wp\/v2\/comments?post=11066"}],"version-history":[{"count":4,"href":"https:\/\/www.k-in.co.jp\/niwakan\/wp-json\/wp\/v2\/posts\/11066\/revisions"}],"predecessor-version":[{"id":11072,"href":"https:\/\/www.k-in.co.jp\/niwakan\/wp-json\/wp\/v2\/posts\/11066\/revisions\/11072"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.k-in.co.jp\/niwakan\/wp-json\/wp\/v2\/media\/11048"}],"wp:attachment":[{"href":"https:\/\/www.k-in.co.jp\/niwakan\/wp-json\/wp\/v2\/media?parent=11066"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.k-in.co.jp\/niwakan\/wp-json\/wp\/v2\/categories?post=11066"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.k-in.co.jp\/niwakan\/wp-json\/wp\/v2\/tags?post=11066"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}