Linux#33. インターネット未接続環境でのdnf
ソフトウェアのインストールにはCentOS8のパッケージ管理ソフトウェアである「dnf」を使用していきますが、デフォルトではインターネットからソフト
ウェアを取得することになります。
ここではインストールメディアからソフトウェアを取得する設定を⾏います。
インストールメディアのISOイメージをCDROMドライブにセットしてあります。
3
手順1
[root@suzukto ~]# mkdir␣/media/CentOS
[root@suzukto ~]# mount␣–o␣ro␣/dev/cdrom␣/media/CentOS/
[root@suzukto ~]# alias␣dnf=‘dnf␣--disablerepo=¥*␣--enablerepo=c8-media-BaseOS,c8-media-AppStream’
手順2 確認
[root@suzukto ~]# df
ファイルシス 1K-ブロック 使用 使用可 使用% マウント位置
devtmpfs 905304 0 905304 0% /dev
tmpfs 934792 0 934792 0% /dev/shm
tmpfs 934792 9832 924960 2% /run
tmpfs 934792 0 934792 0% /sys/fs/cgroup
/dev/mapper/cl-root 13420544 4243772 9176772 32% /
/dev/sda2 999320 191708 738800 21% /boot
/dev/sda1 613184 6908 606276 2% /boot/efi
tmpfs 186956 1180 185776 1% /run/user/42
tmpfs 186956 4672 182284 3% /run/user/0
/dev/sr0 8037456 8037456 0 100% /media/CentOS
[root@suzukto ~]#
#alias
手順3 確認
[root@suzukto ~]# alias
alias cp='cp -i'
alias dnf=‘dnf --disablerepo=¥* --enablerepo=c8-media-BaseOS,c8-media-
AppStream’ ←確認
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
[root@suzukto ~]#
4. Webサーバーのインストールと設定 (1)
Webサーバーソフトウェア httpd のインストール
dnf list httpd
「利用可能なパッケージ」として表⽰されることを確認します。
dnf install httpd
インストールコマンド。httpdをインストールするために必要な依存パッケージも同時にインストールされます。。
「完了しました!」と表⽰されたらインストール完了です。
関連ソフトウェアのインストール
dnf install mod_ssl php
Webサーバーで使用するソフトウェアを2つ追加でインストールします。
mod_ssl はWebサーバーへ暗号化された通信でアクセスするのに必要なモジュールです
phpWebサーバーで動的なコンテンツを配信するために使用します
「完了しました!」と表⽰されたらインストール完了です。
4
利用可能なパッケージ
httpd.x86_64 2.4.37-21.module_el8.2.0+494+1df74eae AppStream
手順4 [root@suzukto ~]# dnf␣list␣httpd
手順5 [root@suzukto ~]# dnf␣install␣httpd
手順6 [root@suzukto ~]# dnf␣install␣mod_ssl php
5. Webサーバーのインストールと設定 (2)
手順7 インストールが完了した事を確認して下さい
手順8 httpdサービスを起動させて下さい
Active(running)を確認して下さい
手順9 firewallに、http、httpsの許可を追加します
手順10 firewallに「http」「https」が追加された事を確認して下さい
5
[root@suzukto ~]# httpd␣-v
Server version: Apache/2.4.37 (centos)
Server built: Jun 8 2020 20:14:33
[root@suzukto ~]# php␣-v
PHP 7.2.24 (cli) (built: Oct 22 2019 08:28:36) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologie
[root@suzukto ~]# rpm␣aq␣|␣grep␣mod_ssl
mod_ssl-2.4.37-21.module_el8.2.0+382+15b0afa8.x86_64
[root@suzukto ~]# systemctl␣start␣httpd
[root@suzukto ~]# systemctl␣status␣httpd
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor
preset: disabled)
Drop-In: /usr/lib/systemd/system/httpd.service.d
mqphp-fpm.conf
Active: active (running) since Wed 2020-12-30 06:09:30 JST; 18s ago
[root@suzukto ~]# firewall-cmd␣--add-service=http
success
[root@suzukto ~]# firewall-cmd␣--add-service=https
success
[root@suzukto ~]# firewall-cmd␣--list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: ens192
sources:
services: cockpit dhcpv6-client ftp http https ssh ←確認
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
7. Webコンテンツの作成
Webコンテンツは /var/www/html に配置します。
手順12 HTMLファイルを作成します
手順13 PHPファイルを作成します
PHPに用意されているPHP設定をHTML出⼒する関数を実⾏します
手順14 ブラウザで表⽰してみます
https://192.168.210.xxx/helloworld.html
https://192.168.210.xxx/phpinfo.php
7
<html>
<head>
<title>sample</title>
</head>
<body>
hello world!
</body>
</html>
<?= phpinfo() ?>
[root@suzukto ~]# touch␣/var/www/html/helloworld.html
[root@suzukto ~]# vi␣/var/www/html/helloworld.html
[root@suzukto ~]# touch␣/var/www/html/phpinfo.php
[root@suzukto ~]# vi␣/var/www/html/phpinfo.php
10. Basic認証(3)
手順19 Apacheの設定ファイルを修正して下さい
コマンド「:set number」で⾏数表⽰をさせて下さい。
変更前
変更後
vi で「yy」ヤンク「p」ペーストが便利です
10
[root@suzukto suzukito]# cp␣-p␣/etc/httpd/conf/httpd.conf␣/etc/httpd/conf/httpd.conf.bak
[root@suzukto suzukito]# ls␣-al␣/etc/httpd/conf/httpd.conf
[root@suzukto suzukito]# vi␣/etc/httpd/conf/httpd.conf
150 # AllowOverride controls what directives may be placed in .htaccess files.
151 # It can be "All", "None", or any combination of the keywords:
152 # Options FileInfo AuthConfig Limit
153 #
154 AllowOverride None
150 # AllowOverride controls what directives may be placed in .htaccess files.
151 # It can be "All", "None", or any combination of the keywords:
152 # Options FileInfo AuthConfig Limit
153 #
154 #AllowOverride None
155 AllowOverride All