[Nginx] 413 Request Entity Too Large 오류
·
Infra & Cloud
문제 상황2024년 2학기 AI를 활용한 회의 지원 솔루션 플랫폼 "Clerker" 프로젝트를 개발할 때 EC2에서 Port forwarding을 위해 nginx를 사용했다. Nginx를 Reverse proxy로 사용할 때, 다음과 같은 에러가 발생했다.413 Request Entity Too Large 413 Request Entity Too Large 에러는 클라이언트가 서버로 전송한 요청의 크기가 서버에서 허용한 크기보다 클 때 발생한다. 이 문제는 특히 파일 업로드 또는 POST 요청 데이터가 많을 때 자주 나타난다.발생 원인1. Nginx 설정의 제한 Nginx는 너무 큰 사이즈의 request를 서버에 전송하지 못하게 제한을 걸 수 있다.request의 Content-Length 헤더값이 여..
[Cloud Computing] 2. 클라우드 Basic Service
·
Infra & Cloud/Cloud Computing
해당 게시글은 국민대학교 이경용 교수님의수업 내용을 바탕으로 작성하였습니다.AWS Infrastructure1. Region & Availability Zone (AZ)물리적 지리적 위치를 기준으로 구성된 자원 세트 하나의 Region 최소 2개 이상의 AZ로 구성됨.  하나의 AZ 안에 여러 데이터 센터로 구성되어있다. 특징AZ 간에는 실패가 전파 되지 않음.AZ 간의 통신 > Region 간의 통신보다 빠름.Amazon Elastic Compute Cloud (EC2)필요에 따라서 사용자는 활용하고자 하는 컴퓨터 특성에 따라서 인스턴스를 선택함.사용하는 만큼 과금됨 [ CPU 활용에 따라 과금되는 것이 아닌, 사용 기간에 따라 과금됨 ] 1. EC2 구성 요소AMI (Amazon Machine Ima..
[Cloud Computing] 1. Distribute System
·
Infra & Cloud/Cloud Computing
해당 게시글은 국민대학교 이경용 교수님의수업 내용을 바탕으로 작성하였습니다. 클라우드 컴퓨팅 서비스컴퓨팅을 하드웨어 관점이 아닌 소프트웨어 관점에서 활용하게 해줌컴퓨터 자원의 초기 구매 없이 필요할 때마다 대여 후 사용하는 서비스컴퓨팅 자원의 유지보수, 관리 부담을 덜어줌컴퓨팅 자원의 소유와 사용의 분리를 통한 대중화 기존의 컴퓨팅 모델과 클라우드 모델기존의 컴퓨팅 모델On-premise 데이터 센터Infrastructure as hardware하드웨어 설치를 위한 공간, 직원, 물리적 보안, 예산 및 계획 필요하드웨어 구입에 오랜 시간이 걸릴 수 있음. 클라우드 컴퓨팅 모델Infrastructure as software탄력적 운영 가능빠르고, 손쉽고 경제적으로 변경 가능하이브리드 클라우드 컴퓨팅 모델 ..
[Spring] AWS SageMaker 엔드포인트 연결 시도하기
·
Back-end/Spring
문제 상황기존 방식대로 Spring WebFlux 에서 HTTP Client로 사용되는 비동기적으로 작동하는 모듈인 WebClient를 활용하여 SageMaker 엔드포인트에 POST 요청을 시도했다. 그런데 CloudWatch에서 요청 시도에 대한 로깅은 찍히는데, 웹서버로 리턴이 들어오지 않는 상황이었다. 알고 보니, AWS SageMaker는 사용하는 IAM에 대한 정보를 바탕으로 AWS Signature를 Header에 담아 전송해야하는 것이었다. 이를 해결하기 위해 Spring에서는 aws sagemaker-runner 라이브러리를 사용해야 한다. 해결 1. build.gradle에 다음과 같은 라이브러리를 추가한다.implementation 'io.awspring.cloud:spring-clo..
[Spring] self-hosted Runner를 통한 CI/CD 배포
·
Back-end/Spring
문제 상황CI / CD 워크플로우에서 직접적으로 EC2 IAM을 활용하여 접속하려고 했는데 CD 과정이 진행되지 않는 상황이 발생했다. workflow.yml 코드는 다음과 같다.- name: Deploy to EC2 uses: appleboy/ssh-action@master with: key: ${{ secrets.EC2_PRIVATE_KEY }} # pem key host: ${{ secrets.EC2_HOST }} # ec2 ip username: ${{ secrets.EC2_USER }} # ec2에서 whoami 명령어로 확인 script: | sudo docker stop $(sudo docker ps -q) sudo docker pull ${{ se..
[AWS] AWS RDS vs AWS Aurora 비교 분석
·
Infra & Cloud/AWS
클라우드 컴퓨팅 관련해서 공부를 하던 도중 RDS DB Instance와 Aurora DB Instance 는 무슨 차이가 있는지 궁금해서 공부해보았다. Amazon RDS란?Amazon Relational Database Service(Amazon RDS)는 클라우드에서 관계형 데이터베이스를 보다 쉽게 ​​설정, 운영 및 확장할 수 있는 웹 서비스이다.기존 데이터베이스 아키텍쳐를 중심으로 완전히 관리되는 추상화 계층 제공RDS 내에서 데이터베이스 플랫폼은 EC2에서 수동으로 수행하는 것 처럼 구축.적절한 AMI (Amazon Machine Image)에서 provisioning 되고, EBS스토리지는 provisioning된 인스턴스에 연결됨.적절한 서브넷 그룹과 보안 그룹이 인스턴스에 연결되는 구조...
Chapter 9 - Attack & Defense (Network Security 3/3)
·
Computer Science/정보 보호와 시스템 보안
Firewall네트워크 보안을 강화하기 위해 Network Gateway에 설치되는 장치 또는 소프트웨어내부 네트워크와 외부 네트워크 간의 트래픽을 필터링하고, 허용 또는 차단하는 역할미리 설정된 보안 규칙에 따라 들어오고 나가는 트래픽을 제어하여 네트워크를 보호한다. 예시 Router 아래에 방화벽을 설치하여 switch 사이에서 in/outbound 패킷들을 모두 검사한다. Firewall rule-set방화벽이 네트워크 트래픽을 필터링하고 제어하기 위해 설정된 규칙들의 모음이 규칙들을 번호 순서대로 검사하여 트래픽을 처리하는데, 첫 번째로 일치하는 규칙이 우선 적용된다.  First match 규칙 처리 : 규칙이 트래픽에 적용되면, 해당 트래픽에 더 이상의 규칙은 적용되지 않음.Packet Fil..
Chapter 9 - Attack & Defense (Network Security 2/3 - TCP/IP level)
·
Computer Science/정보 보호와 시스템 보안
IP Spoofing공격자가 자신의 IP 주소를 위조하여, 마치 다른 장치에서 온 것처럼 속이는 네트워크 공격.피해자는 신뢰할 수 있는 장치로부터 온 패킷으로 인식하여 이를 처리한다.문제1. DoS / DDoS공격자가 위조된 IP 주소를 사용하여 다량의 요청을 서버에 보내 과부하를 유발시켜, 서버가 더 이상 정상적인 요청을 처리할 수 없도록 만들 수 있다.ex> SYN Flooding, Smurf attack2. 추적 불가위조된 Source IP 주소를 사용하므로, 추적이 불가능하다.Session hijacking   Injecting false routing information   Port Scan공격자가 타겟 시스템에서 열린 포트와 실행 중인 서비스를 확인하기 위해 다양한 포트에 패킷을 보내는 과정..