본문 바로가기
개발 환경 및 오류

AWS : LAMP 웹 서버 설치

by 노랑파랑 2017. 1. 4.
반응형





LAMP

Linux Apache MySQL(MariaDB) PHP(Perl,Python)의 약자

저렴한 비용, 쉽게 구할 수 있어 인기가 있다.

그 외에 WAMP(Windows Apache MySQL PHP), WIMP(Windows IIS Apache MySQL)등이 있다.

ubuntu에 설치 링크

Amazon Linux에 LAMP를 설치하는 것은 centOS와 같음.





설치

1. 인스턴스 최신 상태 확인 겸 업데이트

sudo yum update -y

2. 설치 

sudo yum install httpd24 php56 mysql55-server php56-mysqlnd

3. Apache 웹 서버 시작

sudo service httpd start

centOS : sudo systemctl start httpd.service

4. Apache가 재부팅때마다 실작되도록 한다.

sudo chkconfig httpd on

centOS : sudo systemctl enable httpd.service

   4-1. 명령어의 성공 확인

chkconfig --list httpd

5. Apache 웹 서버 테스트

웹 브라우저에 퍼블릭 IP나 퍼블릭 DNS 입력

※ 현 설치는 Amazon Linux(centOS기반)와 에 설치이므로 다른 인스턴스는 방화벽을 구성할 필요가 있다.

※ centOS와 마찬가지로 Apache Document root 디렉토리는 /var/www/html이다. (기본 : root 소유권)





/var/www 디렉토리의 소유권 설정

1. www 그룹을 인스턴스에 추가

sudo groupadd www

2. 사용자 추가

sudo usermod -a -G www 사용자이름

3. 로그아웃 후 www 그룹 멤버 확인

exit

groups

4. /var/www 및 그 콘텐츠의 그룹 소유권을 www 그룹으로 변경

sudo chown -R root:www /var/www

5. /var/www 및 그 하위 디렉토리의 권한을 변경해서 그룹 쓰기 권한 추가, 미래 하위 디렉토리에서 그룹 ID 설정

sudo chmod 2775 /var/www

find /var/www -type d -exec sudo chmod 2775 {} \;

6. /var/www 및 하위 디렉토리의 파일 권한을 계속 변경하여 그룹 쓰기 권한 추가

find /var/www -type f -exec sudo chmod 0664 {} \;






LAMP 웹 서버 테스트

1. 간단한 php 문서 생성

echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php

2. php 파일의 URL을 웹브라우저에 입력하여 테스트

http://Public DNS 또는 IP/phpinfo.php






MySQL 서버 보안 유지

▷MySQL 서버의 기본 설치는 테스트 및 개발 기능에 유용한 기능을 여러 포함하고 있지만, 프로덕션 서버에서는 비활성화되거나 제거되어야 한다. 그러므로 루트 암호를 설정하고 설치 패키지에서 보안성이 낮은 기능을 제거하는 과정을 거친다.


1. MySQL 시작

sudo service mysqld start

2. mysql_secure_installation 실행

sudo mysql_secure_installation

3. root 암호 입력. 기본적으로 root 계정은 암호를 가지고 있지 않으므로 Enter -> Y -> 암호생성(2번입력)

※ 어플리케이션의 데이터베이스 서비스 사용자를 만들고 데이터베이스 관리 이외 어떤 목적으로도 root 계정을 사용하지 않는다.

4. Y (익명 사용자 계정 제거) -> Y (원격 root 로그인 비활성화) -> Y (테스트 데이터베이스 제거) -> Y (권한 테이블 재로드, 변경사항 저장)

5. (선택) MySQL 종료나 서버 부팅시 자동으로 시작되도록한다.

sudo service mysqld stop

sudo chkconfig mysqld on


반응형