自己没事会整理一些小知识,复习原来的同时也帮助新手。

vvvvvvvvvvvvv开启apache目录验证vvvvvvvvvvvvvv

htpasswd -cm uers redhat   //redhat用户是虚拟的用户uers为生成加密用户的密码文件

# htpasswd -cm uers redhat   //第二次这样输入它会把第一次的输入覆盖掉

[root@redhat httpd]# cat uers

redhat:$apr1$8X/YcAoY$xlwRboAtWudU26krVPoyD1

# htpasswd -m uers westos //少个c就不会覆盖原先的

[root@redhat httpd]# cat uers

redhat:$apr1$8X/YcAoY$xlwRboAtWudU26krVPoyD1

westos:$apr1$HUl2zxD9$CI2YcuhNO68hEqch3ttMn1

编辑Apache的配置文件

<Directory "/var/www/html/admin">

AllowOverride ALL

authuserfile "/etc/httpd/uers"

authname "input your name "

authtype basic

require valid-user   //指的是所有用户

#  require user admin  //这个指的是单个用户

</Directory>

测试时ip+admin(目录)

vvvvvvvvvvvvvvapache虚拟主机的配置vvvvvvvvvvvvvvvvv

cd /var/www //2个发布目录

# mkdir html1

# cd html1/

vim index.html

/var/www/html

vim index.html

apache的配置文件

NameVirtualHost *:80   //打开80端口

<VirtualHost *:80>  //配置apche的配置文件

DocumentRoot /var/www/html  //这个是Apache默认发布目录

ServerName redhat.example.com

ErrorLog logs/redhat.example.com-error_log

CustomLog logs/redhat.example.com-access_log common

</VirtualHost>

<VirtualHost *:80>

DocumentRoot /var/www/html1 //这个目录和上面那个不是一个目录,看清这个是“html1”

ServerName www.example.com

ErrorLog logs/www.example.com-error_log

CustomLog logs/www.example.com-access_log common

</VirtualHost>

客户端

# vim /etc/hosts

192.168.3.30   redhat.example.com

192.168.3.30    www.example.com 在浏览器中分别输入redhat.example.com   www.example.com域名

vvvvvvvvvvvvvvvvvvvvApache加密证书的制作vvvvvvvvvvvvvvvvvvvvvvvvvvv

# yum install mod_ssl -y  //按装mod_ssl软件包

/etc/pki/tls/private

# rm -rf localhost.key   //默认安装好软件包回生成一对私钥

/etc/pki/tls/certs

# rm -rf localhost.crt  //删除公钥

# make localhost.crt //自己生成一对公私钥

localhost.crt   localhost.key

# /etc/init.d/httpd restart //重启apche服务会提示输入密码

Enter pass phrase:

# openssl --help

# openssl genrsa 1024

# openssl genrsa 1024 > localhost.key //导出私钥

# make localhost.crt  //编辑公钥

# /etc/init.d/httpd restart  //重启系统发现不会提示让你输入密码

https://www.example.com/

redhat.example.com

https://redhat.example.com/   //发现不同的域名访问到的内容是相同的,说明虚拟主机有问题 redhat.example.com

/etc/httpd/conf.d/  //配置ssl.conf它所使用的端口为443

# vim ssl.conf

NameVirtualHost *:443   //写在ssl文件中的其实就是Apache虚拟主机的内容,port由80变为443,只是多了带色的那几行,仅此而已

<VirtualHost *:443>

SSLEngine on

SSLCertificateFile /etc/pki/tls/certs/localhost.crt

SSLCertificateKeyFile /etc/pki/tls/private/localhost.key

DocumentRoot /var/www/html

ServerName redhat.example.com

ErrorLog logs/redhat.example.com-error_log

CustomLog logs/redhat.example.com-access_log common

</VirtualHost>

<VirtualHost *:443>

SSLEngine on

SSLCertificateFile /etc/pki/tls/certs/localhost.crt

SSLCertificateKeyFile /etc/pki/tls/private/localhost.key

DocumentRoot /var/www/html1

ServerName www.example.com

ErrorLog logs/www.example.com-error_log

CustomLog logs/www.example.com-access_log common

</VirtualHost>

# /etc/init.d/httpd restart

客户端测试

https://www.example.com/

www.example.com

https://redhat.example.com/

redhat.example.com

<Apache服务的搭建"三件套"《目录验证》《虚拟主机》《加密证书》>的更多相关文章

  1. 简单物联网:外网访问内网路由器下树莓派Flask服务器

    最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...

  2. 利用ssh反向代理以及autossh实现从外网连接内网服务器

    前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...

  3. 外网访问内网Docker容器

    外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...

  4. 外网访问内网SpringBoot

    外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...

  5. 外网访问内网Elasticsearch WEB

    外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...

  6. 怎样从外网访问内网Rails

    外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...

  7. 怎样从外网访问内网Memcached数据库

    外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...

  8. 怎样从外网访问内网CouchDB数据库

    外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...

  9. 怎样从外网访问内网DB2数据库

    外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...

  10. 怎样从外网访问内网OpenLDAP数据库

    外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...

随机推荐

  1. C#开源项目

    原文:  http://alance.iteye.com/blog/693987 一.AOP框架        Encase 是C#编写开发的为.NET平台提供的AOP框架.Encase 独特的提供了 ...

  2. 【PHP代码审计】 那些年我们一起挖掘SQL注入 - 5.全局防护Bypass之宽字节注入

    0x01 背景 首先我们了解下宽字节注入,宽字节注入源于程序员设置MySQL连接时错误配置为:set character_set_client=gbk,这样配置会引发编码转换从而导致的注入漏洞.具体原 ...

  3. 【PHP代码审计】 那些年我们一起挖掘SQL注入 - 4.全局防护Bypass之二次注入

    0x01 背景 现在的WEB程序基本都有对SQL注入的全局过滤,像PHP开启了GPC或者在全局文件common.php上使用addslashes()函数对接收的参数进行过滤,尤其是单引号.二次注入也是 ...

  4. 关于在Android设置全局变量随时获取context

    最实在的办法就是继承Application,在里面设置全局变量,因为Application是android的应用入口,并且运行周期贯穿整个程序运行. import android.app.Applic ...

  5. CSS浮动属性Float到底什么怎么回事,下面详细解释一下

    float 是 css 的定位属性.在传统的印刷布局中,文本可以按照需要围绕图片.一般把这种方式称为“文本环绕”.在网页设计中,应用了CSS的float属性的页面元素就像在印刷布局里面的被文字包围的图 ...

  6. TF-IDF算法扫盲2

    TF-IDF算法是一种简单快捷的文档特征词抽取方法,通过统计文档中的词频来对文档进行主题分类.TF-IDF(term frequency–inverse document frequency)是一种统 ...

  7. 问题集-- SQL 约束名不能重复

    今天看书整理笔记的时候,无意发现一个问题,记录下来: 前段时间做练习曾经创建过一个tbl_student的表,         create table tbl_student(            ...

  8. IT项目技术建议书核心内容

    第一部分:概述部分 该部分的重点是理解标书,理解项目建设的背景,建设该项目的初衷究竟是什么?需要解决的核心关键问题是什么?基于对项目的理解然后明确项目建设的目标,项目建设的原则,项目本事的定位,项目建 ...

  9. 【AsyncTask整理 1】 AsyncTask几点要注意的地方

    问题1:AsyncTask是多线程吗? 答:是. 问题2:AsyncTask与Handler相比,谁更轻量级? 答:通过看源码,发现AsyncTask实际上就是一个线程池,而网上的说法是AsyncTa ...

  10. 重构24-Remove Arrowhead Antipattern(去掉箭头反模式)

    基于c2的wiki条目.Los Techies的Chris Missal同样也些了一篇关于反模式的post.  简单地说,当你使用大量的嵌套条件判断时,形成了箭头型的代码,这就是箭头反模式(arrow ...