首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

为Apache增加SSL安全保护

& 简介:   Netscape公司提出的安全套接层(Secure Sockets Layer)的概念,简称SSL。顾名思义,这是一个建立在Socket层的安全协议,它屏蔽了高层协议如telnet、ftp、http的区别,把安全建立在了传输之上。目前该协议以被广泛采纳,它所定义的很多功能都成了下一代IP协议IPV6的一部分。 & 所需资源:    &1.2.1 所需包  1. Apache 1.3.19.tar.gz 下载网址: http://www.tux.org/pub/net/apache/dist/apache_1.3.17.tar.gz  2. openssl 0.9.6 要用他来生成密钥和签署证书 下载网址: http://www.openssl.org/source/openssl-0.9.6.tar.gz  3. mod_ssl 2.8.0 下载网址: http://www.modssl.org/source/mod_ssl-2.8.0-1.3.19.tar.gz    &1.2.2 安装过程  1. 编译 OpenSSL: cd /usr/local tar zxvf openssl-0.9.6.tar.gz cd /usr/local/openssl-0.9.6 ./config --prefix=/usr/local/openssl #注意,这里是 config 而不是 configure。 make make test make install  2. 编译MOD_SSL cd /usr/local tar zxvf mod_ssl-2.8.0-1.3.19 cd /usr/local/mod_ssl-2.8.0-1.3.19 ./configure --with-apache=../apache_1.3.19  3. 编译apache cd /usr/local tar zxvf apache_1.3.19 cd /usr/local/apache_1.3.19 SSL_BASE=../openssl-0.9.6 \ ./configure --prefix=/usr/local/apache_1.3.19 \ --enable-module=ssl \ --enable-shared=ssl make  4.生成CA make certificate TYPE=custom 说明:这一步要生成你自己的 CA (如果你不知道,我也不能细说了,简单地说就是认证中心),和用它来为你的服务器签署证书。 STEP 0: 选择算法,使用缺省的 RSA STEP 1: 生成 ca.key,CA的私人密钥 STEP 2: 为CA生成X.509的认证请求 ca.csr 要输入一些信息: Country Name: cn 国家代码,两个字母 State or Provice name: An Hui 省份 Locality Name: Bengbu 城市名 Organization Name: Home CA 组织名,随便写吧 Organization Unit Name: Mine CA Common Name: Mine CA Email Address: sunstorm@263.net 我的Email Certificate Validity: 4096 四千多天,够了吧 STEP 3: 生成CA的签名,ca.crt STEP 4: 生成服务器的私人密钥,server.key STEP 5: 生成服务器的认证请求,server.csr 要输入一些信息,和STEP 2类似, 不过注意 Common Name是你的网站域名,如 www.mydomain.com Certificate Validity不要太大,365就可以了。 STEP 6: 为你的服务器签名,得到server.crt STEP 7-8: 为你的 ca.key 和 server.key 加密,要记住pass phrase。 下面完成apache的安装 make install vi /usr/local/apache/conf/httpd.conf 修改BindAddress 和 ServerName 如果要改变 DocumentRoot 要记得把httpd.conf里SSL Virtual Host Conte

01

深入理解nginx的https sni机制

SNI(Server Name Indication)是一种TLS(Transport Layer Security)协议的扩展,用于在建立加密连接时指定服务器的主机名。在使用单个IP地址和端口提供多个域名的服务时,SNI是非常有用的。  当客户端发起TLS握手时,它会发送一个包含所请求主机名的扩展,这样服务器就可以根据这个主机名选择合适的证书来完成握手。这使得服务器能够在同一IP地址和端口上为多个域名提供加密连接,而不需要为每个域名分配一个独立的IP地址。  对于HTTPS网站来说,SNI是至关重要的,因为它允许服务器在同一IP地址上为多个域名提供加密连接,不需要为每个域名单独部署一台服务器,从而降低了运维成本并提高了灵活性。  在使用SNI时,服务器端必须能够根据客户端发送的SNI信息来选择正确的证书进行握手。通常,服务器端配置会包含多个虚拟主机的证书信息,以便根据收到的SNI信息选择正确的证书来完成握手。  总的来说,SNI允许客户端在TLS握手期间指定所请求的主机名,从而使服务器能够根据主机名选择正确的证书,实现一个IP地址上多个域名的加密连接。

01
领券