분류 전체보기308 [도커 컨테이너 입문과 활용] 도커 Dockerfile을 이용한 웹 서버 이미지 자동으로 생성 1. docker0 IP 주소 확인 2. Dockerfile을 이용한 웹 서버 이미지 생성 수동으로 도커 컨테이너를 다운로드 받아서 새로운 컨테이너 이미지로 생성을 하는 것을, 자동 스크립트로 이미지를 생성하는 방법 (절차) 1. Dockerfile을 이용한 웹 서버 이미지 생성 2. 파일 명은 Dockerfile로 생성다른 이름으로 생성할 때는 -f 옵션을 줘야 함 3. docker0 네트워크가 인터넷이 잘되는지 꼭 확인 dockerfile 생성 sudo docker build -t docker_web . - 현재 디렉토리에 있는 도커 파일을 들고와 빌드를 진행한다는 의미 sudo docker images - 도커 이미지 생성 확인 sudo docker run -itd -p 8000:80 --name .. 2023. 11. 8. [Node.js] Node.js 실습 - 화면 구성하기 1. Template Engine Template Engine이란? - 공통된 부분을 묶어주는 것 - Node.js에는 EJS, Nunjucks 등의 템플릿 엔진이 존재 2. Template Engine - 확장 Nunjucks 설치 - npm i nunjucks Nunjucks 사용 index.js 수정 import express from 'express'; import path from 'path'; import nunjucks from 'nunjucks'; const __dirname = path.resolve(); const app = express(); // view engine set app.set('view engine', 'html'); // main.html -> main(.html), .. 2023. 11. 8. [Node.js] Node.js 실습 - 서버: Express 1. Express란? Express - 전 세계에서 가장 많이 사용되는 웹 프레임워크, 미들웨어의 연결 - Middleware(미들웨어): 요청과 응답 사이에서 목적에 맞는 일을 수행하는 함수 Express 실습 - index.js 파일 생성 import express from 'express'; const app = express(); // middleware app.listen(3000); - 서버를 구성하는 기본 툴을 작성한것 - 터미널 창에서 코드 실행 2. 서버에서 파일 전송하기 웹 페이지 기획 Express 실습 - index.js에 html 코드 삽입 1. 코드 한 줄을 보낼 때 import express from 'express'; const app = express(); // middl.. 2023. 11. 8. [Azure] 캐시 규칙과 TTL 설정 그리고 캐싱 초기화 1. 기본 캐싱 규칙 - Microsoft CDN 혹은 Verizon CDN, Akamia CDN 등 Azure CDN을 사용하면 기본적으로 적용되는 캐싱 규칙 - 캐싱 정책을 수정하여 TTL 설정 시 사용자 정의 가능한 건 Microsoft CDN에서는 지원하지 않는 기능 - CDN 캐시 기간은 CDN에서는 2일 정도 캐시한다고 이해하면 됨 2. TTL 3. 캐싱 동작 설정 - 재정의는 overwrite한 TTL 값으로 강제로 바꿔줌 4. 캐싱 초기화 5. Pre-Cache - 사용자가 접속하기 전에 origin에 있는 데이터를 pop 서버에 올려놓는 것 참고 https://www.inflearn.com/course/azure-cdn-%EA%B2%8C%EC%9E%84%EA%B0%9C%EB%B0%9C#c.. 2023. 11. 4. [도커 컨테이너 입문과 활용] 워드프레스 설치 후 테마와 플러그인 설치. 멋진 웹 서비스를 만들고 보안도 UP!! - 최신 버전이 아닐 경우, 해킹 당하지 않도록 보안 업데이트 진행 - 젯팻(Jetpack) 플러그인 설치 후 활성화 참고 https://www.youtube.com/watch?v=hzG0QUEUstc&list=PL1jdJcP6uQtvfNf19anO9YJqe-B4nGuAu&index=19 2023. 11. 1. [도커 컨테이너 입문과 활용] 도커 컴포즈 ( Docker-Compose ) 를 이용한 워드프레스 환경 자동 구성. 칼리리눅스 환경 이용 1. Docker-Compose와 DockerFile 구분 - Docker-Compose: 다수의 컨테이너를 빠르게 쉽게 생성할 수 있게 하는 도구 - DockerFile: 이미지를 생성하고 특정 작업까지 같이 처리해주는 도구 2. Docker-Compose 실습 sudo apt update : 업데이트 sudo apt install docker-compose : Docker-Compose 설치 sudo service docker start : 도커 서비스 실행 sudo docker-compose: 도커 컴포즈 설치 확인 새 폴더 생성 후, docker-compose.yml 파일 생성 파일 코드: https://github.com/docker/awesome-compose/tree/master/offici.. 2023. 11. 1. [Dreamhack] [wargame.kr] md5 password https://dreamhack.io/wargame/challenges/337 [wargame.kr] md5 password Description md5('value', true); dreamhack.io VM에 접속해보면 패스워드 입력 란과 소스코드를 볼 수 있는 링크가 있다. get source를 클릭하여 확인해봤다. 소스코드를 보면 md5() 함수의 두 번째 파라미터에 true 값이 담기는 형태로 md5() 함수가 호출되었다. md5() 함수에 두 번째 인자 값을 선택적으로 줄 수 있는데, 이가 raw_ouput에 해당하는 옵션으로 이 옵션에서 취약점이 발생한다. raw_ouput 옵션의 기본 값은 False이고, true 값이 담기게 되면 raw한 binary 형태로 출력이 되며, 이는 아스키(A.. 2023. 11. 1. [Dreamhack] simple_sqli_chatgpt https://dreamhack.io/wargame/challenges/769 simple_sqli_chatgpt 어딘가 이상한 로그인 서비스입니다. SQL INJECTION 취약점을 통해 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다. chatGPT와 함께 풀어보세요! Reference Server-side Basic dreamhack.io SQL_INJECTION 취약점을 이용하여 플래그를 얻는 문제이다. 플래그는 flag.txt, FLAG 변수에 있다고 한다. 제공되는 파일의 코드를 보면 0을 입력하면 guest로 로그인 할 수 있다. login() 함수를 보면 userid가 admin이고, userlevel이 0이면 플래그가 출력된다고 한다. 현재 select * fro.. 2023. 11. 1. [Node.js] Node.js 실습 - 서버 1. 서버란? 통신규약 (HTTP) - HTTP: 인터넷 상에서 데이터를 주고 받을 때 사용하는 프로토콜 URL - URL : 어디로 데이터를 보내는지 정보를 나타내는 것 DNS - DNS: 도메인 주소를 IP로 변환해주는 서버 2. 서버란? - CJS 서버 만들기 const http = require('http'); // 응답 Head 부분 작성 const server = http.createServer((req, res) => { res.writeHead(200, {'Content-Type':'text/plain'}); res.write('Hello node.js'); res.end(); // 응답 끝내기 }); // 서버를 응답 가능 상태로 만들기 server.listen(3000, ()=>{ //.. 2023. 11. 1. [Node.js] Node.js 이해 및 설치 방법 1. Node.js란? Node.js 정의 - Chrome V8 JavaScript 엔진으로 빌드된 JavaScript 런타임 - 서버라기 보다는 자바스크립트가 동작할 수 있는 독립적인 환경으로 이해 (서버라고 이해해도 무관) 웹 브라우저의 동작 과정 - 렌더링 : HTML, CSS, JS가 브러우저의 해석을 통해 화면에 출력되는 과정 - HTML, CSS: 브라우저 내에 있는 렌더링 엔진을 통해서 해석 - JavaScript: 브라우저 내에 있는 자바스크립트 엔진을 통해서 해석 - Chrom V8: 크롬에서 만든 자바스크립트 엔진 - 이를 이용하여 자바스크립트는 독립적으로 실행되고, 속도가 빨라짐 - Node.js가 크롬 V8 엔진으로 개발됨 JavaScript 런타임 - JavaScript: HTML.. 2023. 11. 1. [Azure] CDN 압축과 최적화 보호되어 있는 글 입니다. 2023. 10. 29. [Azure] Custom domain 설정과 SSL 구성 1. Custom domain 설정 - Azure CDN 사용 시 기본적으로 Endpoint가 제공됨 - Custom Domain 설정으로 회사 브랜딩 가능 - CNAME 레코드로 연결 후 적용 가능 - 임시 cdnverify 하위 도메인을 매핑하여 인증 가능 Custom Domain 직접 매핑 - 엔드포인트에서 도메인 인증 시 사용 - 설정할 도메인 사용 불가 Ex) www.cotoso.com을 을 contoso.azureedge.net에 연결을 하면 연결 완료 전까진 이 도메인을 사용할 때 원본을 설정하는 시간 만큼 서비스가 연결이 안 될 수 있음! - 엔드포인트 마이그레이션 시 중단 발생 임시 cdnverify 매핑 - 커스텀 도메인 직접 매핑의 문제점을 회피하고자 추가로 하는 매핑 - 엔드포인트에.. 2023. 10. 21. [Azure] Origin 추가하기 1. Origin - Origin types: 저장소, 웹 응용 프로그램, 사용자 지정 원본 - HTTP와 HTTPS를 사용할 수 있음 - Port 변경 가능 (오리진과 팝 서버랑 통신하는 포트를 만드는 것) - 실제로 CDN은 HTTP와 HTTPS 포트를 지원하기 때문에 80포트와 453 포트로 통신 가능 - 그러나 CDN과 오리진 간 통신은 포트를 변경해서 통신할 수 있다는 것을 의미! - Endpoint는 하나의 Origin을 가질 수 있음 - 즉, 오리진을 추가한다는 의미는 프로파일에 엔드포인트를 하나씩 추가하는 것이라고 생각하면 됨 - Origin과 통신 시 Header 값 변경 가능 - 쉽게 말해서 사용자가 특정 도메인에 접속했을 때, 이 CDN과 오리진과 통신할 때는 다른 헤더 값 설정 가능.. 2023. 10. 15. [Cloud Computing] Deployment of Virtual Machines using Vagrant 보호되어 있는 글 입니다. 2023. 10. 15. [Cloud Computing] Responsibility Sharing in Cloud 보호되어 있는 글 입니다. 2023. 10. 15. 이전 1 2 3 4 5 6 7 ··· 21 다음