ubuntu12.04 apache,ubuntu20.04

各位老铁们,大家好,今天由我来为大家分享ubuntu12.04 apache,以及ubuntu20.04的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!

Ubuntu 12.04 安装 Apache2+PHP5+MySQL

LAMP是Linux web服务器组合套装的缩写,包含Apache+MySQL+PHP。本教程指导如何在Ubuntu 12.04 LTS server上安装Apache2服务器,包括PHP5(mod_php)+MySQL。

首先,以root账户进行安装,切换至root账户执行命令:sudo su

接着,安装MySQL 5,输入命令:apt-get install mysql-server mysql-client。在安装过程中,会提示设置root账户密码。

然后,安装Apache2,命令为:apt-get install apache2。在浏览器输入服务器地址,如,查看Apache2是否正常工作。

Apache在Ubuntu默认文档根目录为/var/www,配置文件为/etc/apache2/apache2.conf,可额外配置存储子目录如/etc/apache2/mods-enabled、/etc/apache2/sites-enabled和/etc/apache2/conf.d。

安装PHP5和Apache PHP5模块,命令为:apt-get install php5 libapache2-mod-php5,并重启Apache2:/etc/init.d/apache2 restart。

测试PHP5,建立探针页面,输入内容并访问,查看已支持的模块。

为PHP5获取MySQL支持,安装php5-mysql模块。使用apt-cache search php5查看PHP5模块,然后安装所需模块,例如:apt-get install php5-mysql php5-curl php5-gd php5-intl等。重启Apache2:/etc/init.d/apache2 restart,刷新查看模块支持是否增加。

安装phpMyAdmin用于MySQL管理,命令为:apt-get install phpmyadmin,访问地址为。

在Lamp服务器上安装Curl,使用命令:sudo apt-get install curl libcurl3 libcurl3-dev php5-curl,重新启动服务器:sudo/etc/init.d/apache2 restart。通过PHP文件如<php phpinfo();?>查看Curl安装是否成功。

总结,在Ubuntu 12.04 LTS server上安装Apache2+PHP5+MySQL的步骤包括安装MySQL、Apache2、PHP5、获取MySQL支持、安装phpMyAdmin和Curl的安装。

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

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

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

安装Apache2

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

$ 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)的安全规则要求正确的时间戳机制。

$ sudo apt-get-y install openntpd tzdata

$ sudo dpkg-reconfigure tzdata

$ sudo service openntpd restart

禁止AppArmor冲突

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

$ sudo/etc/init.d/apparmor stop

$ sudo update-rc.d-f apparmor remove

$ sudo apt-get remove apparmor apparmor-utils

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

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

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

$ 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的末尾处。

$ 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或以后版本:

$ 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地址。

$ 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本地源镜像

本地部分源镜像的优点是占用空间比较小,一个部分软件包源根据系统需要所占的空间大概也就在1G~2G之间。能满足系统备份还原的基本需求,凡是备份下来的软件包都能安装。但是它的缺点和局限性也是很明显的,它只能使用系统安装过的的软件包,也就是/var/cache/apt/archives/下的所有软件包。如果你的系统是32位的,那么这个源也就是32位的源,而不能被64位的系统所使用。或者如果要安装没有在本机上安装过的软件,那么就不行。因此制作完整的本地软镜像就是个不错的选择。

制作部分软件包源镜像可以作为个人备份系统,还原之用;如果是公司企业的话,推荐还是使用完整的本地源镜像。

下面介绍下制作完整的本地源镜像的方法:

安装前一定要注意:

首先,镜像目录为/var/spool/下的 apt-mirror。

其次,要尽量用官方源或者Ubuntu系统源列表中列出来的镜像站进行镜像。

/var下要有40G以上的空间,建议在40G的基础上再保留30%以上的余量。

/var下如果没有空间,可以把镜像目录改到其他分区中,可以参考如下方法:

[plain] view plain copy

sudo ln-s/media/g/Ubuntu_local/apt-mirror//var/spool/apt-mirror

1.安装apt-mirror工具[plain] view plain copy

sudo apt-get install apt-mirror   sudo apt-get install apache2#如果不打算对局域网或互联网开放,这个不必装

2.配置apt-mirror工具

gksugedit/etc/apt/mirrors.list

清除原有内容,没关系,输入以下内容:

[plain] view plain copy

#############config##################   #   # set base_path /var/spool/apt-mirror   #   # setmirror_path$base_path/mirror   # setskel_path $base_path/skel   # setvar_path$base_path/var   # setcleanscript$var_path/clean.sh   # setdefaultarchrunning hostarchitecture   # setpostmirror_script$var_path/postmirror.sh   # setrun_postmirror 0   #默认为20线程下载,推荐10线程,20可能会造成服备器或网络loading太重   setnthreads 20   set _tilde 0   #   #############end config##############   #网易源(速度很快)   deb precise main universe restricted multiverse   deb precise-security universe main multiverserestricted   deb precise-updates universe main multiverserestricted   deb precise-proposed universe main multiverse restricted   deb precise-backports universe main multiverserestricted   #ubuntu12.04 src源不进行同步,因为大多数人用不上,如果同步,要多增加一倍空间   #deb-src precise main universe restricted multiverse   #deb-src precise-security universe main multiverserestricted   #deb-src precise-proposed universe main multiverserestricted   #deb-src precise-backports universe main multiverse restricted   #deb-src precise-updates universe main multiverserestricted   #下面的代码是为了镜像成功后节省空间的,实际上下面的这一句不写也是可以的   clean

这里的地址规则和sources.list中是一样的,用的是163网速不同,时间不同,完成后有提示,

3.开始制作镜像sudo apt-mirror

制作完成后会有提示,制作过程可以中断,如果时间太长,可以关闭终端或ctrl+c,如果电脑关机,什么时候要继续,再重新执行代码即可,这时原来下载过的是不会重新下载的。直到完成,完成后有如何节约空间的提示,可以不去理会;镜像内容很全的,与官方同步的.

之后再次运行apt-mirror会继续以前的工作.每次都可以这样更新.

此过程根据网速不同,会有不同的时间.网速快的话,1个晚上就能完成.

4.作为本地源使用更新

   这一部分和部分软件包源镜像源的使用一样,可参考

制作完成后,在本地存储的地址为:

/var/spool/apt-mirror/mirror/mirrors.163.com/Ubuntu

编辑sources.list

sudo gedit/ets/apt/sources.list

删除原有内容,写入:

deb precise mainuniverse restricted multiverse

deb precise-securityuniverse main multiverse restricted

deb precise-updatesuniverse main multiverse restricted

deb precise-proposeduniverse main multiverse restricted

deb precise-backportsuniverse main multiverse restricted

5.本地安装软件包sudo apt-get update

sudo apt-get install xxxx

6.制作成局域网源

   安装apaches

/var/spool/apt-mirror/mirror/mirrors.163.com/ubuntu/作为webroot

地址为局域网ip地址即可.

说明:完整的本地源做好后,通过新立得或apt-get,可以完全免除ubuntu官方源或ubuntu-cn源的负担,你想装什么,就装什么吧

阅读剩余
THE END