Apache的配置以及其他相关工作

首先

我們在這裡將從安裝Apache開始介紹相關設定事項。

前提条件

虚拟盒子
游牧者
Cent0S7

请参考本文,我们正在介绍构建方面的内容。

操作步骤

在这里,我们将介绍使用yum进行安装的方法。

$ sudo yum install -y httpd

以下是命令的内容,作为“sudo(root用户)”,使用“yum”来“安装”所有内容都是关于使用“-y(是)”来安装“httpd”。关于daemon的部分在这里省略不提及…

用命令来启动。

$ sudo service httpd start

我会写下Apache的命令。

  コマンド    内容       service httpd startApache起動    service httpd restartApache再起動    service httpd stopApache停止    service httpd statusApacheが起動しているかの確認

如果能够访问到默认页面,可以尝试通过以下两种方式之一从网页访问:
1. 从网页中输入http://XXX.XXX.XXX.XXX(ip地址):XXXX(端口号)
2. 从网页中输入http://localhost:xxx
这样就可以确定是否成功。

设定

既然安装已经完成,那么接下来我将介绍设置的内容。我将写一些比安装更深入的内容。

Apache的自动启动

使用上面的方法,每次启动服务器都必须重新启动Apache。
因此,我们要进行自动启动的设置。
这里将介绍使用”systemctl”的方法。

$ systemctl enable httpd

请您重新启动并确认一下。
如果能够成功启动,那就算是成功了。

我会简单列出命令列表。请分别输入{Unit}(本次是httpd)的组件。

   コマンド        内容  systemctl enable {Unit}サービス自動起動の設定systemctl disable {Unit}サービス自動起動の無効systemctl is-enabled {Unit}サービス自動起動設定確認

设置文件

我們接下來要介紹有關設定檔的部分。
這裡要解釋的是「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>
スクリーンショット 2020-04-08 12.42.44.png

一旦呈现出来,就表示成功了。

您可以通过编辑此处的选项来将任意文件夹设置为文档根目录。

接下来

这是一个例子。


<Directory "/var/www"> #ディレクトリ "/var/www"のオプションを設定する
    AllowOverride None 
    #Allow open access:
    Require all granted
</Directory>

我想简要谈一下每个内容。

允许覆盖

   設定値       内容  None無効にするAll有効にする

我們還可以對特定事物施加限制,但由於需要寫的內容太多,所以我們省略不寫了。

需要求。这是访问控制的设置。

設定値               内容  all granted全てのアクセスを許可all denied全てのアクセスを拒否ip {IPアドレス}指定のIPアドレスのみ許可method ~特定のメソッドのみ許可

由于篇幅原因,尽管我想详细地写,但是这里就不再赘述了。

请使用以下任一方式将以下内容翻译成中文: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进行连接。

スクリーンショット 2020-04-08 15.36.33.png
スクリーンショット 2020-04-08 15.37.38.png

成功是肯定的,尽管表现可能不太理想。

為了練習,按鍵長度也很隨意,而且沒有加入SAN屬性。

我希望這對於設置證書時能提供一些提示。

赠品

在进行Https连接时需要指定端口。

/etc/httpd/conf.d/ssl.conf

可以通过设置来进行设置。

Listen 443 https

您可以自定义更改初始设置中的 “443”,并且请不要忘记重新启动Apache。

因为以上的自署证明书通常并不常用,所以这并不是一个经过认证的页面,但如果有时间的话,我会考虑制作一份。

广告
将在 10 秒后关闭
bannerAds