
aws의 S3 서비스 S3는 Simple Storage Service의 약자로 확장성, 데이터 가용성, 보안 및 성능을 제공하는 객체 스토리지 서비스이다. Spring으로 이미지 업로드 하는 방법 0. 준비 작업 spring으로 이미지 업로드를 구현하기 전에 aws에서의 준비 작업이 필요하다. 0-1. 버킷생성 S3 서비스로 들어가서 주황색 버튼인 버킷 만들기를 눌러 버킷을 하나 생성해준다. 퍼블릭 액세스가 차단되어 있으면 403에러가 발생할 수 있기 때문에 만들 때 아래와 같이 [모든 퍼블릭 액세스 차단] 사항을 해제해 주고 생성한 후에 버킷 정책을 설정하는 방법을 사용한다. 이를 통해 기본적으로는 버킷의 접근을 허용하지만 정책을 통해 권한을 막는다. 버킷 정책을 만들기 위해, 생성한 버킷의 '권한' ..
프로젝트를 새로 시작하면서 서버를 구축하려는데 까먹은게 많아서 구축하는데 애를 먹었다. 다음에 구축할 때는 까먹지 않기 위해 총정리를 해보았다. 1. 인스턴스 생성 - 생성한 후에 탄력적 IP 주소를 미리 할당해줘야 나중에 인스턴스를 껐다 켜도 IP주소가 바뀌지 않음 - 인바운드에 ssh:22(내 IP) / http:80 / https:443(ssl 적용하기 위해) / Mysql:3306(내 IP) 추가 2. Rds 생성 2-1. 인바운드에 Mysql:3306(인스턴스 IP) 추가 2-2. 외부 접속 : DataGrip/Workbench 등을 이용해 엔드포인트, 사용자이름, 비밀번호 입력해서 test connection -> apply 2-3. 설계한 디비 넣기 3. 도메인 생성 - 가비아같은 도메인 제..

subdomain 적용 가비아에서 subdomain 생성 가비아 홈페이지에서 - MY 가비아 - DNS 관리 툴 - DNS 설정 - 레코드 수정을 누른 후 아래와 같이 적용한다. 값/위치는 자신의 도메인 주소로 한다. 나는 test, product 두개의 서브 도메인을 만들었다. 서브도메인을 위한 디렉토리 생성 /var/www/html$ mkdir test /var/www/html$ mkdir product 디렉토리를 만들 때 권한이 없다는 에러가 뜬다. /var/www/html$ sudo chmod -R 777 . #모든 파일의 모든 권한 획득 이렇게 권한을 설정한 후에 다시 위처럼 디렉토리를 생성해주고 각 디렉토리안에 html, php등 원하는 파일을 하나 만든다. 나는 각 디렉토리에 product...

domain 적용 가비아에서 도메인 구매 가비아에서 원하는 이름의 도메인을 산 후에 도메인 적용만 해주면 된다. 가비아 홈페이지에서 - MY 가비아 - DNS 관리 툴 - DNS 설정 - 레코드 수정을 누른 후 아래와 같이 적용한다. 값/위치는 자신의 인스턴스 ip주소로 한다. www는 도메인앞에 www를 붙였을 때고 @는 아무것도 붙이지 않았을 때이다. 도메인 적용된 모습 https 적용 certbot 설치 및 설정파일 수정 ~$ sudo add-apt-repository ppa:certbot/certbot ~$ sudo apt install python-certbot-nginx #ssl을 설정하기위해 nginx 설정파일 수정 ~$ sudo vi /etc/nginx/sites-available/defa..

MySQL 외부접속하기 먼저 root로 접속하면 보안에 취약하기 때문에 안전하게 접속할 사용자 계정을 하나 생성해준다. ~$ sudo mysql -u root -p mysql> create user '계정이름' identified by '비밀번호'; mysql> grant all privileges on *.* to '계정이름'; #사용자에게 권한 부여 mysql> FLUSH PRIVILEGES; #변경한 권한 즉시 반영 외부 접속을 허용 하기 위해 /etc/mysql/mysql.conf.d/mysqld.cnf 의 설정파일의 bind-address를 0.0.0.0으로 변경해준다. 이후 aws 인스턴스의 인바운드 규칙에서 mysql규칙을 추가해준다. Datagrip을 통한 MySQL접속 datagrip에서..