Web网页的不同安全机制

Linux通过apach的httpd服务建立的web服务有3种不同的安全方式

身份验证 (通过账号密码验证用户的身份)

来源控制  (通过ip地址的过滤限定访问的用户)

加密访问  (通过数字证书保证数据的安全性)

一:身份验证的实现:

Centos安装完成httpd服务后启动

[root@wang Packages]# vim /etc/httpd/conf/httpd.conf   编辑配置文件

将none改为all(开启身份验证)

[root@wang Packages]# cd /var/www/html/   进入网页主目录

[root@wang html]# vim .htaccess   创建点开头的隐含文件

authuserfile   /var/www/.htpasswd     //账号库密码的位置

authname   "please input your name and passwd"  //说明文字

authtype    basic                 //安全类型

require     valid-user             //针对的用户

将文件编辑为如此

[root@wang html]# cd ..        进入账号库文件放置的目录下

[root@wang www]# htpasswd -c .htpasswd wang   创建一个账号库文件且加入一个用户名为wang

然后提示输入密码

[root@wang www]# htpasswd .htpasswd centos         创建第二个账户

[root@wang www]# service httpd restart   重启httpd服务

然后浏览器访问测试下

提示需要输入账号密码

输入账号密码后成功访问

二:来源控制的实现

[root@wang www]# vim /etc/httpd/conf/httpd.conf   编辑配置文件

将342行修改为

Order deny,allow

343     Allow from 192.168.2.10

344     deny  from all

先deny all,然后allow 192.168.2.10访问

[root@wang www]# service httpd restart    重启httpd

现在我虚拟机ip为192.168.2.100,访问测试下

无法登陆

将ip改为192.168.2.10访问

成功访问

从日志可以看到访问情况

三.加密访问的实现

Openca

[root@wang www]# rpm -qa |grep openssl

openssl-1.0.1e-15.el6.i686     查看是否安装过相应的包,如果没有安装,请自行安装

[root@wang www]# cd /etc/pki/    进入pki目录

[root@wang pki]# vim tls/openssl.cnf    编辑证书配置文件

找到此内容,修改为:

其中45行的index.txt  51行的serial  CA目录里没有,需要建个这文件

[root@wang modules]# cd /etc/pki/CA/

[root@wang CA]# touch index.txt

[root@wang CA]# touch serial

[root@wang CA]# echo "01" >serial  将serial加入编号

[root@wang CA]# openssl genrsa >private/cakey.pem  生成私钥文件放入当前private文件夹里的cakey

[root@wang CA]# cd private/

-rw-r--r--. 1 root root 887 Aug 18 16:59 cakey.pem

[root@wang private]# chmod 600 cakey.pem   (改变文件的权限以达到安全的目的)

[root@wang CA]# openssl req -new -key private/cakey.pem -x509 -out cacert.pem  输出公钥

错误!未找到目录项。

出现了输入名字,如果想要改变默认值可以编辑

[root@wang pki]# vim tls/openssl.cnf

修改成

然后下面这些是默认值:

修改即可    然后执行

[root@wang CA]# openssl req -new -key private/cakey.pem -x509 -out cacert.pem

这些可以选择默认,也可以自己修改

[root@wang CA]# ll /media/cdrom/Packages/|grep ssl  需要安装和ssl相关的模块,先查询下

[root@wang CA]# yum --disablerepo=\* --enablerepo=c6-media install mod_ssl -y  然后安装

[root@wang CA]# rpm -ql mod_ssl   查询下是否安装成功

[root@wang CA]# vim /etc/httpd/conf.d/ssl.conf   可以查看证书配置文件

[root@wang CA]# mkdir /etc/httpd/certs  创建个cert目录

[root@wang CA]# cd /etc/httpd/certs/

[root@wang certs]# openssl genrsa >httpd.key  生产私钥给我当前目录新建的http.key文件

[root@wang certs]# chmod 600 httpd.key   更改权限达到安全的目的

[root@wang certs]# openssl req -new -key httpd.key -out httpd.req  相对于http.key私钥生成公钥

-----

Country Name (2 letter code) [CN]:

State or Province Name (full name) [BEIJING]:HENAN

Locality Name (eg, city) [BEIJING]:ZHENGZHOU

Organization Name (eg, company) [Default Company Ltd]:HAHA

Organizational Unit Name (eg, section) []:QQ

Common Name (eg, your name or your server's hostname) []:www.qq.com

Email Address []:

自己选择填写的选项

[root@wang certs]# openssl ca -in httpd.req -out httpd.cert  给httpd颁发证书

[root@wang pki]# cd /etc/pki/CA/

[root@wang CA]# cat index.txt

V150818112629Z01unknown/C=CN/ST=HENAN/O=HAHA/OU=QQ/CN=www.qq.com

文件里有了文件

[root@wang certs]# vim /etc/httpd/conf.d/ssl.conf     将证书跟web服务器捆绑

105 SSLCertificateFile /etc/httpd/certs/httpd.cert改为证书所在的目录

112 SSLCertificateKeyFile /etc/httpd/certs/httpd.key   私钥文件所在目录

[root@wang certs]# service httpd configtest

Syntax OK       语法检测正确

[root@wang certs]# service httpd restart   重启httpd服务

[root@wang certs]# netstat -tupln |grep httpd

tcp        0      0 :::80                       :::*                        LISTEN      6664/httpd

tcp        0      0 :::443                      :::*                        LISTEN      6664/httpd

查看httpd端口,一个是明文端口80,一个是密文端口443,。

进行测试

提示需要安装证书

证书信息正是自己设置的,成功!如果不想每次访问的时候都提示安装证书可以使用域名访问,我这里做个简单的host代替dns

编辑此目录下的host文件

加入192.168.2.50   输入自己颁发的域名即可  即可

linux下的web安全机制,linux http服务器web网页的不同安全机制相关推荐

  1. 推荐两款支持在linux下运行ASP.NET网站的国产免费WEB服务器软件

    推荐两款支持在linux下运行ASP.NET网站的国产免费WEB服务器软件 1.kangle kangle web server是一款跨平台(windows/linux/bsd).功能强大.安全稳定. ...

  2. linux下能运行python,(转)Linux下运行python

    原文: http://blog.csdn.net/jackywgw/article/details/48847187 在linux命令行下运行python,可以直接输出hello world jack ...

  3. linux下用C语言实现TCP/IP服务器与客户端互相发送数据的socket编程

    linux下用C语言实现TCP/IP服务器与客户端互相发送数据的socket编程 server.c #include <sys/stat.h>#include <fcntl.h> ...

  4. linux格式化大于2t硬盘分区,linux下大于2tb硬盘格式化及挂载,linux下大于2t的分区方法,linux gpt分区表 管理 自动挂载分区...

    linux下大于2tb硬盘格式化及挂载,linux下大于2t的分区方法,linux gpt分区表 管理 自动挂载分区 (7页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找 ...

  5. Linux下编写UDP/TCP版本的服务器和客户端的流程

    Linux下编写UDP/TCP版本的服务器和客户端的流程 文章目录 Linux下编写UDP/TCP版本的服务器和客户端的流程 一:UDP和TCP的区别 二.UDP编写服务器的步骤 三.UDP编写客户端 ...

  6. linux 下查看应用版本信息,Linux下查看版本信息

    Linux下如何查看版本信息, 包括位数.版本信息以及CPU内核信息.CPU具体型号等. 1.# uname -a   (Linux查看版本当前操作系统内核信息) 2.# cat /proc/vers ...

  7. bind dns mysql,linux下bind9.8+dlz+mysql 的dns服务器局域网配置

    linux下bind9.8+dlz+mysql 的dns服务器局域网配置 安装1.mysql 我用的二进制包安装 groupadd mysql useradd -r -g mysql -s /sbin ...

  8. linux下github上传文件,linux下将本地文件上传到github中?

    今天编写一份Python基础代码,经过Linux上传到github上,遇到点问题,已经解决 1.首先sudo su 进入root 用户 2.ls 检查出当前文件下有什么文件 3. cd 进入你将要上传 ...

  9. linux下查看文件的权限,Linux下查看文件权限、修改文件权限的方法

    查看权限命令查看目录的相关权限可以采用命令ls -lD,或者直接用ls -la 如 ls -l www.jb51.net  //这里表示查看www.jb51.net目录 修改权限命令 chmod 77 ...

  10. linux下的zz命令,[zz]Linux下压缩命令

    一.Linux下和windows下的压缩文件的几个说明 在Windows下最常见的压缩文件就只有两种,一是,zip,另一个是.rar.可是Linux就不同了,它有.gz..tar.gz.tgz. bz ...

最新文章

  1. [Bjoi2014]大融合
  2. 只有程序员才有的十大烦恼
  3. linux添加vfat分区,浅析mkfs.vfat如何在arm开发板上创建fat32独立分区
  4. 九章算法 | 骑士的最短路线-BFS
  5. QT入门安装篇+helloworld(辛酸血泪)
  6. 超级简便的容器化部署工具(使用 ASP.NET Core 演示)
  7. 1039 到底买不买(pat乙级、C++)
  8. 存储对手机性能的影响
  9. JS 前端排序 数组指定项移动到最后
  10. 阿里云服务器域名解析
  11. 吴恩达深度学习2.1练习_Improving Deep Neural Networks_Regularization
  12. 鸿蒙OS应用开发_基础篇_编写第一个HarmonyOs应用_体会HarmonyOs的一次开发多端部署_以及分布式任务调度_IDE安装_了解应用组件以及应用布局---HarmonyOs开发工作笔记001
  13. 局域网即时通讯软件java_如何选择企业即时通讯软件?
  14. 聊聊浏览器(webkit)资源加载机制
  15. 古今中外著名14大悖论
  16. Google maps及51ditu的图片切割及存储方法2
  17. 【STM32】RTC实时时钟,步骤超细详解,一文看懂RTC
  18. Coursera | Applied Data Science with Python 专项课程 | Applied Machine Learning in Python
  19. 手机怎么模拟弱网_手游测试之模拟弱网环境测试
  20. eclipse java混淆打包,Android Studio和eclipse混淆打包总结

热门文章

  1. 使用SESSION实现PHP会话的步骤
  2. poj 3026 Borg Maze
  3. eclipse如何导入okhttp 2.x源码
  4. useradd/adduser 添加用户
  5. linux 读取权限目录权限,文件的读取与写入权限《 Linux 文件与目录权限 》
  6. 点线面的意义_如何运用设计中的点线面?
  7. python数据抓取与实战_Python数据抓取技术与实战 pdf
  8. 为什么grab显示无法定位_西门子SIPARTPS2阀门定位器的故障处理
  9. 计算机网络管理的应用,计算机网络管理技术及应用
  10. linux gcc编译模式,在Linux中GCC详细模式输出说明