[Web] Oracle Cloud를 활용한 Web Server 환경 구축 (2) - Nginx web server
이번엔 nginx를 활용해 웹을 띄워보도록 하자. 웹에 대한 지식이 전무한 나는, 구글링을 많이 활용했는데 apache와 nginx중에 기능이 많지만 무거운 apache 대신 가벼운 nginx를 쓰기로 결정하였다.
우선 cloud에 접속한다. 접속 후 클라우드에 nginx를 설치 해야한다. 설치에는 몇 분 정도 걸린다.
sudo apt-get install nginx
설치가 완료되면, nginx를 시작하고 localhost부터 웹페이지 파일(html)을 수신받을 수 있는지 확인해보자.
sudo systemctl start nginx
curl localhost
웹페이지는 외부에서 접속해야 그 의미가 있으므로, 이제 외부 접속을 위한 세팅을 해야 한다.
http 통신은 기본적으로 예약된 80번 포트를 사용하고, https 통신에는 443포트를 사용한다고 한다. 그래서 Oracle Cloud에서도 80, 443 포트를 열어주고, 인스턴스 또한 두 포트를 열어줘야 한다. 우선 인스턴스에서 해줘야 하는 것들을 진행하자. 우선 iptable을 초기화 시킨 뒤 리스트를 보자.
sudo iptables -F
그리고 tcp통신으로 80, 443포트로 들어오는 통신을 허용하도록 추가한 뒤 다시 리스트를 살펴보면, 다음과 같이 http, https에 대한 통신을 받도록 되어있다.
sudo iptables -I INPUT 1 -p tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT 1 -p tcp --dport 443 -j ACCEPT
여기서 끝이 아니다. 삽질을 조금 하며 알아낸 결과, 이 인스턴스에서 http서비스에 대한 방화벽 예외 설정을 해줘야 가능하다. 방화벽에 http를 추가하자.
(수정) Ubuntu는 아래 스텝은 필요없다. 이 방법은 내가 초기에 Oracle Linux로 이미지를 생성하였는데, 이 때 발생한 문제이다.
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --reload
이 후 firewall service 목록을 보면 http가 들어가있다.
이제 인스턴스의 설정은 끝났고, Oracle Cloud쪽 설정이 필요하다. 인스턴스를 켜서 Subnet을 선택해 들어가자.
Subnet창에서 default security list를 선택하자.
사진을 보면 나의 경우 이미 추가해 둔 뒤라 80, 443, 8000포트 정보가 있다. 여기서 Add Ingress Rules를 선택하여 80,433 포트를 추가해주면 된다. 이 때 모든 주소들에 대해 허용할 것이므로 SOURCE CIDR쪽에는 0.0.0.0/0을 입력해준다.
이렇게 해주면 이제 외부 접속이 가능하다. 내 인스턴스의 아이피를 인터넷 주소창에 입력하면 기본 웹페이지가 나타난다. 여기까지 하면 기본 환경설정이 완료되었다!
참고 레퍼런스
https://okjsp.tistory.com/1165644380
[평생 무료] 오라클 클라우드 웹서버 삽질후 정리 기록
aws는 free tier가 1년이지만 oracle cloud는 평생(상시常時) 무료라고 합니다. https://www.oracle.com/kr/cloud/free/ 그래서 도전해 봤는데, 삽질을 많이 하고, 경험을 정리해서 올립니다. 1. https://cloud.oracle.com
okjsp.tistory.com
https://brunch.co.kr/@topasvga/3028
1.오라클 클라우드 - 웹 서비스 만들기
본 내용은 개인적으로 작성한 부분이라 틀릴 수 있습니다. 오라클 클라우드 웹 서비스 만들어 보자. 기본 네트워크 구성하고, 퍼블릭에 베스천, 퍼블릭에 웹서버, 프라이빗에 웹서버, 로드 밸
brunch.co.kr