Apache的配置以及其他相关工作
首先
我們在這裡將從安裝Apache開始介紹相關設定事項。
前提条件
虚拟盒子
游牧者
Cent0S7
请参考本文,我们正在介绍构建方面的内容。
操作步骤
在这里,我们将介绍使用yum进行安装的方法。
$ sudo yum install -y httpd
以下是命令的内容,作为“sudo(root用户)”,使用“yum”来“安装”所有内容都是关于使用“-y(是)”来安装“httpd”。关于daemon的部分在这里省略不提及…
用命令来启动。
$ sudo service httpd start
我会写下Apache的命令。
如果能够访问到默认页面,可以尝试通过以下两种方式之一从网页访问:
1. 从网页中输入http://XXX.XXX.XXX.XXX(ip地址):XXXX(端口号)
2. 从网页中输入http://localhost:xxx
这样就可以确定是否成功。
设定
既然安装已经完成,那么接下来我将介绍设置的内容。我将写一些比安装更深入的内容。
Apache的自动启动
使用上面的方法,每次启动服务器都必须重新启动Apache。
因此,我们要进行自动启动的设置。
这里将介绍使用”systemctl”的方法。
$ systemctl enable httpd
请您重新启动并确认一下。
如果能够成功启动,那就算是成功了。
我会简单列出命令列表。请分别输入{Unit}(本次是httpd)的组件。
设置文件
我們接下來要介紹有關設定檔的部分。
這裡要解釋的是「httpd.conf」的設定。
關於這個檔案,如果是CentOS 7的話,
/etc/httpd/conf/httpd.conf
被储存在里面。
DocumentRoot "/var/www/html"
请尝试将index.html文件放入此html文件夹中,这将是Apache启动时要读取的文件。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
test!
</body>
</html>
一旦呈现出来,就表示成功了。
您可以通过编辑此处的选项来将任意文件夹设置为文档根目录。
接下来
这是一个例子。
<Directory "/var/www"> #ディレクトリ "/var/www"のオプションを設定する
AllowOverride None
#Allow open access:
Require all granted
</Directory>
我想简要谈一下每个内容。
允许覆盖
我們還可以對特定事物施加限制,但由於需要寫的內容太多,所以我們省略不寫了。
需要求。这是访问控制的设置。
由于篇幅原因,尽管我想详细地写,但是这里就不再赘述了。
请使用以下任一方式将以下内容翻译成中文:Https
我们将在这里进行https设置。
这次是自我签名,所以我们将简单地创建它。
(证书通常需要支付费用才能获得,所以这只是作为练习)
设置https需要使用名为mod_ssl的模块。
$ sudo yum -y install mod_ssl
由于缺乏根权限,无法执行,请进行更改。
$ su
生成私钥
# openssl genrsa 2024 > server.key
制定CSR
# openssl req -new -key server.key -sha256 -out server.csr
基于CSR生成公钥
# openssl x509 -in server.csr -days 365 -req -signkey server.key -sha256 -out server.crt
将其放入任意文件夹中。
#mkdir /etc/httpd/conf/ssl.public
#mkdir /etc/httpd/conf/ssl.private
#mv server.crt /etc/httpd/conf/ssl.public/
#mv server.key /etc/httpd/conf/ssl.private/
指定公开钥和私密钥。
# vi /etc/httpd/conf.d/ssl.conf
修改内容
#SSLCertificateFile /etc/pki/tls/certs/localhost.crt
SSLCertificateFile /etc/httpd/conf/ssl.public/server.crt
#SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
SSLCertificateKeyFile /etc/httpd/conf/ssl.private/server.key
重新启动
systemctl restart httpd
让我们尝试使用https进行连接。
成功是肯定的,尽管表现可能不太理想。
為了練習,按鍵長度也很隨意,而且沒有加入SAN屬性。
我希望這對於設置證書時能提供一些提示。
赠品
在进行Https连接时需要指定端口。
/etc/httpd/conf.d/ssl.conf
可以通过设置来进行设置。
Listen 443 https
您可以自定义更改初始设置中的 “443”,并且请不要忘记重新启动Apache。
因为以上的自署证明书通常并不常用,所以这并不是一个经过认证的页面,但如果有时间的话,我会考虑制作一份。