当前位置: > Linux安全 >

Linux下Apache站点的安全配置

时间:2014-02-22 01:18来源:www.it.net.cn 作者:IT网

随着LAMP环境的成熟应用,apache站点的安全性也被提出来了,有时候因为意外的各种原因,会导致站点内的某些信息泄漏,照成不必要的麻烦。所以Apache的安全被提出来,并做了安全提升,apache的安全可以从下面几个方面入手:

 

实验环境:

Red Hat Enterprise Linux 5.4 32-bit

httpd-2.4.4.tar.bz2

mysql-5.6.10.tar-gz

php-5.4.14.tar.gz

 

第一部分:身份验证

 

[root@bogon ~]# vim /etc/httpd/conf/httpd.conf 

 

 

 

 

 

进行身份验证

 

 

 

在站点的主目录下面

       说明文件.htaccess

 

 

 

htpasswd -c .htaccess  用户名

#第一次使用时,使用上面的命令说明,否则不用加参数-c

 


 

 

 

 

 

 
 
 

 

第二部分:来源控制
 
 
 
 
 
 
 

基于ip地址的访问

可以拒绝某些IP地址的访问

下面演示的是拒绝ip地址是192.168.30.200的主机访问192.168.30.100


 

[root@bogon ~]# vim /etc/httpd/conf/httpd.conf 

 

 

 

 

#拒绝来源IP为192.168.30.200的机器

 

 
 
 
 
第三部分:https
 
https是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作,并返回网络上传送回的结果。HTTPS实际上应用了Netscape的安全套接层(SSL)作为HTTP应用层的子层。(HTTPS使用端口443,而不是像HTTP那样使用端口80来和TCP/IP进行通信。)SSL使用40 位关键字作为RC4流加密算法,这对于商业信息的加密是合适的。HTTPS和SSL支持使用X.509数字认证,如果需要的话用户可以确认发送者是谁。
 
也就是说它的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。
 
 
HTTPS和HTTP的区别
 
一、https协议需要到ca申请证书,一般免费证书很少,需要交费。
 
二、http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。
 
三、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
 
四、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
 
 

Step1:建立证书颁发机构根CA

 

 

 

 

 

 

建立根CA机构需要的3个目录和两个文件

cd  /etc/pki/CA

mkdir certs  crl  newcerts  

touch  serial index.txt

echo 01> serial      //给serial文件一个初始化序列号01 

生成根CA的私钥文件,并修改权限,由私钥文件生成证书文件

 

 

 

Step2:生成Apache服务的私钥文件、有私钥文件生成证书请求文件

mkdir  -pv  /etc/httpd/certs/

cd  /etc/httpd/certs/

 

 

 

 

 

Step3:向根CA提交证书请求文件生成证书文件

 


 

Step4:对Apache配置修改,结合SSL

修改结合SSL的主配置文件,添加证书的相关路径信息

vim  /etc/httpd/extra/httpd-ssl.conf

 

 

 

 

vim  /etc/httpd/httpd.conf

 

 

 

 

 

 

Https访问站点,证书安装过程

 

 

 

 

 

 

 

 

 

 

 

 

 

安装过证书后的Https访问站点

 

 

 

 

 

 END ! ! !

(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容