aws9 AWS S3 버킷 생성 현재 진행중인 프로젝트에서 회원이 올리는 파일을 S3에 올려두려고 하는데, 이 과정을 기록해두고자 한다. 업로드되는 파일들을 모두 서버가 가지고 있는 건 부담이 너무 크기 때문에 s3에 올린 뒤, 그걸 받아와서 화면에 보여줄 예정이다! AWS S3 버킷 생성 1. AWS -> S3 -> 버킷 만들기 2. 일반 구성 & 객체 소유권 3. 퍼블릭 액세스 차단 설정 접근 권한을 전체 오픈할 것인 지, 일부에게만 열 것인 지를 결정하는 부분이다. 지금은 퍼블릭으로 생성하고 추후 필요하다면 제한을 둘 예정! 4. 버킷 버전 관리 - 비활성화 활성화를 한다면 버전별로 파일을 관리해주고 파일 삭제 후 복원도 가능해진다. 그만큼 비용 발생이 있기 때문에 지금은 일단 비활성화를 선택했다. 5. 기본 암호화 설정 -> 버.. 2024. 2. 4. 만든 ERD 구축된 RDS에 반영 및 쿼리 실행하기 ERD를 그려보고 이를 RDS에 반영해서 쿼리를 날려보는 과정을 정리한 글이다. 만든 ERD 구축된 RDS 반영 1. erdcloud에 만든 DB를 내보내기한다 mysql로 선택해서 sql 다운로드(테이블 create문) 했다. 2. 데이터그립으로 RDS 연결 (Workbench로도 가능) 2-1. AWS -> RDS -> 데이터베이스 -> 해당 데이터베이스 -> 엔드포인트 확인 2-2. datagrip rds 접속을 위해 test connection Name: 원하는 이름으로 작성 Host: RDS 엔트포인트 User: RDS 생성시 만든 유저 Password: RDS 생성시 만든 비밀번 하단의 test connection누르니 성공해야하는데 실패했다. 3306 포트로 접속하지 못해서 Connectio.. 2023. 4. 25. AWS RDS(MariaDB) 구축 (feat. 타임존, 인코딩 설정) AWS RDS 인스턴스 생성 및 파라미터 설정에 대해 정리한 글이다. AWS RDS AWS에서 지원하는 클라우드 기반 관계형 데이터베이스로 하드웨어 프로비저닝, 데이터베이스 설정, 패치 및 백업과 같은 잦은 운영 작업의 자동화등을 지원한다. 용량을 조정할 수 있어 예상보다 많은 데이터가 쌓이더라도 추가 비용만 내면 정상적으로 서비스할 수 있다. RDS 인스턴스 생성 1. AWS -> RDS -> 데이터베이스 생성 2. 데이터베이스 생성 방식 - 표준 생성, 엔진 옵션 - MariaDB 선택 엔진 옵션은 원하는 대로 선택하면 되는데, 무료 DB 중 MariaDB를 선택했다. 3. 템플릿 프리티어 선택 엔진 버전은 기본으로 설정되어 있던 버전 그대로 했다. 4. 설정 - DB인스턴스 식별자, 마스터 사용자 .. 2023. 4. 16. AWS Nginx Sub Domain 및 Redirection Sub Domain 주가 되는 도메인의 하위 도메인 ex) blog.naver.com에서 blog 이전에 만든 도메인에 서브도메인을 추가하기 위해 dev.anneproject.shop, prod.anneproject.shop 이 2개를 서브 도메인으로 만들어 보려고 한다. 1. dev, prod 각 서브도메인이 포함된 주소에서 보여줄 파일 작성 $ cd /var/www/html/ $ sudo mkdir dev $ sudo mkdir prod # /var/www/html로 이동한 상태에서 cd dev $ cd dev $ sudo vi index.html # /var/www/html로 이동한 상태에서 cd prod $ cd prod $ sudo vi index.html 2. Nginx 설정 파일 수정 $ s.. 2023. 4. 8. AWS EC2 서버에 HTTPS 적용 Ubuntu 22.04 기준 (feat. Let's Encrypt) 앞서 가비아에서 도메인을 구입해 연결해보았는데, 이 사이트를 들어가보면 위와 같이 주의 요함이라고 나온다. 지금 사이트 접속이 HTTP를 통해 이뤄지고 있는데, HTTP는 브라우저와 서버 사이에서 정보를 평문으로 전송하기 때문에, 네트워크에서 전송되는 정보를 제 3자가 훔쳐볼 수가 있다. 보안을 위해 HTTPS를 사용하도록 수정해줘야 한다. HTTPS 클라이언트와 서버가 먼저 암호화 통신 채널을 설정한 다음 평문 HTTP를 전송함으로써 정보 유출을 막는다. 암호화 채널은 SSL(TLS) 프로토콜을 사용해서 만든다. HTTP에 데이터 암호화가 추가된 프로토콜로 443번 포트를 사용하고 있다. SSL은 서버와 브라우저 사이에 전송된 데이터를 암호화하여 인터넷 연결 보안을 유지하는 표준 기술 네트워크 상에서 .. 2023. 4. 8. AWS EC2 서버에 도메인 연결 이전에 생성한 인스턴스를 ip말고 도메인으로 접속하기 위해 도메인을 연결한다. 도메인 구매를 위해 가비아 사이트를 이용했다. AWS EC2 Ubuntu 도메인 연결 1. 가비아(https://www.gabia.com/)에서 도메인 구매하기 1년사용에 550원(부가세 포함)인 .shop으로 구매했다. 이름은 임의로 정하면 된다. 이미 사용중인 도메인은 사용할 수 없으니 안 겹치도록 작성 결제후 오른쪽 상단에 My가비아 -> 서비스 관리 결제된 도메인이 나온다. 2. 구매한 도메인에 AWS EC2 IP 등록하기 My가비아 -> 서비스 관리 -> 관리 -> 아래로 내려서 DNS 정보 도메인 연결 설정 오른쪽 설정 -> 레코드 수정 -> 레코드 추가 타입: A 호스트: www 값/위치: AWS EC2 인스턴스의.. 2023. 4. 8. AWS EC2 Ubuntu MySQL 외부에서 접속하기 (feat. Workbench, datagrip) 인스턴스에 설치된 mysql에 외부에서 접속하는 과정을 정리한 글이다. 접속할 때, workbench를 사용했다. Mysql 외부 접속 가능 계정 생성 $ sudo mysql -u root -p //root 계정 접속 //외부 접속 허용할 유저 생성 create user '사용자아이디'@'%' identified by '비밀번호'; //해당 유저(사용자아이디)에게 모든 DB 스키마에 대한 권한을 허용 mysql> grant all privileges on *.* to '사용자아이디'@'%'; //권한 변경 저장 flush privileges; //부여된 권한 조회 show grants for '사용자아이디'@'%'; 보안을 위해 root가 아닌 별도의 아이디를 만들어서 사용하는 것을 추천한다고 한다. 비.. 2023. 4. 7. AWS 서버 환경 구축 - Nginx, MySQL, PHP 패키지 설치 및 Nginx와 php 연동 서버 구축에 필요한 패키지를 설치한다. Nginx 엔진X라고 보통 읽으며, 비동기 이벤트 기반 구조의 웹 서버 소프트웨어이다. Apache보다 훨씬 가볍고 높은 성능을 목표로 하는 서버로 웹 서버, 프록시 서버, 리버스 프록시 서버, 메일 서버등의 기능을 가딘다. 정적 파일을 응답해주는 HTTP Web Server로도 쓰이고, Reverse Proxy Server로 WAS의 부하를 줄이기 위한 로드 밸런서의 역할을 하기도 한다. 서버 인스턴스에는 클라이언트의 요청을 받아 처리할 서버 소프트웨어가 필요하다. 웹 서버로 Nginx를 설치한다. Nginx 설치 $ sudo apt update $ sudo apt install nginx 앞서 aws에서 만든 서버는 SSH 프로토콜만 받도록 되어 있기 때문에 인.. 2023. 4. 7. AWS 서버 환경 구축 이전에 책을 따라하며 진행했었는데, 만들 일이 생기면서 이번에 새로 진행 과정에 대해 정리해보고자 작성한다. 먼저 회원가입이 필요하다. AWS 회원가입 1. Master 혹은 Visa 카드를 준비하고 https://aws.amazon.com/ko/ 로 이동해서 계정 생성 2. 절차대로 하다가 마지막에 기본 지원 - 무료 선택 EC2 인스턴스 생성 1. 리전을 서울로 변경 aws 서비스가 구동될 지역을 다른 지역으로 하게되면 속도가 매우 느려진다. 2. EC2 검색 -> 인스턴스 시작 ->인스턴스 이름 작성 및 AMI 선택 서버로 Ubuntu 22.04를 사용할 예정이기에 Ubuntu 22.04를 선택했다. 3. 인스턴스 유형(t2.micro) 및 키 페어 선택(새 키페어생성 -> 키 페어 이름, 키 페어.. 2023. 4. 6. 이전 1 다음