使用 Ubuntu 16.04 搭建全能服务器(2)

AppArmor的是一个安全扩展(类似于SELinux)的应提供扩展的安全性。在我看来,你不需要它来配置一个安全的系统,它通常会导致更多的问题比优点(想想看你做了一个星期后,故障排除,因为预期有些服务不能正常工作,然后你发现一切正常,只是AppArmor配置是造成问题)。因此,我禁用它(这是必须的,如果你想稍后安装ISPConfig)。
我们可以像这样禁用它:

service apparmor stop
update-rc.d -f apparmor remove
apt-get remove apparmor apparmor-utils

5.同步系统时钟
这是当你运行一个物理服务器系统时钟在互联网上的NTP(网络时间协议)服务器同步是一个好主意。如果你运行一个虚拟服务器,那么你应该跳过此步骤。 运行:

apt-get -y install ntp ntpdate

和你的系统时间就会始终保持同步。

6. 安装 Postfix, Dovecot, MariaDB, phpMyAdmin, rkhunter 和 binutils

对于安装postfix,我们需要确保的sendmail未安装和运行。要停止并删除sendmail的运行以下命令:

service sendmail stop; update-rc.d -f sendmail remove

错误信息:

Failed to stop sendmail.service: Unit sendmail.service not loaded.

确定的,它只是意味着没有安装sendmail的,所以没有什么被删除。
现在我们可以安装Postfix,Dovecot,MariaDB(如MySQL的替代品),rkhunter和binutil用一个命令:

apt-get install postfix postfix-mysql postfix-doc mariadb-client mariadb-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d dovecot-mysql dovecot-sieve sudo

你会被问以下几个问题:

General type of mail configuration: System mail name:

您使用一个子域作为要为以后的电子邮件域名(例如yourdomain.tld)使用“系统邮件名称为”像server1.example.com或server1.yourdomain.com,域名不是非常重要的。
接下来,打开后缀的TLS/ SSL和提交端口:

nano /etc/postfix/master.cf

取消对提交和SMTPS部分如下: – 添加一行-o

smtpd_client_restrictions=permit_sasl_authenticated,reject 两行设置:

[...]
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
# -o smtpd_reject_unlisted_recipient=no
# -o smtpd_client_restrictions=$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
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
# -o smtpd_reject_unlisted_recipient=no
# -o smtpd_client_restrictions=$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
[...]

注:空格在前面的“-o……”行很重要!

重新启动 Postfix:

service postfix restart

我们希望MySQL监听所有的接口,而不仅仅是本地主机。因此,我们编辑:

/etc/mysql/mariadb.conf.d/50-server.cnf 并注释掉线 bind-address = 127.0.0.1:

nano /etc/mysql/mariadb.conf.d/50-server.cnf

[...]
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
#bind-address = 127.0.0.1
[...]

现在,我们在MariaDB设置root密码。 运行:

mysql_secure_installation

将会被问以下问题:

Enter current password for root (enter for none): <– press enter
Set root password? [Y/n] <– y
New password: <– Enter the new MariaDB root password here
Re-enter new password: <– Repeat the password
Remove anonymous users? [Y/n] <– y
Disallow root login remotely? [Y/n] <– y
Reload privilege tables now? [Y/n] <– y

重启 MariaDB:

service mysql restart

现在检查联网启用。运行:

netstat -tap | grep mysql

输出应该是这样的:

root@server1:~# netstat -tap | grep mysql
tcp6 0 0 [::]:mysql [::]:* LISTEN 5230/mysqld
root@server1:~#

7. 安装 Amavisd-new, SpamAssassin, 和 Clamav

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/2d7a7b2b12c6a94ed340f6a271554059.html