欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

SquerrilMail介绍及安装配置 有大用

shiping1 的头像

SquerrilMail

Installation

  • 解压到服务器的 /var/www/ 目录:
Shell 命令:
# export VERSION='1.4.13'
# bzip2 -d squirrelmail-${VERSION}.tar.bz2     
# tar xf squirrelmail-${VERSION}.tar -C /var/www/
  • 设置权限:
Shell 命令:
# chown -R apache:apache /var/www/squirrelmail-${VERSION}/
# chmod -R 755 /var/www/squirrelmail-${VERSION}/
  • 创建目录,用于存放邮件附件等数据:
Shell 命令:
# mkdir /var/www/squirrelmail-${VERSION}/sm_{data,attach}
# chown apache:apache /var/www/squirrelmail-${VERSION}/sm_{data,attach}
# chmod 730 /var/www/squirrelmail-${VERSION}/sm_attach
  • 在 Apache 中创建配置文件:
文件: /etc/httpd/conf.d/squirrelmail.conf
Alias /squirrelmail "/var/www/squirrelmail-1.4.13/"
Alias /mail "/var/www/squirrelmail-1.4.13/"
Alias /webmail "/var/www/squirrelmail-1.4.13/"

这里为 SquirrelMail 设置了三个访问路径:

重启 Apache 后即可生效。

配置 SquirrelMail

SquirrelMail 为管理员提供了方便的配置工具(一个 Perl 脚本),运行之后显示的是这样的菜单:

Shell 命令:
# /var/www/squirrelmail-1.4.13/config/conf.pl

SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1.  Organization Preferences
2.  Server Settings
3.  Folder Defaults
4.  General Options
5.  Themes
6.  Address Books
7.  Message of the Day (MOTD)
8.  Plugins
9.  Database
10. Languages

D.  Set pre-defined settings for specific IMAP servers

C   Turn color on
S   Save data
Q   Quit

Command >>

输入菜单前的数字或字母即可进入对应的配置选项。

这里有几个参数需要修改:

  • Server Settings
    • Update IMAP Settings
      • IMAP Server(将 localhost 改成 '127.0.0.1')
      • SMTP Server(将 localhost 改成 '127.0.0.1')
    • Update SMTP Settings
      • SMTP Server(将 localhost 改成 '127.0.0.1')
      • SMTP Authentication(将 none 改为 'login')
  • General Options
    • Data Directory (设置为:/tmp/sm_data/)
    • Attachment Directory (设置为:/tmp/sm_attach/)
  • Languages
    • Default Language(设置为 zh_CN)
    • Default Charset(改成 gb2312,否则会导致邮件乱码)
  • Set pre-defined settings for specific IMAP servers (选择 dovecot)

Image: Tip.png 配置完成之后,可以使用 configtest.php 页面帮助检查设置是否正确:

Shell 命令:
http://your_server_ip/mail/src/configtest.php

如果没有错误的话,现在就可以登录 WebMail 了: http://your_server_ip/mail/ 

SquirrelMail i18n 支持

刚才已经安装和配置好了 SquirrelMail,但是界面还只是英文的,需要安装 Translations 以支持其它语言的界面显示。

 SquirrelMail 下载页面 下载需要的 translation。这里使用 all_locales-1.4.13-20071220.tar.gz,包含最多种语言的翻译,你也可以只下载单个语言的翻译包。

下载后将它解压,然后将解压出来的目录和文件复制到对应的目录即可:

Shell 命令:
# tar zxf all_locales-1.4.13-20071220.tar.gz

解压后在当前目录有一个 'install' 脚本,它会复制所有需要的文件:

Shell 命令:
# sh install
Please enter path to your squirrelmail installation:

在提示符下输入 SquirrelMail 的安装地址:

/var/www/squirrelmail-1.4.13/

到此,translations 的安装就完成了。再通过 SquirrelMail 的配置工具 'conf.pl' 来设置默认语言和默认的字符集:

Shell 命令:
# /var/www/squirrelmail-1.4.13/config/conf.pl

选择 'Languages' 一项,再设置以下两个参数:

  • Default Language(简体中文使用 'zh_CN',繁体中文用 'zh_TW')
  • Default Charset(简体中文用 'gb2312',繁体中文用 'big5')

Image: Warning.png SquirrelMail 里的 'zh_CN' 默认使用 'gb2312' 字符集,而 phpLDAPadmin 里所有属性的值都是用 'utf-8' 编码保存的,所以如果需要使用 LDAP 全局地址簿,则需要将 SquirrelMail 的 translation 文件的编码给转换成 'utf-8' 编码,否则看到的 LDAP 属性的值都将是乱码。
(我这里直接 设UTF-8 ,没有进行下面的转码)

 

这里以 'zh_CN' 为例,介绍如何使用 'iconv' 工具来转换字符集。

Shell 命令:
# cd /var/www/squirrelmail-1.4.13/locale/zh_CN/LC_MESSAGES/
# cp squirrelmail.po squirrelmail.po.bak
# iconv -f gb2312 -t utf-8 squirrelmail.po.bak >squirrelmail.po

编辑 /var/www/squirrelmail-1.4.13/locale/zh_CN/setup.php 文件,将文件里的 'gb2312' 改为 'utf-8':

文件: /var/www/html/mail/locale/zh_CN/setup.php
$languages['zh_CN']['CHARSET'] = 'utf-8';
$languages['zh_CN']['LOCALE']  = array('zh_CN.UTF8','zh_CN');

编辑 /var/www/squirrelmail-1.4.13/functions/i18n.php 文件,将文件里的 'gb2312' 改为 'utf-8':

文件: /var/www/html/mail/functions/i18n.php
$languages['zh_CN']['CHARSET'] = 'utf-8';

这样就可以了。

别忘了用 'conf.pl' 配置工具在 'Languages' 菜单里将一下参数改一下:

  • Default Charset (改为 'utf-8')

SquirrelMail 插件

SquirrelMail 有丰富的 Plugins,可以在 All Plugins 页面找到所有的 Plugins。

change_ldappass

change_ldappass 是提供给用户修改存储在 LDAP 里的邮箱密码的插件。

  •  'change_ldappass' 插件的主页下载最新版本,这里以 2.2-1.4.0 版本为例。
  • 解压缩,并复制到正确的位置:
Shell 命令:
# tar zxf change_ldappass-2.2-1.4.0.tar.gz
# cp -rf change_ldappass /var/www/html/mail/plugins/

# chown -R apache:apache /var/www/html/mail/plugins/change_ldappass
# chmod -R 755 /var/www/html/mail/plugins/change_ldappass
  • 启用插件:
Shell 命令:
# /var/www/html/mail/config/conf.pl

输入 'Plugins' 菜单项前的数字,然后可以看到所有已经安装的插件。输入 'change_ldappass' 前的数字启用它。再输入 'S' 保存配置,输入 'Q' 退出配置工具。

  • 配置 change_ldappass:

将配置文件模板复制一份,再基于它进行修改:

Shell 命令:
# cd /var/www/html/mail/plugins/change_ldappass/
# cp config_sample.php config.php

在 /var/www/html/mail/plugins/change_ldappass/config.php 文件中需要修改以下内容:

文件: /var/www/html/mail/plugins/change_ldappass/
$ldap_server = '127.0.0.1';
$ldap_protocol_version = 3;
$ldap_password_field = 'userPassword';
$ldap_user_field = 'mail';
$ldap_base_dn = 'o=domains,dc=openbsdonly,dc=org';
$ldap_filter = '(&(objectClass=qmailUser)(accountStatus=active))';
$query_dn = 'cn=vmail,dc=openbsdonly,dc=org';
$query_pw = 'vmailpasswd';

修改完成之后,用户就可以登录到 SquirrelMail 里,通过菜单 'Options --> Change Password' 来修改自己的邮箱密码了。

Compatibility

由于以下几个插件需要 Compatibility 插件的支持,所以我们需要先安装 Compatibility 插件:

  • Check Quota

这是一个用来保证其它一些插件可以 backward (and forward) compatible 的插件。插件的主页 介绍如下:

This plugin allows any other plugin access to the functions and special variables needed to make it backward (and forward) compatible with most versions of SM in wide use. This eliminates the need for duplication of certain functions throughout many plugins. It also provides functionality that helps check that plugins have been installed and set up correctly.

它的安装非常简单,只需要下载后解压到 SquirrelMail 的 'plugins/' 目录,再用 SquirrelMail 提供的 'conf.pl' 配置工具启用它即可。

Shell 命令:
# tar zxf compatibility-2.0.10-1.0.tar.gz
# mv compatibility /var/www/html/mail/plugins/

# chown -R apache:apache /var/www/html/mail/plugins/compatibility/
# chmod -R 755 /var/www/html/mail/plugins/compatibility/

别忘了启用它:

Shell 命令:
# /var/www/html/mail/config/conf.pl

Check Quota

Check Quota 插件用于检查和显示用户的邮箱容量使用量。支持的 Quota 类型有:

  • UNIX (filesystem)
  • IMAP-based
  • cPanel quotas

在这里我们使用的是 IMAP-based,配置非常的简单。

下载最新版本的源码,然后解压并配置。这里以 2.2-1.4.0 版本为例。

Shell 命令:
# tar zxf check_quota-2.2-1.4.0.tar.gz
# mv check_quota /var/www/html/mail/plugins/

# chown -R apache:apache /var/www/html/mail/plugins/check_quota/
# chmod -R 755 /var/www/html/mail/plugins/check_quota/

# cd /var/www/html/mail/plugins/check_quota/
# cp config.sample.php config.php

编辑配置文件 /var/www/html/mail/plugins/check_quota/config.php,在第 28 行,将 quota_type 的值改为 '1' 即可。

文件: /var/www/html/mail/plugins/check_quota/config.php
$settings['quota_type'] = 1;

使用 SquirrelMail 的 'conf.pl' 工具启用这个插件,然后重新登录 SquirrelMail,即可在左上角看到 "Quota Usage" 的信息。

Image: Tip.png 如果用户邮箱为空,默认是不显示 "Quota Usage" 的。

Select Language

select_language 在用户的登录的时候提供一个下拉菜单,用户可以在此选择登录 SquirrelMail 后使用的界面语言。

select_language 的安装非常简单,只需要解压后复制到正确的目录,再启用它即可。这里以 1.1-1.4.0 版本为例。

Shell 命令:
# tar zxf select_language-1.1-1.4.0.tar.gz
# mv select_language /var/www/html/mail/plugins/

# chown -R apache:apache /var/www/html/mail/plugins/select_language/
# chmod -R 755 /var/www/html/mail/plugins/select_language/

使用 SquirrelMail 的配置工具 'conf.pl' 启用它。

http://redhatsolution.googlecode.com/svn/trunk/mail_server_solution/screenshots/squirrelmail_plugin_select_language.png


普通分类: