Linux Centos 怎么安装更新根证书实现支持https访问

Linux Centos 怎么安装更新根证书实现支持https访问,第1张

1. 使用最小化安装盘安装系统,设置好网络环境配置信息

2. 安装所需工具包

# yum install openssh-server

# yum install wget

# yum update

# yum install setuptool

系统服务配置 # yum install ntsysv

安装网络配置 # yum install system-config-network-tui

防火墙配置 # yum install system-config-firewall

# yum -y install gcc gcc-c++ autoconf make

# yum -y install vim

关机备份 # shutdown -h now

二、安装openssl

切换到/tmp目录下(安装约定软件全放在此目录下)

cd /tmp

# tar zxvf openssl-1.0.0a.tar.gz

# cd openssl-1.0.0a

# ./config --prefix=/usr/local/openssl

# make &&make install

三、创建证书

1.解压工具包

# tar zxvf ssl.ca-0.1.tar.gz

# cd ssl.ca-0.1

2.创建根证书

# ./new-root-ca.sh

No Root CA key round. Generating one

Generating RSA private key, 1024 bit long modulus

....++++++

...................++++++

e is 65537 (0x10001)

Enter pass phrase for ca.key:

Verifying - Enter pass phrase for ca.key:

Self-sign the root CA...

Enter pass phrase for ca.key:

You are about to be asked to enter information that will be incorporated

into your certificate request.

What you are about to enter is what is called a Distinguished Name or a DN.

There are quite a few fields but you can leave some blank

For some fields there will be a default value,

If you enter '.', the field will be left blank.

-----

Country Name (2 letter code) [MY]:cn

State or Province Name (full name) [Perak]:cn

Locality Name (eg, city) [Sitiawan]:cn

Organization Name (eg, company) [My Directory Sdn Bhd]:cn

Organizational Unit Name (eg, section) [Certification Services Division]:cn

Common Name (eg, MD Root CA) []:172.16.17.132 //这里填站点域名,我是测试的就填ip

Email Address []:cn@gmail.com

这个过程要设置证书密码,要记住这个密码后面要用到,还有证书的其它信息:国家、地区、公司名称,域名,邮箱等,这些信息也要记住,与后面创建的证书主体信息一致

3.创建服务器证书

# ./new-server-cert.sh server

...

即创建一个名为server的服务器证书,主体信息与上面的一致就可,我这里就不贴出来了

签名刚才生成的服务器证书

# ./sign-server-cert.sh server

这个过程要输入根证书密码,后面都选Y即可

4.创建客户端证书,如果是单向认证,这一步可以跳过

# ./new-user-cert.sh client

...

这里要注意证书信息不能与其它证书完全一样,这里修改Email与服务器证书不一样就行

签名客户端证书

# ./sign-user-cert.sh client

转换成p12格式证书,这样才能在浏览器上安装

# ./p12.sh client

下载并安装client.p12证书

关机备份 # shutdown -h now

三、安装Apache及其所需依赖软件

# tar zxvf httpd-2.2.23.tar.gz

# cd httpd-2.2.23

# ./configure --prefix=/usr/local/apache \

--enable-ssl \

--enable-rewrite \

--enable-so \

--with-ssl=/usr/local/openssl

# make &&make install

可以启动httpd看看,启动命令是/usr/local/apache/bin/apachectl start,在浏览器中访问看看,显示 It workds!说明安装成功了

四、配置httpd

1.修改httpd.conf

#Include conf/extra/httpd-ssl.conf 把这句前面的#去掉

2.将前面生成的证书拷贝到conf/ssl 下

# mkdir ssl

# cd ssl

# cp /tmp/ssl.ca-0.1/ca.crt ./

# cp /tmp/ssl.ca-0.1/server.* ./

2.修改httpd-ssl.conf

SSLCertificateFile “/usr/local/apache/conf/ssl/server.crt”

SSLCertificateKeyFile “/usr/local/apache/conf/ssl/server.key”

下面是开启客户端认证,如果是单向认证就不用开启了

SSLCACertificateFile “/usr/local/apache/conf/ssl/ca.crt”

SSLVerifyClient require

SSLVerifyDepth 10

五、重启httpd

[root@localhost extra]# ../../bin/apachectl -t

Syntax OK

[root@localhost extra]# ../../bin/apachectl stop

[root@localhost extra]# ../../bin/apachectl -D SSL -k start

六、安装并配置MySQL

1、安装Mysql

添加一个mysql标准组

# groupadd mysql

添加mysql用户并加到mysql组中

# useradd -g mysql mysql

# tar zxvf mysql-5.0.45.tar.gz

# cd mysql-5.0.45

# ./configure \

--prefix=/usr/local/mysql/ \

--with-extra-charsets=all

出现错误:

checking for tgetent in -lncurses... no

checking for tgetent in -lcurses... no

checking for tgetent in -ltermcap... no

checking for tgetent in -ltinfo... no

checking for termcap functions library... configure: error: No curses/termcap library found

分析:缺少ncurses安装包

解决:

# yum install ncurses-devel

# make &&make install

2、配置Mysql

创建MySQL数据库服务器的配置文件

# cp support-files/my-medium.cnf /etc/my.cnf

用mysql用户创建授权表,创建成功后,会在/usr/local/mysql目录下生成一个var目录

# /usr/local/mysql/bin/mysql_install_db --user=mysql

将文件的所有属性改为root用户

# chown -R root /usr/local/mysql

将数据目录的所有属性改为mysql用户

# chown -R mysql /usr/local/mysql/var

将组属性改为mysql组

# chgrp -R mysql /usr/local/mysql

启动数据库

# /usr/local/mysql/bin/mysqld_safe --user=mysql &

查看3306端口是否开启

# netstat -tnl|grep 3306

简单的测试

# /usr/local/mysql/bin/mysqladmin version

查看所有mysql参数

# /usr/local/mysql/bin/mysqladmin variables

设置Mysql开机自启动

# cp /tmp/mysql-5.0.45/support-files/mysql.server /etc/rc.d/init.d/mysqld

# chown root.root /etc/rc.d/init.d/mysqld

# chmod 755 /etc/rc.d/init.d/mysqld

# chkconfig --add mysqld

# chkconfig --list mysqld

# chkconfig --levels 245 mysqld off

3、Mysql安全性设置

没有密码可以直接登录本机服务器

# /usr/local/mysql/bin/mysql -u root

查看mysql用户权限信息

mysql>select * from mysql.user

删除非localhost的主机

mysql>DELETE FROM mysql.user WHERE Host='localhost' AND User=''

刷新授权表

mysql>FLUSH PRIVILEGES

为root用户添加密码

mysql>SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yuwan1986')

再次进入Mysql客户端

# /usr/local/mysql/bin/mysql -u root -h localhost -p

关闭MySQL数据库

# /usr/local/mysql/bin/mysqladmin -u root -p shutdown

七、 安装和配置php

# tar zxvf php-5.2.6.tar.gz

# cd /tmp/php-5.2.6

# ./configure \

--prefix=/usr/local/php \

--with-config-file-path=/usr/local/php/etc \

--with-apxs2=/usr/local/apache/bin/apxs \

--with-mysql=/usr/local/mysql/

# make &&make install

出现依赖错误,直接使用yum安装即可

# yum -y install libxml2 libxml2-devel

简单配置PHP

cp ./php.ini-dist /usr/local/php/etc/php.ini

使用vi编辑apache配置文件

# vim /usr/local/apache/conf/httpd.conf

添加这一条代码

Addtype application/x-httpd-php .php .phtml

重启Apache

# /usr/local/apache/bin/apachectl restart

简单测试一下对PHP的支持

八、安装安装phpMyAdmin

1. 拷贝目录到指定位置并改名为phpmyadmin

# tar zxvf phpMyAdmin-3.3.4-all-languages.tar.gz

# cp -a phpMyAdmin-3.3.4-all-languages /usr/local/apache/htdocs/phpmyadmin

# cd /usr/local/apache/htdocs/phpmyadmin/

# cp config.sample.inc.php config.inc.php

2. 配置phpMyAdmin

# vim /usr/local/apache/htdocs/phpmyadmin/config.inc.php

将auth_type 改为http

$cfg['Servers'][$i]['auth_type'] = 'http'

最后设置开机启动项:

编辑开机启动文件# vim /etc/rc.d/rc.local添加

service mysqld start

/usr/local/apache/bin/apachectl -D SSL -k start

至此简单配置完成,可以安装到服务器上了

windows系统下的教程如下所示:

SSL部署前特别说明

1. 陕西CA SSL服务器证书部署指南(以下简称“本部署指南”)主要描述如何通过第三方系统产生密钥对和如何将SSL服务器证书部署到Apache服务器

2. 本部署指南适用于linux、windows系统下Apache 2.X版本;

获取服务器SSL证书

  获取SSL证书

在您完成申请SNCA服务器证书的流程后,SNCA将会在返回给您的邮件中附上根证书issuer.crt和相应的CA证书。CA证书就是文件就是youdomain.crt和私钥文件youdomain.key,请确认所收到的证书文件是您需要的CA证书。

安装服务器SSL证书

1、打开 apache 安装目录下 conf 目录中的 httpd.conf 文件,

找到 #LoadModule ssl_module modules/mod_ssl.so

(如果找不到请确认是否编译过 openssl 插件)

#Include conf/extra/httpd_ssl.conf 删除行首的配置语句注释符号“#” 保存退出。

2、打开 apache 安装目录下 conf/extra 目录中的 httpd-ssl.conf 文件

a.打开Apache2.2/conf/extra/目录下的httpd-ssl.conf文件,将

”ServerName www.example.com:443”改成您的主机域名,

DocumentRoot指定网页文件路径

(此处的配置和http的80端口配置文件保持一致 )

b.添加SSL协议支持语句,关闭不安全的协议和加密套件

SSLProtocol all -SSLv2 -SSLv3

c.修改加密套件如下

SSLCipherSuite

ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!3DES:!MD5:!ADH:!RC4:!DH:!DHE

d.找到如下三个选项SSLCertificateFile、SSLCertificateKeyFile和SSLCertificateChainFile这三个配置项,将youdomain.crt和youdomain.key 及证书链

issuer.crt文件上传到该目录(这里是/usr/local/apache/conf/sslcert,windows路径自己指定)下:

完整的配置文件如下:

保存退出,并重启Apache,

访问测试

服务器若部署了SSL证书,浏览器访问时将出现安全锁标志;

SSL备份和恢复

在您完成服务器证书的安装与配置后,请务必要备份好您的服务器证书,避免证书遗失给您造成不便:

  备份服务器证书

备份服务器证书私钥文youdomain.key,服务器证书文件youdomain.crt。

2.恢复服务器证书

参照步骤“三、安装服务器证书”即可完成恢复 *** 作。

证书遗失处理

若您的证书文件损坏或者丢失且没有证书的备份文件,请联系SNCA办理遗失补办业务,重新签发服务器证书。

很简单,本部署指南的适用范围:IIS7/8版本。

CA给你邮箱发一份文件,解压获取一个youdomain.pfx格式的证书文件。

1、创建SSL证书控制台

使用windows键+R打开运行窗口输入“mmc”点确定。

打开控制台,点击“文件”=>“添加/删除管理单元”。

找到“证书”点击“添加”。

选择“计算机账户”,点击“下一步”。

最后点完成。

导入PFX证书

在添加的证书管理单元中,选择“证书”- “个人”-“证书”,右键空白处点“所有任务”选择“导入”

进入证书导入向导,点击下一步

导入上面合成的www.yourdomain.com.pfx证书,点击“下一步”输入密码;

选择“根据证书内容自动选择存储区”,点击“下一步”

证书导入成功,右键刷新可以看到。

部署服务器证书

打开IIS控制面板,选中需要配置证书的站点,并选择右侧“编辑站点”下的“绑定”。

选择“添加” 并按以下方式设置。

类型:https;IP地址:默认;端口:443(默认);主机名:IIS8可以选择,IIS7默认不选择;SSL证书:选择导入的服务器证书,点击确定,重启站点生效。

访问测试

服务器若部署了SSL证书,浏览器访问时将出现安全锁标志;

如果不清楚,可以参考:网页链接


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8709012.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-20
下一篇 2023-04-20

发表评论

登录后才能评论

评论列表(0条)

保存