如何在Ubuntu 14.04服务器上安装ISPConfig3

介绍

虽然命令行是一个强大的工具,可以允许您在许多情况下快速,轻松地工作,但有些情况下,可视化界面是有帮助的。 如果您在一台机器上配置许多不同的服务,或为客户管理系统的一部分,就像ISPConfig工具可以使这是一个简单的任务。

ISPConfig是您的服务器的控制面板,允许您轻松配置域,电子邮件地址,站点配置和用户帐户。 我们将在Ubuntu 14.04服务器上安装面板。

先决条件

在开始之前,您应该有一个域名指向您将使用的服务器。 要了解如何与DigitalOcean配置您的域名 ,请点击此处。

您还需要具有sudo权限的非root用户。 你可以学习如何通过以下第1步-4在我们建立一个非root账户的Ubuntu 14.04服务器初始设置指南 以此用户身份登录即可开始。

升级系统

我们应该做的第一件事是升级基本系统。 这将确保我们系统上的软件包是最新的打包版本。

我们这样做之前,我们必须更新我们的本地软件包索引,这样apt知道最新的包版本:

sudo apt-get update
sudo apt-get upgrade

我们的系统现在应该是最新的,我们可以继续安装的其余部分。

验证主机名配置正确

我们将首先确保我们的主机名配置正确。 在本指南中,我们将要假设,我们正在设置的域名server.test.com和服务器的IP地址为111.111.111.111

我们需要验证我们的主机名配置是否正确。 我们应该看看我们的hosts文件:

sudo nano /etc/hosts

它可能看起来像这样:

127.0.0.1           localhost server.test.com server

我们希望使我们的主机名使用我们的公共IP地址。 您可以将该行拆分为两行,并将域名部分指向我们的公共IP地址:

127.0.0.1           localhost
111.111.111.111     server.test.com server

保存并在完成后关闭文件。

我们也应该修改我们的hostname文件,以确保它包含了正确的域名,以及:

sudo nano /etc/hostname

如果未显示整个主机名,请修改值:

server.test.com

您应该通过键入以下内容确保系统使用新值:

sudo hostname -F /etc/hostname

更改系统设置

Ubuntu以非常规的方式配置了一些项目,我们需要撤消它们才能使我们的软件正常工作。

我们需要做的第一件事是禁用AppArmor,这是与ISPConfig不兼容。 首先,我们应该停止服务:

sudo service apparmor stop

我们还可以通过键入以下内容来让其卸载其配置文件:

sudo service apparmor teardown

完成后,我们需要告诉我们的服务器不要在启动时启动此服务:

sudo update-rc.d -f apparmor remove

我们实际上可以通过键入以下内容删除所有相关联的文件和包:

sudo apt-get remove apparmor

我们需要修改的另一个配置是默认系统shell。 Ubuntu使用dash为系统进程的外壳,但ISPConfig利用由专门提供的附加功能bash 我们可以设置bash是由输入默认的系统shell:

sudo dpkg-reconfigure dash

在提示符下,选择“否”以使实用程序重新配置系统shell指针使用bash ,而不是dash

安装其他组件

现在我们已经准备好了我们的基本系统,我们可以开始安装一些ISPConfig可以管理的服务和一些支持ISPConfig的软件。

我们将安装基本的LAMP(Linux,Apache,MySQL,PHP)组件,邮件软件,我们邮件的防病毒扫描软件和其他软件包。

我们将做这一切在一个大的apt命令,因此这将是一个很大安装在一次包:

sudo apt-get install apache2 apache2-utils libapache2-mod-suphp libapache2-mod-fastcgi libapache2-mod-python libapache2-mod-fcgid apache2-suexec libapache2-mod-php5 php5 php5-fpm php5-gd php5-mysql php5-curl php5-intl php5-memcache php5-memcached php5-ming php5-ps php5-xcache php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-imap php5-cgi php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libruby memcached phpmyadmin postfix postfix-mysql postfix-doc mysql-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d dovecot-mysql dovecot-sieve mailman amavisd-new spamassassin clamav clamav-daemon zoo unzip zip arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl libnet-dns-perl bind9 dnsutils vlogger webalizer awstats geoip-database libclass-dbi-mysql-perl squirrelmail pure-ftpd-common pure-ftpd-mysql snmp

在安装过程中,您将被问到几个问题。 你会被要求选择一个语言mailman 选择en (English)继续。 还将要求您选择并确认MySQL管理用户的密码。

你会得到另一个提示是,是否创建一个自签名的SSL证书dovecot 您应该选择“是”。 您必须输入SSL证书的“commonName”。 这只是您的完全限定域名:

server.test.com

对于postfix ,你会问你需要什么样的邮件配置。 选择Internet Site 然后将要求您选择系统邮件名称。 您应该将其设置为您的域名:

server.test.com

对于phpMyAdmin,软件可以根据您的Web服务器自动配置自己。 选择“apache2”,然后按“空格”选择该选项。 点击“TAB”,然后按“ENTER”进行选择。

后来,你会询问您是否希望与配置数据库的phpMyAdmin dbconfig-common 在这里选择“是”。 您将需要输入上面选择的MySQL管理员帐户的密码。 然后,您可以选择并确认phpMyAdmin用户的密码。

此时,应该安装所有组件。

配置后端组件

现在一切都已安装,我们需要开始配置我们的服务和工具。

邮件配置

让我们通过启用一些功能启动postfix 使用编辑器打开默认配置文件:

sudo nano /etc/postfix/master.cf

我们只需要取消注释此文件中的一些行。 特别是处理提交服务和下面前三个选项行的smtps服务,以及smtps服务和前三个选项行:

submission inet n       -       -       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
. . .
smtps     inet  n       -       -       -       -       smtpd
  -o syslog_name=postfix/smtps
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes

现在,我们需要在这两个服务下附加一个附加选项。 它将是相同的每个:

submission inet n       -       -       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
. . .
smtps     inet  n       -       -       -       -       smtpd
  -o syslog_name=postfix/smtps
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject

保存并在完成后关闭文件。

其他邮件相关的服务,我们应该配置是mailman ,它可以处理邮件列表。

我们可以先告诉它创建一个新的列表:

sudo newlist mailman

系统将要求您提供将与列表相关联的电子邮件。 还将要求您选择密码。

该脚本将输出一个长列表的别名。 你应该添加这些到您的底部/etc/aliases的文件:

sudo nano /etc/aliases

它应该看起来像这样:

postmaster:     root
mailman:              "|/var/lib/mailman/mail/mailman post mailman"
mailman-admin:        "|/var/lib/mailman/mail/mailman admin mailman"
mailman-bounces:      "|/var/lib/mailman/mail/mailman bounces mailman"
mailman-confirm:      "|/var/lib/mailman/mail/mailman confirm mailman"
mailman-join:         "|/var/lib/mailman/mail/mailman join mailman"
mailman-leave:        "|/var/lib/mailman/mail/mailman leave mailman"
mailman-owner:        "|/var/lib/mailman/mail/mailman owner mailman"
mailman-request:      "|/var/lib/mailman/mail/mailman request mailman"
mailman-subscribe:    "|/var/lib/mailman/mail/mailman subscribe mailman"
mailman-unsubscribe:  "|/var/lib/mailman/mail/mailman unsubscribe mailman"

完成后保存并关闭文件。 你需要让postfix了解您添加的别名。 你可以通过键入:

sudo newaliases

我们可以开始mailman通过打字服务:

sudo service mailman start

重新启动postfix服务,使邮件的变化:

sudo service postfix restart

虽然我们正在处理的服务,我们也应该停止并禁用spamassassin ISPConfig根据需要调用它,它不需要一直运行:

sudo service spamassassin stop

然后我们可以告诉服务器在启动时不再启动它:

sudo update-rc.d -f spamassassin remove

LAMP配置

我们需要启用mcrypt在PHP中的功能:

sudo php5enmod mcrypt

我们需要做的另一件事是启用我们安装的一些Apache模块。

sudo a2enmod rewrite ssl actions include cgi dav_fs suexec dav auth_digest fastcgi alias

我们还需要对一些Apache配置文件进行一些调整。

我们启用的模块之一将拦截所有的PHP文件。 我们想阻止它这样做。 打开suphp配置文件:

sudo nano /etc/apache2/mods-available/suphp.conf
<IfModule mod_suphp.c>
    <FilesMatch "\.ph(p3?|tml)$">
        SetHandler application/x-httpd-suphp
    </FilesMatch>
        suPHP_AddHandler application/x-httpd-suphp
. . .

我们将用一个命令替换顶部块。 完成后应该看起来像这样:

<IfModule mod_suphp.c>
   AddType application/x-httpd-suphp .php .php3 .php4 .php5 .phtml
   suPHP_AddHandler application/x-httpd-suphp

完成后保存并关闭文件。

我们将不得不手动创建符号链接mailman Apache的文件。 我们可以通过键入:

sudo ln -s /etc/mailman/apache.conf /etc/apache2/conf-available/mailman.conf

然后,我们可以通过键入:

sudo a2enconf mailman

如果您计划创建的网站主机Ruby文件,你应该注释掉的处理.rb文件中mime.types文件。 ISPConfig将处理这个本身:

sudo nano /etc/mime.types
application/x-rss+xml                           rss
#application/x-ruby                              rb
application/x-rx

完成后保存并关闭文件。

现在,我们可以重新启动Apache来实现我们的更改:

sudo service apache2 restart

其他配置

我们还需要编辑更多的系统。

由于ISPConfig经常用于细分服务器空间以用于重新销售目的,因此通常需要为客户端提供FTP访问。 我们已经安装了必要的软件,但我们需要进行一些调整。

从编辑FTP服务器的配置开始:

sudo nano /etc/default/pure-ftpd-common

我们需要确保我们的FTP用户仅限于chroot环境,以便它们不会干扰系统的其余部分。 我们可以通过改变这样做VIRTUALCHROOT设置为true

VIRTUALCHROOT=true

由于FTP本质上不安全,我们应该至少使用TLS加密保护它。 我们可以通过创建一个简单的包含一个标志文件设置这1字:

sudo nano /etc/pure-ftpd/conf/TLS
1

现在,我们需要创建进程可以使用的自签名证书。 我们可以通过调用:

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem

此证书有效期为一年。 你必须回答一些提示。 填写您的信息。 Common Name可能是最重要的部分。

我们需要通过键入以下内容来锁定密钥文件:

sudo chmod 600 /etc/ssl/private/pure-ftpd.pem

当所有这些都完成后,我们可以重新启动服务:

sudo service pure-ftpd-mysql restart

这将允许我们的FTP守护进程使用加密。

其中一个我们越来越FTP建立此系统上的原因,是因为我们已经安装了一个监控守护进程称为awstats配置为预计这一服务的存在。

ISPConfig将调用awstats如必要,所以它不需要依靠cron即通常用来轮询服务器作业。 我们可以通过键入以下内容删除:

sudo rm /etc/cron.d/awstats

安装ISPConfig

我们终于准备好安装实际的ISPConfig软件。

我们可以通过下载最新的稳定版本到我们的服务器。 在写这篇文章时,有一个直接链接的最新稳定版本是版本3.我们将更新安装一旦我们得到一切安装。

现在,你应该改变你的主目录,并使用下载项目wget

cd ~
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz

下载完成后,解压目录结构和移动到install解压文件夹结构的子目录:

tar xzvf ISPConfig*
cd ispconfig3_install/install/

现在,我们准备好安装软件。 通过键入以下内容:

sudo php -q install.php

你将经历一个非常漫长的安装过程。

幸运的是,你实际上需要输入唯一的细节是你的MySQL root密码! 对于每个其他条目,只需按“ENTER”即可使用默认值并向前跳过。

完成安装后,请输入以下命令,更新到最新版本:

sudo php -q update.php

再次,只需按“ENTER”即可使用每个命令的默认值。

当你完成,你可以访问你的域名,随后访问您的ISPConfig服务:8080在Web浏览器:

https://server_domain_name:8080

您将收到SSL警告,因为我们使用自签名证书:

ISPConfig SSL警告

单击“继续”或“继续”接受证书。

您将进入登录屏幕。

ISPConfig登录屏幕

默认的用户名和密码均为admin

Username: admin
Password: admin

输入这些值,您将转到ISPConfig3界面:

ISPConfig主界面

一旦你来到这里,你应该更改admin通过点击“系统”按钮,然后单击下左侧导航菜单的“用户管理”类别中的“CP用户”链接用户的密码。

点击admin在主窗口的用户帐户。 您可以选择更改此页面上admin用户的密码。

结论

您现在应该已经安装并配置了ISPConfig面板。 您应该能够在此界面中管理域,邮件和帐户。

作者:Justin Ellingwood
赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏