VirtualBox의 CentOS에 Apache 설치

VirtualBox의 CentOS에 Apache 설치

2022-10-06 last update

5 minutes reading 아파치 VirtualBox CentOS
VitrualBox의 CentOS에 Apache를 설치했을 때의 비망록.

환경



다음 기사에서 CentOS의 기본 설정을 한 것을 전제로 하고 있다.
htps : // 이 m / 카즈 _ 카즈 /

MacBook Pro(macOS Catalina 버전 10.15.6)
VirtualBox 6.1.14
CentOS 8.2
아파치 2.4.37

Apache 설치



아래 기사에 따라 설치.
WEB ARCH LABO
Apache httpd 2.4를 CentOS 7에 yum으로 설치하는 방법
ぇtps://우ぇbぁ보. 미안해. 네 t / 아파치 ぇ ㄴ s 탤

소스가 아닌 yum으로 설치합니다.
먼저 패키지 정보를 표시하고 설치할 버전을 확인합니다.
[[email protected] ~]$ yum info httpd
CentOS-8 - AppStream                            4.8 kB/s | 4.3 kB     00:00    
CentOS-8 - Base                                  11 kB/s | 3.9 kB     00:00    
CentOS-8 - Extras                               4.4 kB/s | 1.5 kB     00:00    
利用可能なパッケージ
名前         : httpd
バージョン   : 2.4.37
リリース     : 21.module_el8.2.0+494+1df74eae
Arch         : x86_64
サイズ       : 1.7 M
ソース       : httpd-2.4.37-21.module_el8.2.0+494+1df74eae.src.rpm
リポジトリー : AppStream
概要         : Apache HTTP Server
URL          : https://httpd.apache.org/
ライセンス   : ASL 2.0
説明         : The Apache HTTP Server is a powerful, efficient, and extensible
             : web server.


다음은 설치.
[[email protected] ~]$ sudo yum -y install httpd
[[email protected] ~]$ httpd -v
Server version: Apache/2.4.37 (centos)
Server built:   Sep 15 2020 15:41:16

시작 및 정지 확인


[[email protected] ~]$ systemctl start httpd.service 
==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ====
'httpd.service'を開始するには認証が必要です。
Authenticating as: 
Password: 
==== AUTHENTICATION COMPLETE ====

[[email protected] ~]$ systemctl status httpd.service 
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor pres>
   Active: active (running) since Sat 2020-10-24 16:57:35 JST; 45s ago
     Docs: man:httpd.service(8)
 Main PID: 33732 (httpd)
   Status: "Running, listening on: port 80"
    Tasks: 213 (limit: 4876)
   Memory: 20.9M
   CGroup: /system.slice/httpd.service
           ├─33732 /usr/sbin/httpd -DFOREGROUND
           ├─33737 /usr/sbin/httpd -DFOREGROUND
           ├─33738 /usr/sbin/httpd -DFOREGROUND
           ├─33739 /usr/sbin/httpd -DFOREGROUND
           └─33740 /usr/sbin/httpd -DFOREGROUND


호스트 브라우저에서 http://(ApacheをインストールしたゲストのIPアドレス)를 입력하여 웹 서버에 액세스합니다.
아래 화면이 표시되면 성공.



웹 서버 중지.
[[email protected] ~]$ systemctl stop httpd.service 
==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ====
'httpd.service'を停止するには認証が必要です。
Authenticating as: 
Password: 
==== AUTHENTICATION COMPLETE ====

비호스트 OS에서 액세스 사용



현재 가상 머신의 네트워크 설정은 어댑터 1의 NAT와 어댑터 2의 호스트 전용 어댑터입니다.
호스트, 게스트의 IP 주소 상태는 다음과 같습니다.


OS
인터페이스 이름
IPv4 주소


게스트
enp0s3(NAT)
10.0.2.15

게스트
enp0s8 (호스트 전용 어댑터)
192.168.56.10

호스트
en0
192.168.0.4

호스트
vboxnet0(호스트 전용 어댑터)
192.168.56.1


호스트→게스트의 웹 서버에의 액세스는, 호스트 온리 어댑터에 의해 간단하게 실현할 수 있지만, 호스트 이외에서 동일 LAN내의 액세스(자신의 스마트폰으로부터 게스트에의 액세스 등)는 NAT 경유로 액세스하게 된다.
NAT로 게스트에 액세스하기 위해서는 포트 포워딩 설정을 할 필요가 있다(NAT는, 디폴트라면 호스트나 다른 컴퓨터로부터 액세스 할 수 없는 설정이 되어 있다.).

VM의 설정으로부터, 네트워크 → 어댑터 1 → 고도 → 포트 포워딩에서, 다음과 같이 설정한다 (이름은 적당하고, 호스트 포트는 웰 노운 포트 이외이고 호스트에서 사용하고 있지 않은 포트이면 된다).



게스트 방화벽에서 http를 허용합니다. 호스트 전용 어댑터가 허용하지 않고 연결할 수 있었던 이유는 알 수 없습니다.
[[email protected] ~]# firewall-cmd --add-service=http --permanent 
success
[[email protected] ~]# firewall-cmd --reload 
success
[[email protected] ~]# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: enp0s3 enp0s8
  sources: 
  services: cockpit dhcpv6-client http
  ports: 
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 


게스트로 웹 서버를 기동한 다음, 스마트폰으로 접속을 확인한다(이하의 사진은 호스트 PC의 브라우저의 사진이지만, 스마트폰에서도 마찬가지로 접속할 수 있었다.).



브라우저에 입력하는 IPv4 주소는 게스트의 것이 아니고, 호스트의 IPv4 주소와 포트 포워딩으로 설정한 포트 번호를 입력한다(상술했지만, NAT에서는 직접 게스트에 액세스 할 수 없기 때문에, 호스트 경유로 접속한다.).

NAT나 포트 포워딩에 대해서는 이하의 사용자 매뉴얼을 참고로 했다.
h tp : // / w w ㄉ 아 d.ゃぃr 짠 l보 x. 오 rg/ゔぃr 쭉 l보 x/우세 r 마누아 l. pdf