安全认证https服务器的搭建

互联网中安全验证的重要性不言而喻,今天就讲下https服务器的搭建,最后会测试从浏览器到访问经过安全验证的服务器。废话少数,进入正题。

先普及下文件后缀的意义:

                *.key:密钥文件,一般是SSL中的私钥;

    *.csr:证书请求文件,里面包含公钥和其他信息,通过签名后就可以生成证书;

    *.crt, *.cert:证书文件,包含公钥,签名和其他需要认证的信息,比如主机名称(IP)等。

    *.pem:里面一般包含私钥和证书的信息。

再普及下ssl证书的意义:

1,CA证书,也叫根证书或者中间级证书。如果是单向https认证的话,该证书是可选的。不安装CA证书的话,浏览器默认是不安全的。
   2,服务器证书,必选项。通过key,证书请求文件csr,再通过CA证书签名,生成服务器证书。
   3,客户端证书,可选项。若有客户端证书则是双向https验证。

1.openssl的安装:

./config --prefix=/usr/local --openssldir=/usr/local/openssl
make
make install
安装过程中遇到了加载不到库的错误,解决方案如下:
sudo ln -s /usr/local/lib/libssl.so.1.1 /usr/lib/libssl.so.1.1; sudo ln -s /usr/local/lib/libcrypto.so.1.1 /usr/lib/libcrypto.so.1.1)

2.apache的安装:

./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre 
make 
make install
开启服务:sudo /usr/local/apache/bin/apachectl start/stop/restart.
在/usr/local/apache/htdocs创建test.html文件
, 打开浏览器localhost/test.html可以测试下apache是否安装成功

3.生成根证书和秘钥:

mkdir /usr/local/apache/conf/ssl.crt
cp /usr/local/ssl/misc/CA.pl /usr/local/apache/conf/ssl.crt
cd /usr/local/apache/conf/ssl.crt
./CA.pl -newca
生成结果:demoCA/private/cakey.pem是CA证书的私钥文件,demoCA/cacert.pem是CA证书。

4.生成服务器证书:

a)生成服务器私钥:

openssl genrsa -des3 -out server.key 1024
输入加密密码,用 128 位 rsa 算法生成密钥,得到 server.key 文件。

b)生成服务器证书请求( CSR )

openssl req -new -key server.key -out server.csr
CSR( Certificate Signing Request)是一个证书签名请求,在申请证书之前,首先要在服务器上生成 CSR,并将其提交给 CA 认证中心,CA 才能签发 SSL 服务器证书。
也可以认为,CSR 就是一个在服务器上生成的证书。

c)生成服务器证书:

如果不使用 CA 证书签名的话,用如下方式生成:
openssl req -x509 -days 1024 -key server.key -in server.csr > server.crt
如果使用 CA 证书签名,用 openssl 提供的工具 CA.sh 生成服务器证书:
mv server.csr newreq.pem
./CA.pl -sign
mv newcert.pem server.crt

签名证书后,可通过如下命令可查看服务器证书的内容:
openssl x509 -noout -text -in server.crt
可通过如下命令验证服务器证书:
openssl verify -CAfile ca.crt server.crt

5.生成客户端证书:

a)生成客户端私钥:

openssl genrsa -des3 -out client.key 1024

b)生成客户端证书请求:

openssl req -new -key client.key -out client.csr

c)生成客户端证书(使用ca证书签名):

openssl ca -in client.csr -out client.crt

d)把证书格式转换成浏览器认识的pkcs12格式

openssl pkcs12 -export -clcerts -in client.crt -inkey client.key -out client.pfx

6.编辑配置文件/usr/local/apache/conf/httpd.conf

开启: LoadModule ssl_module modules/mod_ssl.so
去掉以下语句的注释, Include conf/extra/httpd-ssl.cfg
# Secure (SSL/TLS) connections
Include conf/extra/httpd-ssl.cfg
#

7.编辑/usr/local/apache/conf/extra/httpd-ssl.cfg

根据实际修改如下:
SSLCertificateFile "/usr/local/apache/conf/ssl.crt/server.crt"
SSLCertificateKeyFile "/usr/local/apache/conf/ssl.crt/server.key"
SSLCertificateChainFile "/usr/local/apache/conf/ssl.crt/ca.crt"
SSLCACertificatePath "/usr/local/apache/conf/ssl.crt"
SSLCACertificateFile "/usr/local/apache/conf/ssl.crt/cacert.pem"等

最后把client.pfx导入浏览器就OK了

测试结果如图:


### 回答1: Radius认证服务器是一种用于用户认证和授权的网络协议。搭建Radius认证服务器可以提供更高的网络安全性和用户管理便利性。 首先,搭建Radius认证服务器需要选择合适的服务器操作系统,如Linux或Windows Server。然后,在服务器上安装并配置Radius服务器软件,如FreeRADIUS或Microsoft Network Policy Server。 在配置Radius服务器时,需要设置服务器的IP地址、端口号、认证方式和密钥等基本参数。比如,可以选择使用PEAP或EAP-TTLS等加密认证协议,以保证用户的身份安全。 接下来,需要创建Radius服务器上的用户数据库。可以使用本地数据库或连接外部数据库,如MySQL或Active Directory。在数据库中,可以添加和管理用户的账号和密码,并给予不同的权限和认证方式。 在Radius服务器上,还需要配置客户端设备的接入控制策略。可以根据需要,设置不同的认证方式、访问限制和审计日志等。 最后,测试和验证Radius服务器的运行状态。可以使用Radius客户端工具,如NTRadPing或RadTest,进行用户认证和授权测试。确保Radius服务器能够正常对接入的设备和用户进行认证和授权。 总之,搭建Radius认证服务器可以为网络提供更高的安全性和用户管理便利性。正确配置和管理Radius服务器,可以有效地保护网络资源和用户信息的安全。 ### 回答2: Radius(Remote Authentication Dial In User Service)是一种广泛应用于网络认证与授权的协议。搭建Radius认证服务器可以提供强大的身份验证和访问控制功能。以下是Radius认证服务器搭建的简要步骤: 1.选择合适的操作系统:可以选择类Unix操作系统,如Linux或FreeBSD。 2.安装Radius服务器软件:根据所选的操作系统,安装合适的Radius服务器软件,如FreeRADIUS或OpenRADIUS。 3.配置Radius服务器:打开服务器配置文件,通常是radiusd.conf或radius.conf,根据需要进行一些基本配置,如指定监听IP地址、端口号和共享密码等。 4.配置用户数据库:一般会使用数据库管理用户信息,如MySQL或PostgreSQL。在Radius服务器配置文件中,指定数据库服务器的地址、用户名、密码和数据库名称。 5.创建用户账号:在数据库中创建用户账号,包括用户名、密码和所属的组或角色等信息。 6.配置客户端设备:在Radius服务器配置文件中,定义客户端设备的IP地址和共享密码。 7.启动Radius服务器:在命令行界面输入启动命令,启动Radius服务器。 8.测试认证功能:使用客户端设备连接到网络,输入用户名和密码进行认证,验证Radius服务器是否正常工作。 9.进一步配置:根据需求,可以进一步配置Radius服务器,如增加额外的认证方式、配置访问控制策略等。 10.监控和维护:定期监控Radius服务器的运行状态,处理日志和错误报告,及时进行维护和升级操作。 通过以上步骤,可以成功搭建Radius认证服务器,提供可靠的网络认证和授权服务。 ### 回答3: Radius(Remote Authentication Dial-In User Service)是一种用于网络访问身份验证和授权的协议。搭建一个Radius认证服务器需要进行以下步骤: 首先,选择一个适合的操作系统来搭建服务器,常用的有Windows Server和Linux系统。根据选择的操作系统,安装相应的服务器软件,例如Windows Server系统可以安装Internet Authentication Service(IAS)或Network Policy Server(NPS),Linux系统可以安装Freeradius软件。 安装完服务器软件后,配置服务器的基本参数。包括IP地址、端口号等。此外,还需要为服务器生成证书,以确保通信的安全性。 接下来,配置服务器的用户和组。这些用户和组用于认证和授权用户访问网络。可以通过本地数据库、LDAP服务器或其他外部身份验证源来配置用户和组。 在配置用户和组之后,进行身份验证和授权设置。定义认证方法,如用户名/密码、数字证书或其他认证方式。同时,定义授权策略,指定每个用户或用户组可访问的资源和权限。 最后,进行网络设备的配置。将网络设备连接到Radius服务器,并在设备上配置Radius客户端设置。这样,当用户尝试访问网络设备时,设备将向Radius服务器发送身份验证请求,并根据服务器的响应来授权用户访问。 整个过程需要仔细配置服务器和网络设备,确保服务器和设备之间的通信正常。此外,还需要保护服务器安全,定期更新系统和软件补丁,设置访问控制和日志记录,以避免安全威胁。 以上是Radius认证服务器搭建的基本步骤,但实际操作时可能会有一些差异,具体的步骤和设置取决于所使用的服务器软件和操作系统版本。在搭建过程中,可以参考相关的官方文档或网络教程来进行操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值