Amazon Linux 서버에서 아파치 웹 서버 설치하는 방법
이 글에서는 Amazon Linux 운영 체제에 아파치 웹 서버를 설치하는 방법을 단계별로 알아보겠습니다. 아마존 리눅스에서 아파치 웹 서버를 설치하고 구성하는 방법에 대해 상세히 알아보겠습니다.
☞ 포스트 기준: Amazon Linux 2023
1. 아파치 설치
Amazon Linux에서 아파치를 설치하기 위해, 터미널을 열고 다음 명령어를 실행합니다.
sudo dnf install httpd
이 명령어는 dnf 패키지 매니저를 사용하여 아파치(httpd 패키지)를 설치합니다.
![Amazon Linux 서버에서 아파치 설치](https://bluesharehub.com/wp-content/uploads/2023/12/image-75-1024x581.png)
![Amazon Linux 서버에서 아파치 설치](https://bluesharehub.com/wp-content/uploads/2023/12/image-75-1024x581.png)
2. 아파치 서비스 시작
아파치를 설치한 후, 다음 명령어로 웹 서버를 시작합니다.
sudo systemctl start httpd
이 명령어는 아파치 웹 서버를 시작합니다. 웹 서버가 요청을 받을 준비가 됩니다.
아파치 서비스가 정상적으로 시작되었는지 확인하기 위해 다음 명령어를 사용할 수 있습니다.
sudo systemctl status httpd
이 명령어는 아파치 서비스의 현재 상태를 보여줍니다. 서비스가 정상적으로 실행 중이라면, ‘active (running)’ 상태로 표시됩니다.
![Amazon Linux 서버에서 아파치 서비스 시작](https://bluesharehub.com/wp-content/uploads/2023/12/image-76-1024x525.png)
![Amazon Linux 서버에서 아파치 서비스 시작](https://bluesharehub.com/wp-content/uploads/2023/12/image-76-1024x525.png)
3. 시스템 부팅 시 아파치 자동 시작 설정
서버가 재부팅될 때마다 아파치가 자동으로 시작하도록 설정하려면, 다음 명령어를 사용합니다.
sudo systemctl enable httpd
이 명령어는 아파치 서비스를 시스템 부팅 시 자동으로 시작하도록 설정합니다.
4. 방화벽 설정
아파치 웹 서버가 외부에서 접근 가능하도록 방화벽 규칙을 설정해야 합니다. Amazon Linux 2에서는 firewalld
서비스를 사용하여 방화벽을 관리할 수 있습니다. 다음은 Amazon Linux 2에서 firewalld
를 설치하고 설정하는 방법입니다.
sudo dnf install firewalld
이 명령어는 Amazon Linux 2에 firewalld
를 설치합니다.
sudo systemctl start firewalld
sudo systemctl enable firewalld
이 명령어들은 firewalld
서비스를 시작하고 시스템 부팅 시 자동으로 활성화합니다.
sudo firewall-cmd --zone=public --add-service=http --permanent
이 명령어는 HTTP 트래픽을 허용합니다.
sudo firewall-cmd --reload
이 명령어는 변경된 방화벽 설정을 적용합니다.
이러한 단계를 통해 Amazon Linux 2 서버에서 firewalld
를 설치하고 구성하여 HTTP 트래픽을 허용하게 할 수 있습니다.
![Amazon Linux 서버에서 방화벽 설정](https://bluesharehub.com/wp-content/uploads/2023/12/image-77-1024x489.png)
![Amazon Linux 서버에서 방화벽 설정](https://bluesharehub.com/wp-content/uploads/2023/12/image-77-1024x489.png)
5. 보안 그룹 설정: HTTP 트래픽 허용
AWS EC2 인스턴스에서 아파치 웹 서버가 외부 요청을 받을 수 있도록 하기 위해서는 보안 그룹 설정에서 HTTP 트래픽(80번 포트)에 대한 인바운드 규칙을 추가해야 합니다. 다음 단계에 따라 설정을 완료할 수 있습니다.
- AWS 관리 콘솔 로그인: AWS 관리 콘솔에 로그인하세요.
- EC2 대시보드로 이동: 상단의 서비스 메뉴에서 ‘EC2’를 선택하세요.
- 인스턴스 선택: ‘인스턴스’ 섹션으로 이동하여 웹 서버를 호스팅하고 있는 인스턴스를 선택하세요.
- 보안 그룹 확인: ‘보안’ 탭에서 인스턴스에 연결된 보안 그룹을 확인하세요.
- 보안 그룹 설정 변경: 보안 그룹을 클릭하고, ‘인바운드 규칙’ 탭으로 이동하세요. ‘인바운드 규칙 편집’을 클릭하고 ‘규칙 추가’를 선택하세요. 다음 설정을 사용하세요:
- 유형: HTTP
- 프로토콜: TCP
- 포트 범위: 80
- 소스: 원하는 범위(예: ‘0.0.0.0/0’으로 설정하면 모든 주소에서 접근 가능)
- 규칙 저장: 설정을 마친 후 ‘저장’을 클릭하여 변경 사항을 적용하세요.
이 설정을 완료한 후에는 웹 브라우저를 통해 인스턴스의 퍼블릭 IP 주소로 접근하여 아파치 기본 페이지를 볼 수 있습니다.
![Amazon Linux 서버에서 보안 그룹 설정 HTTP 트래픽 허용](https://bluesharehub.com/wp-content/uploads/2023/12/image-78-1024x383.png)
![Amazon Linux 서버에서 보안 그룹 설정 HTTP 트래픽 허용](https://bluesharehub.com/wp-content/uploads/2023/12/image-78-1024x383.png)
6. 아파치 테스트 페이지 접근
설치를 마친 후, 웹 브라우저를 열고 서버의 IP 주소나 도메인을 입력하여 아파치 기본 환영 페이지에 접근할 수 있습니다. 페이지에 “It works!” 문구가 표시되는 것을 확인할 수 있다면, 아파치 설치가 성공적으로 완료된 것입니다.
![Amazon Linux 서버에서아파치 테스트 페이지 접근](https://bluesharehub.com/wp-content/uploads/2023/12/image-79.png)
![Amazon Linux 서버에서아파치 테스트 페이지 접근](https://bluesharehub.com/wp-content/uploads/2023/12/image-79.png)
7. 파일 권한 설정
Amazon Linux에서 아파치 웹 서버를 사용할 때, 적절한 파일 권한 설정은 중요합니다. 이를 위해 `ec2-user`를 `apache` 그룹에 추가하고, `/var/www` 디렉토리의 소유권과 권한을 조정합니다. 이 과정을 통해 사용자가 Apache 문서 루트의 파일을 쉽게 관리할 수 있게 됩니다. 다음 단계를 따라 파일 권한을 설정합니다.
sudo usermod -a -G apache ec2-user
sudo chown -R ec2-user:apache /var/www
sudo chmod 2775 /var/www && find /var/www -type d -exec sudo chmod 2775 {} \;
find /var/www -type f -exec sudo chmod 0664 {} \;
이러한 설정을 완료한 후 `ec2-user`는 웹 콘텐츠를 쉽게 추가하고 편집할 수 있습니다.
![파일 권한 설정](https://bluesharehub.com/wp-content/uploads/2023/12/image-94-1024x176.png)
![파일 권한 설정](https://bluesharehub.com/wp-content/uploads/2023/12/image-94-1024x176.png)
관련 이전 게시글
- AWS 가입 및 시작하기: 간단한 단계별 안내
- AWS EC2 인스턴스 생성 방법: 단계별 안내
- AWS EC2 인스턴스에 PuTTY로 접속하는 방법
- CentOS 7에서 아파치 웹 서버 설치하는 방법
- 아파치 웹 서버의 기본 설정 및 관리하는 방법
이 글이 도움이 되었다면 공유해 주세요!