728x90 ASAC36 [ASAC 06] Shell, Linux 명령어 이 글은 ASAC 06기를 수강하며 강의 자료 참고 및 추가 자료 수집을 통해 작성된 글입니다.Shell 종류Bourne Shell (sh, 쉘 혹은 본쉘) : AT&T 벨 연구소의 스티븐 본 개발쉘을 수행할때 : #!/bin/sh = 상단에 셔뱅(shebang)을 추가한 뒤 스크립트를 작성(Batch File)Bourne-Again Shell (bash, 바쉘 혹은 배쉬) : GNU 프로젝트 일환 개발, 유닉스 계열 운영체제 기본 쉘Z Shell (zsh, 지쉘) : 커스텀이 자유로워 예쁜 테마를 가진 쉘을 사용할 수 있고, 인터렉티브가 훨씬 개선ZShell > Bash > Shell 순서로 최적화루트 > 일반 > 게스트 계정 순서로 높은 권한Bash 명령어쉘 시작 or 설정 재로딩 명령어source .. 2024. 9. 12. [ASAC 06] CORS 이 글은 ASAC 06기를 수강하며 강의 자료 참고 및 추가 자료 수집을 통해 작성된 글입니다. CORS(Cross Origin Resource Sharing)웹 브라우저에서 유저 비의도적 요청(CSRF, 해커에 의한 악의적인 요청)에 대한 '부분적' 방어 정책'부분적'의 의미 : 완벽하게 CSRF를 방어하지 못한다는 의미W3C는 가장 먼저 SOP(Same Origin Policy)라는 정책 표준을 도입함.=> Same Origin만 허용API 호출이 사실상 필수인 프론트엔드 개발자들로부터 비난을 받은 후, 추가 정책인 CORS를 도입하여프론트엔드 개발자들이 자바스크립트를 통해 특정 조건하에서 API 호출을 자유롭게 할 수있게 했다.Domain, Origin, Site의 차이점Domain : aaron... 2024. 9. 11. [ASAC 06] HTTPS 이 글은 ASAC 06기를 수강하며 강의 자료 참고 및 추가 자료 수집을 통해 작성된 글입니다. HTTPS (HTTP Secured, TLS)웹 통신 내 End-to-End 회선 보호SSL(Secure Sockets Layer) 혹은 TLS(Transport Layer Security) 프로토콜을 통해 HTTP 보안 강화HTTPS 목적요청을 보내고, 응답을 받는 두 주체 (End-to-End)만 HTTPS 요청 및 응답을 읽을 수 있게 암호화목적 : MITM(Man-In-The-Middle) 공격 방지스니핑 (Sniffing) : Wireshark 사용 모든 웹 서핑 패킷 도청 가능패킹 주입 (Packing Injection) : DHCP/ARP로 LAN 내 컴퓨터 인지 후 패킷을 대신 받아 조작 주입A.. 2024. 9. 11. [ASAC 06] 웹 저장소 (쿠키, 세션, 웹 스토리지) 이 글은 ASAC 06기를 수강하며 강의 자료 참고 및 추가 자료 수집을 통해 작성된 글입니다. HTTPHTTP는 Stateless하다는 특징을 가지고 있는 프로토콜이다. Stateless하다는 것은 어떤 웹사이트가 요청한 것인지 식별할 수 없는 것이다.Stateless하게 관리되는 이유는 최소한의 자원으로 서버 유지를 가능케 하기 위함이다. 이처럼 서버는 HTTP 통신 자체만으로는 클라이언트를 식별할 수 없기 때문에 추가적인 도구들을 사용해야 한다. 그 도구들이 바로 쿠키와 세션이다.Stateful HTTP : Cookie & Session쿠키와 세션을 사용해 HTTP 통신의 상태 유지가 가능하다. 웹 서버는 웹 브라우저의 요청이 어떤 유저에 의한 요청인지 구분하기 위해 응답 반환 시 요청자 정보를 함.. 2024. 9. 11. [ASAC 06] 프록시 사용 목적, 기능과 예시 이 글은 ASAC 06기를 수강하며 강의 자료 참고 및 추가 자료 수집을 통해 작성된 글입니다. 웹 브라우저 성능 개선 및 웹 서버 부하 완화를 위하여 캐시와 프록시를 사용할 수 있다.이번 글에서는 프록시에 대해서 알아보겠다.Proxy프록시는 대리자를 의미하며 서버 부하 완화 및 보안을 위해 존재한다.클라이언트(브라우저) 혹은 서버의 대리자로 다양한 기능들을 앞서서 처리한다. Proxy 기능보안 : IP 은닉. 프록시 서버를 방화벽으로 사용속도 (캐시) : 동일 요청에 대한 캐시 자원 반환. 전송 시간 절약, 네트워크 병목 현상 방지.ACL : 우회와 블록을 위한 사이트 접근 범위 정책 정의 (서브넷 단위의 방화벽)Log / Audit : 리포트, 모니터링. 회사 내 직원의 인터넷 / 인트라넷 사용을 .. 2024. 9. 1. [ASAC 06] 캐시 2편 - 헤더 설정 이 글은 ASAC 06기를 수강하며 강의 자료 참고 및 추가 자료 수집을 통해 작성된 글입니다. HTTP Cache 동작 : 검증을 통한 준실시간성 보장캐시는 임시(반영구적) 저장을 위한 전략이자 실시간성을 아예 포기하는 것이 아닌 준실시간성을 보장하는 정책이다.특정 주기에 따라 재검증하여 어느 시점까지는 실시간성을 보장한다. 그렇기 때문에 실시간성이 매우 중요한 데이터는 성능에 문제가 되더라도 캐시는 사용하지 않는 것이 맞다. 준실시간성 보장을 위해서 재검증을 한다고 하였는데, 재검증의 목적은 다음과 같다. 재검증의 목적만료된 데이터의 삭제준실시간성 보장조건부 요청재검증 방법은 조건부 요청을 사용하는 것이다.=> 재검증 기준에 되는 값을 서버로 보낸다. 조건부 요청은 데이터를 보기 위한 요청이 아닌 .. 2024. 9. 1. [ASAC 06] 캐시 1편 - 사용 목적과 위치에 따른 분류 이 글은 ASAC 06기를 수강하며 강의 자료 참고 및 추가 자료 수집을 통해 작성된 글입니다. 웹 브라우저 성능 개선 및 웹 서버 부하 완화를 위하여 캐시와 프록시를 사용할 수 있다.이번 글에서는 캐시에 대해서 알아보겠다.Cache캐시 사용의 목적웹의 본질은 요청과 응답이다. 웹 브라우저는 웹 서버에게 요청을 하고 응답을 받으며, 웹 서버는 웹 브라우저의 요청에 따라서 응답을 만들고 반환한다. 응답은 HTTP Resource로 보통 웹 페이지, 영상, 음성, 이미지 등을 담고있다. 웹의 성능은 요청을 보냈을 때 가능한 빠르게 받는 것이며, 웹의 성능이 좋다면 웹 페이지 로드 시간을 단축시킬 수 있다. 하지만 매번 요청을 하고 응답을 받는 것은 힘들다. 요청을 하고 응답을 받을 때 네트워크 비용이 소모.. 2024. 9. 1. [ASAC 06] 수평적 확장에 의한 다중 서버에서의 배포 전략 이 글은 ASAC 06기를 수강하며 강의 자료 참고 및 추가 자료 수집을 통해 작성된 글입니다. 배포 전략로드밸런서의 등장으로 인해 수평적 확장을 사용해 다수의 웹 서버를 동시에 운용할 수 있게 되었다. 따라서 웹 애플리케이션의 버전 변경을 위한 재배포에서 하나의 웹 서버만 바꾸는 것이 아니라 모든 다수의 웹 서버를 새로운 버전으로 바꾸는 재배포가 필요하다. 이에 다음과 같은 배포 전략들이 등장하였다. Rolling구버전 서버를 하나 죽이기 -> 신버전 서버를 하나 살리기반복 버전 간 트래픽이 섞이지 않는다.이미 갖고 있는 인스턴스 수 안에서 점진적 배포가 되기 때문에, 추가 비용이 발생하지 않고 수용성(capacity)이 좋다. Rolling은 Rolling with Additional Batch나 I.. 2024. 8. 28. 이전 1 2 3 4 5 다음 728x90