很多朋友都喜欢用ubuntu,很大原因是它安装LAMP非常简单,

尽管默认安装的lamp已经可以良好工作,但是系统管理员仍然可以找到一些优化加固的空间。

1、php加速

事实证明,php解释缓存可以提高php效率,apc/xcache/zendopcache等各个加速器原理都差不多,性能也相差不大,可以肯定是,php解释缓存,使用与不使用,性能相差数倍甚至更多。

apt-get install php-apc

2、php5-mysql 模块精简

php5-mysql 软件包默认包含了3种mysql连接方式,分别是mysql,pdo_mysql和mysqli,

三者虽各有优劣,但你用到的肯定只有其中的一种,通常是mysql。

cd /etc/php5/conf.d/
mv mysqli.ini mysqli.ini.bak
mv pdo_mysql.ini pdo_mysql.ini.bak
mv pdo.ini pdo.ini.bak

3、隐藏apache和php的版本信息

sed -i 's/ServerTokens OS/ServerTokens Prod/g' /etc/apache2/conf.d/security
sed -i 's/ServerSignature On/ServerSignature Off/g' /etc/apache2/conf.d/security
sed -i '/expose_php/{s/On/Off/g}' /etc/php5/apache2/php.ini

4、安装mod_security

mod_security 是一个安全模块,可以防止多种***。apt-get install libapache-mod-security
cd /etc/modsecurity/
cp modsecurity.conf-recommended modsecurity.conf

5、设置压缩和浏览器缓存

压缩数据可提升吞吐量,设置浏览器缓存可减少请求数,反向提高apache性能。

cat /etc/apache2/httpd.conf
<IfModule mod_deflate.c><Location /># Insert filterSetOutputFilter DEFLATE# Netscape 4.x has same problems...BrowserMatch ^Mozilla/4 gzip-only-text/html# Netscape 4.06-4.08 have some more problemsBrowserMatch ^Mozilla/4\.0[678] no-gzip# MSIE masquerades as Netscape, but it is fine# BrowserMatch \bMSIE !no-gzip !gzip-only-text/html# NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48# the above regex won't work. You can use the following# workaround to get the desired effect:BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html# Don't compress p_w_picpaths and otherSetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-varySetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-varySetEnvIfNoCase Request_URI .(?:pdf|doc)$ no-gzip dont-varyAddOutputFilterByType DEFLATE text/html text/plain text/xml text/cssAddOutputFilterByType DEFLATE application/x-javascript# Make sure proxies don't deliver the wrong content#Header append Vary User-Agent env=!dont-vary</Location></IfModule>
<IfModule mod_expires.c>ExpiresActive OnExpiresByType p_w_picpath/* "access plus 1 month"ExpiresByType text/css "access plus 1 month"ExpiresByType text/javascript  "access plus 1 month"ExpiresByType application/x-javascript "access plus 1 month"
</IfModule>
<IfModule mod_headers.c>Header unset ServerHeader unset X-Powered-By
</IfModule>

以上几点在实际中是不够的,另外给出3点额外的建议:

a、mysql独立出来

除非逼不得已,请务必单独给mysql数据库分配一台机器。要知道,lamp不是一个整体,而是一种耦合。

b、使用apache基于域名的虚拟主机

基于域名的主机由于通常无法直接通过IP地址访问,这可以减少很多扫描和盲注,让网站更安全。

c、反向代理

如果在lamp前面单独放置一台机器做nginx反向代理,把web服务器放入内网,这样在架构上会更安全,还可以通过nginx的负载均衡来增加web服务器的可用性。lamp如果直接面对公网,面临的危险显然更多。

转载于:https://blog.51cto.com/purplegrape/1432274

基于ubuntu 的LAMP 优化加固相关推荐

  1. Ubuntu显示美化 优化 常用插件

    本文不再更新,已迁移到MD文档,参见  Ubuntu显示美化 优化 常用插件_神奏的博客-CSDN博客 1. 安装 Extension Manager ubuntu snap商店或者deb商店打开,搜 ...

  2. 基于ceres的后端优化的代码实现

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 来源丨从零开始搭SLAM 作者丨李太白lx 由于g2o天然是进行位姿图优化的, 所以十分契合karto ...

  3. OpenCV 4.5.1 - 新版本 中 BEBLID 描述符尝鲜 (基于 ubuntu / c++)

    时间:20210222 目录 文章目录 1. OpenCV 4.5.1 发布 1.1 参考资料 1.2 新特性 BEBLID 描述符 2. OpenCV 4.5.1 编译 (Ubuntu 18.04) ...

  4. 基于Ubuntu 18.04机器人操作系统环境和深度学习环境配置

    基于Ubuntu 18.04机器人操作系统环境和深度学习环境配置详解 CUDA+Cudnn+ROS+anaconda+ubuntu装机必备 笔记本双系统安装 U盘启动项安装ubuntu18.04.1 ...

  5. WordPress - 基于 Ubuntu 16.04 搭建个人博客

    WordPress - 基于 Ubuntu 16.04 搭建个人博客 购买了腾讯云服务器后, 准备开始搭建个人博客了, 这里根据网上的各种资源整理一下.(终端下进行) 如果是学习的话强烈推荐 基于 U ...

  6. 构建基于ubuntu 12.04的Sedona开发环境

    一.引言 Sedona协议是朗德华楼控领域上重要的技术合作伙伴Tridium公司所研发的设计用于自控领域事实上的行业技术规范和标准. Sedona Framework是一个开源的用于嵌入式设备编程和开 ...

  7. 【深入YoloV5(开源)】基于YoloV5的模型优化技术与使用OpenVINO推理实现

    [深入YoloV5(开源)]基于YoloV5的模型优化技术与使用OpenVINO推理实现 前言 CV调包侠自己的深度学习交流群中一位兄弟在看我以前的github和博客:https://blog.csd ...

  8. 基于Ubuntu交叉编译FFmpeg Windows SDK

    写在前面 FFmpeg是一个开源且跨平台的音视频解决方案,集采集.转码.流式化为一身,项目的libavcodec编解码模块和libavformat媒体格式模块,支持非常非常丰富的编解码格式和容器封装格 ...

  9. 基于ECS部署LAMP环境搭建Drupal网站,云计算技术与应用报告

    实验环境: 建站环境:Windows操作系统,基于ECS部署LAMP环境,阿里云资源, Web服务器:Apache,关联的数据库:MySQ PHP:Drupal 8 要求的PHP版本為7.0.33的版 ...

最新文章

  1. 解决XP系统下HTTP 错误 403.9 - 禁止访问:连接的用户过多的问题
  2. 计算机图学测试题及答案,《计算机图形学》练习测试题及参考答案
  3. PHP 直接在共享内存中存储数据集
  4. Node.js下载安装及各种npm、cnpm、nvm、nrm配置(保姆式教程—提供全套安装包)—nrm的安装与配置(5)
  5. X64-CL iPro 采集卡OC-64EO-IPRO0简介
  6. IntelliJ IDEA 背景色以及字体设置
  7. 火山PC_数据库知识_MySQL操作
  8. word生成目录和给目录添加虚线和页码
  9. BZOJ 1406 AHOI2007 密码箱 数论
  10. 二 Python 基本数据类型
  11. 常用传感器讲解七--红外警报传感器(KY-008)
  12. banner生成图像的网站有哪些?
  13. UPS BP650CH实现nas自动关机
  14. 不规律的生活有什么危害
  15. App首屏接口性能优化
  16. Hadoop HA在停掉active namenode后无法自动切换到standby namenode
  17. 均值-中位数-众数-极差-中程数-方差-标准差-变异系数
  18. ROS::ros机器人路径远离障碍物的方法
  19. Unity UGUI开发设计及案例讲解
  20. 模电摸索日记之《功率放大概述》

热门文章

  1. python的基础知识
  2. Hive 基本语法操练(四):Hive 复合类型
  3. 名字就叫nfs-(network file system)
  4. Visual Studio 2012/2010/2008 远程调试
  5. JS 动态添加 onload、onresize、onscroll 事件
  6. MasterPage.master文件
  7. Loj #3111. 「SDOI2019」染色
  8. 具有SSM框架的CRUD与多条件查询
  9. django框架-DRF工程之认证功能
  10. NoSQL介绍(三)