⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1417.html

📁 著名的linux英雄站点的文档打包
💻 HTML
📖 第 1 页 / 共 5 页
字号:
</tbody></table>
<p>&nbsp;</p>
<h2><a name="a.7.4"></a>7.4.&nbsp; 运行</h2>
<p>  启动命令如下:</p>
<table border="0" width="100%" bgcolor="#ccffcc">
  <tbody><tr> 
    <td> <p>[root@mail postfix]# <span class="type">/usr/sbin/postfix start</span></p></td>
  </tr>
</tbody></table>
<h2><a name="a.7.5"></a>7.5.&nbsp; 测试Postfix</h2>
<p>  启动Postfix后,首先检查日志/var/log/messages有无错误信息,然后检查进程,应该有如下进程存在:检查端口及进程:</p>
<table border="0" width="100%" bgcolor="#ccffcc">
  <tbody><tr> 
    <td> <p>[root@mail postfix]#<font color="#ff0000"> </font><span class="type">pstree 
        |grep master</span></p>
      <p>&nbsp;</p>
      <p>|-master-+-pickup</p>
      <p>&nbsp;</p></td>
  </tr>
</tbody></table>
<p>  接着检查端口,应该有如下端口打开:</p>
<table border="0" width="100%" bgcolor="#ccffcc">
  <tbody><tr> 
    <td> <p>[root@mail postfix]# <span class="type">netstat -an |grep LISTEN</span></p>
      <p>&nbsp;</p>
      <p>tcp  0  0 0.0.0.0:25  0.0.0.0:*  LISTEN</p>
      <p>&nbsp;</p></td>
  </tr>
</tbody></table>
<p>  再检测SMTP服务是否正常:</p>
<table border="0" width="100%" bgcolor="#ccffcc">
  <tbody><tr> 
    <td> <p>[root@mail postfix]# <span class="type">telnet localhost 25</span></p>
      <p>Trying 127.0.0.1...<br>
        Connected to localhost.<br>
        Escape character is '^]'.<br>
        220 mail.cngnu.org ESMTP Postfix<br>
        <span class="type">QUIT</span><br>
        221 Bye<br>
        Connection closed by foreign host.</p></td>
  </tr>
</tbody></table>
<p>  使用如下命令测试postfix的SMTP的认证(这里仅测试了“virtualuser@cngnu.org”,“trueuser”请自行测试):</p>
<p>  PLAIN认证方式:</p>
<table border="0" width="100%" bgcolor="#ccffcc">
  <tbody><tr> 
    <td> <p>[root@mail postfix]# <font color="#ff0000">perl -MMIME::Base64 -e 
        \</font></p>
      <p><font color="#ff0000">&gt; 'print encode_base64("virtualuser\@cngnu.org\000virtualuser\@cngnu.org\000testpw");'</font><br>
        dmlydHVhbHVzZXJAY25nbnUub3JnAHZpcnR1YWx1c2VyQGNuZ251Lm9yZwB0ZXN0cHc=</p>
      <p>&nbsp;</p>
      <p>[root@mail postfix]# <span class="type">telnet localhost 25</span></p>
      <p>Trying 127.0.0.1...<br>
        Connected to localhost.<br>
        Escape character is '^]'.<br>
        220 mail.cngnu.org ESMTP Postfix</p>
      <p class="type">EHLO cngnu</p>
      <p>250-mail.cngnu.org</p>
      <p>250-PIPELINING</p>
      <p>250-SIZE 10240000</p>
      <p>250-VRFY</p>
      <p>250-ETRN</p>
      <p>250-AUTH LOGIN PLAIN</p>
      <p>250-AUTH=LOGIN PLAIN</p>
      <p></p>
      <p>250-XVERP</p>
      <p>250 8BITMIME</p>
      <p class="type">AUTH PLAIN dmlydHVhbHVzZXJAY25nbnUub3JnAHZpcnR1YWx1c2VyQGNuZ251Lm9yZwB0ZXN0cHc==</p>
      <p>235 Authentication successful</p>
      <p class="type">QUIT</p>
      <p>221 Bye</p>
      <p>Connection closed by foreign host.</p>
      <p>&nbsp;</p>
      <p>[root@mail postfix]# <font color="#ff0000">perl -MMIME::Base64 -e \</font></p>
      <p><font color="#ff0000">&gt; 'print encode_base64("trueuser\000trueuser\000testpw");'</font><br>
  dHJ1ZXVzZXIAdHJ1ZXVzZXIAdGVzdHB3</p>
      <p>&nbsp;</p></td>
  </tr>
</tbody></table>
<p>  LOGIN认证方式:</p>
<table border="0" width="100%" bgcolor="#ccffcc">
  <tbody><tr> 
    <td> <p>[root@mail postfix]# <font color="#ff0000">perl -MMIME::Base64 -e 
        \</font></p>
      <p><font color="#ff0000">&gt; 'print encode_base64("virtualuser\@cngnu.org");'</font></p>
      <p>dmlydHVhbHVzZXJAY25nbnUub3Jn</p>
      <p>[root@mail postfix]# <font color="#ff0000">perl -MMIME::Base64 -e \</font></p>
      <p><font color="#ff0000">&gt; 'print encode_base64("testpw");'</font></p>
      <p>dGVzdHB3</p>
      <p>&nbsp;</p>
      <p>[root@mail postfix]# <span class="type">telnet localhost 25</span></p>
      <p>Trying 127.0.0.1...<br>
        Connected to localhost.<br>
        Escape character is '^]'.<br>
        220 mail.cngnu.org ESMTP Postfix</p>
      <p class="type">EHLO cngnu</p>
      <p>250-mail.cngnu.org</p>
      <p>250-PIPELINING</p>
      <p>250-SIZE 10240000</p>
      <p>250-VRFY</p>
      <p>250-ETRN</p>
      <p>250-AUTH LOGIN PLAIN</p>
      <p>250-AUTH=LOGIN PLAIN</p>
      <p></p>
      <p>250-XVERP</p>
      <p>250 8BITMIME</p>
      <p class="type">AUTH LOGIN</p>
      <p><i>3</i>34 VXNlcm5hbWU6</p>
      <p class="type">dmlydHVhbHVzZXJAY25nbnUub3Jn</p>
      <p>334 UGFzc3dvcmQ6</p>
      <p class="type">dGVzdHB3</p>
      <p>235 Authentication successful</p>
      <p class="type">QUIT</p>
      <p>221 Bye</p>
      <p>Connection closed by foreign host.</p>
      <p>&nbsp;</p>
      <p>[root@mail postfix]# <font color="#ff0000">perl -MMIME::Base64 -e \</font></p>
      <p><font color="#ff0000">&gt; 'print encode_base64("trueuser");'</font></p>
      <p>dHJ1ZXVzZXI=</p>
      <p>[root@mail postfix]# <font color="#ff0000">perl -MMIME::Base64 -e \</font></p>
      <p><font color="#ff0000">&gt; 'print encode_base64("testpw");'</font></p>
      <p>dGVzdHB3</p>
      <p>&nbsp;</p></td>
  </tr>
</tbody></table>
<p>  此时,由于还没有安装Cyrus-IMAP以及创建邮箱,所以还不能提交邮件,请继续下一步。</p>
<p>  这里使用Perl里面的MIME::Base64模块(如果需要安装:perl -MCPAN -e 'install
MIME::Base64;')来取得这个验证串:perl -MMIME::Base64 -e 'print
base64_encode("用户名\000用户名\000密码");'来得到MIME-Base64编码的验证串(“\000”是八进制的ASCII
(0)字符)。此外,你也可以使用mmencode来生成,mmencode可以在metamail这个包里面找到。</p>
<h1><a name="a.8"></a>8.&nbsp; 安装Cyrus-IMAP</h1>
<h2><a name="a.8.1"></a>8.1.&nbsp; 下载</h2>
<p>  <a href="javascript:if(confirm('http://asg.web.cmu.edu/cyrus/download/  \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address.  \n\nDo you want to open it from the server?'))window.location='http://asg.web.cmu.edu/cyrus/download/'" tppabs="http://asg.web.cmu.edu/cyrus/download/">http://asg.web.cmu.edu/cyrus/download/</a></p>
<table border="0" width="100%" bgcolor="#ccffcc">
  <tbody><tr> 
    <td> <p>[root@mail postfix]# <span class="type">cd /usr/src</span></p>
      <p>[root@mail src]# <span class="type">wget <a href="javascript:if(confirm('ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-imapd-2.1.16.tar.gz  \n\nThis file was not retrieved by Teleport Pro, because it did not meet the project\'s file type specifications.  \n\nDo you want to open it from the server?'))window.location='ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-imapd-2.1.16.tar.gz'" tppabs="ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-imapd-2.1.16.tar.gz">ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-imapd-2.1.16.tar.gz</a> 
        </span></p></td>
  </tr>
</tbody></table>
<h2><a name="a.8.2"></a>8.2.&nbsp; 编译与安装</h2>
<p>  在RedHat系列的Linux中,其Kerberos的头文件不在标准的地方,所以需要在编译配置前用env命令指定。此外取消对ucdsnmp的支持:</p>
<table border="0" width="100%" bgcolor="#ccffcc">
  <tbody><tr> 
    <td> <p>[root@mail src]# <span class="type">tar -zxf cyrus-imapd-2.1.16.tar.gz</span></p>
      <p>[root@mail src]# <span class="type">cd cyrus-imapd-2.1.16</span></p>
      <p>&nbsp;</p>
      <p>[root@mail cyrus-imapd-2.1.16]# <span class="type">env CPPFLAGS=-I/usr/kerberos/include
        \ </span></p>
      <p>&gt;<span class="type"> ./configure --with-cyrus-prefix=/usr/cyrus 
          \</span></p>
      <p>&gt; <span class="type">--with-sasl=/usr/lib/sasl2 --with-auth=unix
           \ </span></p>
      <p>&gt; <font color="#ff0000">--without-ucdsnmp --with-krb=/usr/kerberos</font></p>
      <p>&nbsp;</p>
      <p>[root@mail cyrus-imapd-2.1.16]# <span class="type">make depend</span></p>
      <p>[root@mail cyrus-imapd-2.1.16]# <span class="type">make all CFLAGS=-O</span></p>
      <p>[root@mail cyrus-imapd-2.1.16]# <span class="type">make install</span> 
      </p>
    </td>
  </tr>
</tbody></table>
<p>  如果编译时提示没有找到com_err.h,请复制当前目录的et目录下面的com_err.h到/usr/include:</p>
<table border="0" width="100%" bgcolor="#ccffcc">
  <tbody><tr> 
    <td> <p>[root@mail cyrus-imapd-2.1.16]# <span class="type">cp et/com_err.h 
        /usr/include </span></p>
    </td>
  </tr>
</tbody></table>
<p>&nbsp;</p>
<p>  Cyrus-IMAP的安装脚本有问题,cyradm(现在使用的是Perl版本,原来的TCL版本不再支持)所需要的perl模块被安装到一些不在Perl的标准@INC的目录里,需要手工安装。</p>
<p>&nbsp;</p>
<table border="0" width="100%" bgcolor="#ccffcc">
  <tbody><tr> 
    <td> <p>[root@mail cyrus-imapd-2.1.16]# <span class="type">cd perl/imap</span></p>
      <p>[root@mail imap]# <span class="type">perl Makefile.PL</span></p>
      <p>[root@mail imap]# <span class="type">make install</span></p>
    </td>
  </tr>
</tbody></table>
<p>&nbsp;</p>
<h2><a name="a.8.3"></a>8.3.&nbsp; 配置</h2>
<p>  创建主配置文件/etc/cyrus.conf:</p>
<table border="0" width="100%" bgcolor="#ccffcc">
  <tbody><tr> 
    <td> <p>[root@mail imap]# <span class="type">cd ../..</span></p>
        
      <p>[root@mail cyrus-imapd-2.1.16]# <span class="type">cp master/conf/small.conf 
        /etc/cyrus.conf</span></p>
    </td>
  </tr>
</tbody></table>
<p>  添加cyrus-imap的管理账号cyrus,并设置密码为“cyrus”(实际应用中可以使用更加复杂的密码),但是没有指定有效的SHELL,以防止使用它来登录:</p>
<table border="0" width="100%" bgcolor="#ccffcc">
  <tbody><tr> 
    <td> <p>[root@mail cyrus-imapd-2.1.16]# <span class="type">useradd -g mail
           -M -s/no/shell -d/var/imap cyrus</span></p>
      <p>[root@mail cyrus-imapd-2.1.16]# <span class="type">passwd cyrus</span></p>
      <p>Changing password for user cyrus</p>
      <p>New password: <span class="type">cyrus</span></p>
      <p>BAD PASSWORD: it it too short</p>
      <p>Retype new password: <span class="style2">cyrus</span></p>
      <p>passwd: all authentocation tokens updated successfully</p></td>
  </tr>
</tbody></table>
<p>&nbsp;</p>
<p>  创建IMAP配置文件/etc/imapd.conf,管理员是cyrus:</p>
<table border="0" width="100%" bgcolor="#ccffcc">
  <tbody><tr> 
    <td> <p>[root@mail cyrus-imapd-2.1.16]# <span class="type">vi /etc/imapd.conf</span></p></td>
  </tr>
</tbody></table>
<p>&nbsp;</p>
<table border="0" width="100%" bgcolor="#ccffcc">
  <tbody><tr> 
    <td bgcolor="#ffffcc"> 
      <p>configdirectory: /var/imap</p>
      <p>partition-default: /var/spool/imap</p>
      <p>admins: cyrus</p>
      <p>sasl_pwcheck_method: saslauthd</p>
      <p>sasl_mech_list: plain</p>
      <p>unixhierarchysep: yes</p>
      <p>altnamespace: yes</p>
    </td>
  </tr>
</tbody></table>
<p>  在/etc/imapd.conf中使用了unixhierarchysep

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -