aws:ec2_아파치_설정
차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판이전 판다음 판 | 이전 판마지막 판양쪽 다음 판 | ||
aws:ec2_아파치_설정 [2021/09/25 17:10] – kieuns | aws:ec2_아파치_설정 [2021/09/25 17:32] – [유저 추가] kieuns | ||
---|---|---|---|
줄 1: | 줄 1: | ||
====== EC2 아파치 설정 ====== | ====== EC2 아파치 설정 ====== | ||
+ | |||
+ | ===== EC2 인스턴스 접속 ===== | ||
+ | |||
+ | **예시** | ||
+ | |||
+ | linux (for wiki) | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | |||
+ | SSH 클라이언트를 엽니다. | ||
+ | |||
+ | 프라이빗 키 파일을 찾습니다. | ||
+ | |||
+ | 필요한 경우 이 명령을 실행하여 키를 공개적으로 볼 수 없도록 합니다. | ||
+ | |||
+ | < | ||
+ | > chmod 400 aws-keyfair.pem | ||
+ | </ | ||
+ | |||
+ | 퍼블릭 DNS을(를) 사용하여 인스턴스에 연결: (내 맥에서) | ||
+ | |||
+ | < | ||
+ | ssh -i " | ||
+ | </ | ||
+ | |||
+ | 설정 파일 | ||
+ | |||
+ | ''/ | ||
+ | |||
+ | |||
+ | |||
+ | ==== EC2 웹 설치 ==== | ||
+ | |||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | ==== EC2 웹 실행 ==== | ||
+ | |||
+ | < | ||
+ | sudo systemctl start httpd | ||
+ | </ | ||
+ | |||
+ | * 웹 서버가 시스템 부팅 때마다 시작 : '' | ||
+ | * 문서의 루트 디렉터리 ''/ | ||
+ | |||
+ | ====== EC2 웹 설치 ====== | ||
+ | |||
+ | > ec2 인스턴스에 ssh 접속한 뒤에 콘솔로 커맨드 실행 | ||
+ | |||
+ | 패키지 업데이트 < | ||
+ | |||
+ | < | ||
+ | > sudo yum update -y | ||
+ | </ | ||
+ | |||
+ | yum install 명령을 사용하여 설치할 수 있는 패키지들 | ||
+ | < | ||
+ | > sudo yum install -y (뒷부분은 아래줄에) | ||
+ | |||
+ | >> httpd24 php72 mysql57-server php72-mysqlnd | ||
+ | </ | ||
+ | |||
+ | php72 등을 설치하려면 다른 커맨드를 써야 되는데, 아래쪽에. | ||
+ | |||
+ | |||
+ | |||
+ | ===== 아파치 설치 ===== | ||
+ | |||
+ | 할일 순서 | ||
+ | |||
+ | * 아파치 설치 | ||
+ | * '' | ||
+ | * 폴더 권한 변경 | ||
+ | |||
+ | **아파치 설치** | ||
+ | |||
+ | < | ||
+ | > sudo yum install -y httpd | ||
+ | </ | ||
+ | |||
+ | 아파치 서버의 기동은 아래쪽에. | ||
+ | |||
+ | **'' | ||
+ | |||
+ | Apache httpd는 Apache document root라는 디렉터리에 보관된 파일을 처리합니다. | ||
+ | |||
+ | Amazon Linux Apache 문서 루트는 / | ||
+ | |||
+ | ec2-user 계정에서 이 디렉터리의 파일을 조작할 수 있게 하려면 디렉터리의 소유권과 권한을 변경해야 합니다. | ||
+ | |||
+ | 이 작업을 수행하는 방법에는 여러 가지가 있습니다. | ||
+ | |||
+ | 본 자습서에서는 ec2-user를 apache 그룹에 추가하여 | ||
+ | |||
+ | |||
+ | **사용자(이 경우는 ec2-user)를 apache 그룹에 추가합니다.** | ||
+ | |||
+ | < | ||
+ | > sudo usermod -a -G apache ec2-user | ||
+ | </ | ||
+ | |||
+ | 로그아웃하고 다시 로그인한 다음, 새 그룹을 선택하고 멤버십을 확인합니다. | ||
+ | |||
+ | * 로그아웃합니다(exit 명령을 사용하거나 터미널 창 닫기). < | ||
+ | > exit </ | ||
+ | |||
+ | apache 그룹의 멤버십을 확인하려면 인스턴스에 다시 연결한 후 다음 명령을 실행합니다. | ||
+ | |||
+ | < | ||
+ | > groups | ||
+ | ec2-user wheel apache | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | **폴더 권한 변경** | ||
+ | |||
+ | |||
+ | /var/www 및 그 콘텐츠의 그룹 소유권을 apache 그룹으로 변경합니다. | ||
+ | |||
+ | < | ||
+ | [ec2-user ~]$ sudo chown -R ec2-user: | ||
+ | </ | ||
+ | |||
+ | 그룹 쓰기 권한을 추가하여 나중에 하위 디렉터리에 대한 그룹 ID를 설정하려면 /var/www와 그 하위 디렉터리의 디렉터리 권한을 변경합니다. | ||
+ | |||
+ | < | ||
+ | [ec2-user ~]$ sudo chmod 2775 /var/www | ||
+ | [ec2-user ~]$ find /var/www -type d -exec sudo chmod 2775 {} \; | ||
+ | </ | ||
+ | |||
+ | 그룹 쓰기 권한을 추가하려면 /var/www 및 그 하위 디렉터리의 파일 권한을 반복하여 변경합니다. | ||
+ | |||
+ | < | ||
+ | [ec2-user ~]$ find /var/www -type f -exec sudo chmod 0664 {} \; | ||
+ | </ | ||
+ | |||
+ | 실행할 커맨드를 모아둠. | ||
+ | |||
+ | < | ||
+ | [ec2-user]$ sudo chown -R ec2-user: | ||
+ | [ec2-user]$ sudo chmod 2775 /var/www | ||
+ | [ec2-user]$ find /var/www -type d -exec sudo chmod 2775 {} \; | ||
+ | [ec2-user]$ find /var/www -type f -exec sudo chmod 0664 {} \; | ||
+ | [ec2-user]$ | ||
+ | </ | ||
+ | |||
+ | 이제 ec2-user와 apache 그룹의 향후 멤버는 Apache document root에서 파일 추가, 삭제, 편집을 할 수 있고, | ||
+ | 이를 통해 사용자는 정적 웹 사이트 또는 PHP 애플리케이션과 같은 콘텐츠를 추가할 수 있습니다. | ||
+ | |||
+ | ==== 웹서버(아파치) 기동 ==== | ||
+ | |||
+ | Apache 웹 서버를 시작합니다. | ||
+ | < | ||
+ | > sudo service httpd start | ||
+ | </ | ||
+ | |||
+ | chkconfig 명령을 사용하여 Apache 웹 서버가 매번 시스템이 부팅할 때마다 시작되도록 합니다. | ||
+ | |||
+ | < | ||
+ | sudo chkconfig httpd on | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== PHP 설치 ===== | ||
+ | |||
+ | php7 이상을 설치하기 | ||
+ | |||
+ | * [[aws: | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | |||
+ | ====== 유저별 디렉토리 설정 : 유저 개별 웹주소 갖게 ====== | ||
+ | |||
+ | * 2021-06-15 기준 | ||
+ | * 아파치 '' | ||
+ | |||
+ | |||
+ | ===== 유저 이름 웹 접속 (~UserID) ===== | ||
+ | |||
+ | 일반 유저 폴더에 접속 할 수 있게 UserDir 설정. | ||
+ | * 접속 주소 : %%http:// | ||
+ | |||
+ | 아파차 메인 설정에서는 건드릴 부분이 없다. | ||
+ | * ''/ | ||
+ | |||
+ | 위의 파일 아래 부분에 보면 | ||
+ | |||
+ | < | ||
+ | IncludeOptional conf.d/ | ||
+ | </ | ||
+ | |||
+ | 핵심 설정 이외에 수정하고 싶은 개별 기능들은 '' | ||
+ | |||
+ | 이 폴더에 가보면 '' | ||
+ | 이 파일의 내용을 변경하면 유저 개별 폴더에 웹 접속이 가능하다. | ||
+ | |||
+ | * ''/ | ||
+ | |||
+ | 아래 설정대로 | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | 유저의 웹페이지 저장용 폴더 이름은 '' | ||
+ | |||
+ | |||
+ | < | ||
+ | < | ||
+ | # | ||
+ | # UserDir is disabled by default since it can confirm the presence | ||
+ | # of a username on the system (depending on home directory | ||
+ | # permissions). | ||
+ | # | ||
+ | #UserDir disabled | ||
+ | |||
+ | # | ||
+ | # To enable requests to /~user/ to serve the user's public_html | ||
+ | # directory, remove the " | ||
+ | # the following line instead: | ||
+ | # | ||
+ | UserDir public_html | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | 이 아래 부분에 ''< | ||
+ | 다른거 설정해보려다가 다시 되돌리니까 동작 했었다. | ||
+ | |||
+ | ===== 서비스 재시작 ===== | ||
+ | |||
+ | < | ||
+ | # 내리고 | ||
+ | sudo systemctl stop httpd | ||
+ | # 다시 올리자. | ||
+ | sudo systemctl start httpd | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | =====폴더 권한 변경===== | ||
+ | |||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | ===== 다른 유저로 ssh 접속 ===== | ||
+ | |||
+ | 새 유저로 ssh 접속용 키를 만들어야겠지만 대신 지금의 '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | 새 유저로 현재 콘솔에서 로그인 하자. '' | ||
+ | |||
+ | 같은 폴더를 만들고, 같은 파일을 만들어서 복사해둔 키를 저장한다. | ||
+ | |||
+ | * **.ssh** 폴더는 권한을 **700**으로 변경한다. | ||
+ | * **authorized_keys** 파일은 **600** 으로 파일 권한을 변경한다. | ||
+ | * '' | ||
+ | |||
+ | |||
+ | |||
+ | ===== 유저 추가 ===== | ||
+ | |||
+ | **정식** | ||
+ | |||
+ | 유저를 추가하고 ssh 키로 로그인할 수 있는 설정이 설명된 도움말 | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | |||
+ | <code bash> | ||
+ | # 유저 추가 | ||
+ | sudo adduser new_user | ||
+ | # ec2인스턴스가 우분투인 경우 | ||
+ | # sudo adduser new_user --disabled-password 로 실행 | ||
+ | |||
+ | # 해당 유저로 로그인 | ||
+ | sudo su - new_user | ||
+ | |||
+ | #사용할 ssh키를 저장할 파일 만들기 | ||
+ | # mkdir ~/.ssh | ||
+ | # ~/ | ||
+ | </ | ||
+ | |||
+ | **어디선가 가져옴** | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | 아래는 유저를 추가하기 위한 스크립트, | ||
+ | |||
+ | {{ : |
aws/ec2_아파치_설정.txt · 마지막으로 수정됨: 2024/04/23 22:43 저자 127.0.0.1