如何在Ubuntu上搭建一台安全的Apache Web服务器?

2017-03-10 17:00  出处:其他  作者:佚名   责任编辑:lixianmei 

  本教程假设你已有一台在运行的Ubuntu服务器,网络方面已设置好,而且可以通过SSH进行访问。

  Apache2是许多安装的Linux发行版使用的默认Web服务器。它不是对所有环境来说唯一可用的Web服务器,也不是最佳的Web服务器,但是它适合许多使用场景。在安装过程中,系统可能会询问你哪个Web服务器要自动重新配置。选择“apache2”即可。

  安装Apache2

  使用下面这个命令,安装Apache2及其他库。

1
$ sudo apt-get -y install apt-get install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt libapache2-mod-suphp libopenssl-ruby libapache2-mod-ruby

  更新时区(TimeZone)和检查正确时间

  为了减小共享数据或镜像数据方面的混淆,所有服务器在运行时都应该尽可能接近同步状态。一些加密密钥管理系统需要准确的时间。最后,就企业服务器而言,《萨班斯-奥克斯利法案》(Sarbanes-Oxley)和《健康保险可携性及责任性法案》(HIPAA)的安全规则要求正确的时间戳机制。

1
2
3
$ sudo apt-get -y install openntpd tzdata
$ sudo dpkg-reconfigure tzdata
$ sudo service openntpd restart

  禁止AppArmor冲突

  虽然AppArmor这个套件的确提供了一层额外的安全,但在我看来,需要为每个系统创建自定义配置文件。这不是本教程所探讨的内容。所以眼下,我们会禁用AppArmor,防止与任何默认的配置发生冲突。

1
2
3
$ sudo /etc/init .d /apparmor stop
$ sudo update-rc.d -f apparmor remove
$ sudo apt-get remove apparmor apparmor-utils

  注意:如果是生产环境下的Web服务器,不建议禁用AppArmor。如果有些人想创建自定义的AppArmor配置文件,请参阅官方说明文档(http://wiki.apparmor.net/index.php/Documentation)。

  阻止分布式拒绝服务(DDoS)攻击

  DDoS攻击是一种分布式拒绝服务攻击。有一个Apache模块可以阻止这类攻击。

1
2
3
$ sudo apt-get -y install libapache2-mod-evasive
$ sudo mkdir -p /var/log/apache2/evasive
$ sudo chown -R www-data:root /var/log/apache2/evasive

  把下面这个命令添加到mod-evasive.load的末尾处。

1
2
3
4
5
6
7
8
$ sudo nano /etc/apache2/mods-available/mod-evasive .load DOSHashTableSize 2048
DOSPageCount 20 # 请求同一页面的最大数量
DOSSiteCount 300 # 同一侦听器上同一客户端IP请求任何对象的总数量
DOSPageInterval 1.0 # 页面数量阈值的间隔
DOSSiteInterval 1.0   # 站点数量阈值的间隔
DOSBlockingPeriod 10.0 # 客户机IP被阻止的时间段
DOSLogDir “ /var/log/apache2/evasive
DOSEmailNotify admin@domain.com

  阻止Slowloris攻击

  还有一个Apache模块可以阻止Slowloris攻击,不过模块名称取决于你使用的Ubuntu的具体版本。如果是Ubuntu 12.10或以后版本:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
$ sudo apt-get -y install libapache2-mod-qos
然后,检查qos.conf中的配置:
 
$ sudo nano /etc/apache2/mods-available/qos .conf
## 服务质量方面的设置
 
# 处理来自多达100000个不同IP的连接
 
QS_ClientEntries 100000
# 只允许每个IP仅50条连接
 
QS_SrvMaxConnPerIP 50
# 活动TCP连接的最大数量限制在256条
 
MaxClients 256
# 当70%的TCP连接被占用时,禁用保持活动连接状态
 
QS_SrvMaxConnClose 180
# 最小请求/响应速度(拒绝阻塞服务器的慢速客户端,即slowloris保持连接开启,不提出任何请求):
 
QS_SrvMinDataRate 150 1200
# 并限制请求标题和主体(注意,这还限制了上传和发帖请求):
 
# LimitRequestFields 30
# QS_LimitRequestBody 102400

  注意:如果你运行12.04之前的Ubuntu版本,改而使用下面这个命令:

  $ sudo apt-get -y install libapache2-mod-antiloris

  检查antiloris.conf中的配置

  $ sudo nano /etc/apache2/mods-available/antiloris.conf

  # 每个IP地址处于READ状态的最大并行连接数量

  IPReadLimit 5

  阻止DNS注入攻击

  Spamhaus这个模块使用域名系统黑名单(DNSBL),目的是为了阻止通过Web表单实现的垃圾邮件转发,防止URL注入攻击,阻止来自机器人程序的http DDoS攻击,通常保护服务器,远离已知的恶意IP地址。

1
2
3
4
5
6
$ sudo apt-get -y install libapache2-mod-spamhaus
$ sudo touch /etc/spamhaus .wl Append the config to apache2.conf
$ sudo nano /etc/apache2/apache2 .conf
MS_METHODS POST,PUT,OPTIONS,CONNECT
MS_WhiteList /etc/spamhaus .wl
MS_CacheSize 256

  重启Apache装入新模块

  $ sudo service apache2 restart

  现在Web服务器已安装完毕,并在正常运行。将Web浏览器指向你的域,即可看到证明你一切正常的默认消息。作为最后的检查机制,运行下面这个命令,看看你的服务器有没有任何错误信息。要是有错误信息,你需要上谷歌搜索一下,立马解决这些错误。

  $ sudo tail -200 /var/log/syslog

ubuntu安装
依旧很受欢迎!Ubuntu 17.04 Beta 1已发布
依旧很受欢迎!Ubuntu 17.04 Beta 1已发布

现如今,最为主流的桌面操作系统就莫过于微软的Windows与苹果的 OS X操作系统了,不过对于一些喜欢小众操作系统 的用户而言,Ubuntu这个操作系统无疑是很受欢迎的。据外媒报道,在上...

黑目 2017-02-28 评论: 2 标签: ubuntu安装  

用开源的!Ubuntu不再集成AMD官方驱动
用开源的!Ubuntu不再集成AMD官方驱动

Ubuntu下一个版本决定不再集成AMD官方的显卡驱动了!AMD的Ubuntu驱动已经久违更新,Ubuntu鼓励用户使用开源的AMD显卡驱动。...

佚名 2016-03-15 评论: 1 标签: ubuntu安装  

没参展的魅族 竟和Ubuntu在MWC发售新机
没参展的魅族 竟和Ubuntu在MWC发售新机

魅族与Ubuntu的合作始于MX4,当时就引起了不少关注,魅族此次与Canonical合作,宣布推出PRO 5 Ubuntu版本。不过与前者的小范围售卖不同,魅族Pro 5 Ubuntu版将面向国际范围销售,这也...

奎托斯 2016-02-22 评论: 64 标签: ubuntu安装   魅族  

能当PC使?首款Ubuntu平板电脑将亮相MWC
能当PC使?首款Ubuntu平板电脑将亮相MWC

近日,西班牙厂商BQ推出了第一款基于Ubuntu系统的平板机,型号为“Aquaris M10 Ubuntu Edition”。Ubuntu系统母公司Canonical透露,该款平板预装的Ubuntu系统已经针对平板环境进行了...

豆腐店店长 2016-02-15 评论: 1 标签: ubuntu安装   平板电脑专业测试  

首款Ubuntu平板电脑发布:还能当PC使?
首款Ubuntu平板电脑发布:还能当PC使?

近日,西班牙厂商BQ推出了第一款基于Ubuntu系统的平板机,型号为“Aquaris M10 Ubuntu Edition”。Ubuntu系统母公司Canonical透露,该款平板预装的Ubuntu系统已经针对平板环境进行了...

豆腐店店长 2016-02-06 评论: 28 标签: ubuntu安装   平板电脑专业测试  

Ubuntu版MX4终于来了! 1799元正式发售
Ubuntu版MX4终于来了! 1799元正式发售

魅族已经和Ubuntu合作有好些年了,此前就有传闻魅族将联手Ubuntu推出搭载Ubuntu的产品,可是此前却只是闻其声未见其人,终于在前段时间,网上爆出了一段Ubuntu版魅族MX4的视频,至此...

丢丢 2015-05-18 评论: 44 标签: ubuntu安装  

将搭载Ubuntu系统 魅族MX4新版本曝光
将搭载Ubuntu系统 魅族MX4新版本曝光

上月底,魅族和Canonical于珠海魅族总部签署了战略合作协议,而近日,外媒gsmarena给出了答案,曝光了一张来自消息人士的图片,图片中的手机正是MX4,而它搭载的UI明显不是Flyme,更...

小舅子 2014-12-05 评论: 165 标签: ubuntu安装   魅族  

查看更多