분류 전체보기 107

주니어 개발자를 위한 소프트 스킬 5가지(토스 Foundation Leader)

해당 내용은 아래 영상을 보고 요약 및 재구성하여 작성하였습니다.https://www.youtube.com/watch?v=JyAiWo4ghVg 해당 세션을 발표하신 발표자님은 임희진 / Foundation Leader이시고, 좋은 커리어를 가지고 계시기 때문에 배울 부분이 많지 않을까 생각하였습니다.  1. 왜 소프트 스킬을 길러야 할까요? 하드스킬(프로그래밍, 아키텍쳐 설계, 트러블슈팅)이 더하기라면, 소프트스킬(커뮤니케이션, 시간 관리, 문제해결 능력, 메타인지 능력)은 곱하기 스킬이라고 합니다. 하드스킬은 해당 직무를 수행 위해 필수적으로 알아야 하는 지식이라면, 소프트스킬은 하드스킬을 빠르게 학습하기 위한, 하드스킬을 이용해 문제를 해결하기 위한 지식인것 같습니다.(2-3년 뒤에 회고를 했을 때,..

ETC 2024.10.03

쿠버네티스 시작하기

쿠버네티스란쿠버네티스는 컨테이너 오케스트레이션의 대표적인 도구이다.  그렇다면, 컨테이너는 뭐고, 오케스트레이션이란 뭘까...? 컨테이너에 대한 개념은 가상화와 컨테이너라는 글에서 정리하였기 때문에, 오케스트레이션이라는 개념에 초점을 맞춰서 정리할 것이다.  가상화와 컨테이너컨테이너 인프라 환경을 이해하기 위해서는 가상화와 컨테이너의 개념에 대해서 이해해야한다. 두 개념은 모두 서버 자원을 효율적으로 사용하기 위한 기술이다.  가상화(VM, Virutal Machine)하나rybbit-life-debugging.tistory.com 여기서 오케스트레이션이란 오케스트라에 비유하면, 쉽게 이해 할수 있다. 오케스트라에서는 다양한 악기들이 함께 연주를 하지만, 각 악기가 제멋대로 연주하면 혼란스러운 소리가 난..

SuperPutty로 여러대의 가상머신 접속하기

SuperPutty를 사용하면, 여러 대의 가상머신을 관리하기 용이합니다.  PuTTY 설치PuTTY는 윈도우에서 터미널을 접속할 때 많이 사용되는 도구입니다. 다양한 플러그인을 제공해 주며 특히 SuperPuTTY를 통해 여러 대의 가상머신에 접근할 수 있습니다. 아래 링크를 통해서 PuTTY를 설치할수 있습니다.(최신버전은 변경될 수 있으므로 확인)https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html Download PuTTY: latest release (0.81)This page contains download links for the latest released version of PuTTY. Currently this is 0.81, ..

백엔드/리눅스 2024.10.01

대표적인 웹 취약점- 3

저번 과제와 마찬가지로 대표적인 웹 취약점 4가지를 정리하였다. 파일 다운로드 취약점과 파일 업로드 취약점은 점검 및 조치하기위해 기술적인 부분이 요구되어 중요도가 높은편이고, 소스코드 내 주요 정보 취약점과 공개용 웹 게시판 취약점은 관리적인 부분이 요구되어 중요도가 낮은 편이다.  대표적인 웹 취약점- 2저번 과제와 마찬가지로 대표적인 웹 취약점 4가지를 정리하였다.https://rybbit-life-debugging.tistory.com/50?category=1199096 대표적인 웹 취약점 - 1국내에서 자주 발생하는 웹 취약점 4가지를 정리하였다.rybbit-life-debugging.tistory.com 1. 파일 다운로드 취약점URL에 경로조작(Path Traversal)관련 문자를 입력하여..

IaC(Vagrant)로 가상 머신(CentOS) 생성하기

이전 포스팅에는 Vagrant 환경을 구축하고 가상머신(CenOS)을 생성해, SSH로 가상머신에 접속하는 실습을 진행하였습니다. 이번시간에는 Vagrant을 통해 가상머신 구성(Config)이 자동으로 설정되어 생성되는 실습을 진행하겠습니다. IaC(Vagrant) 실습 환경 구축및 테스트 for WindowsVagrant란?가상 머신(VM)이나 컨테이너 환경을 쉽게 설정하고 관리할 수 있도록 도와주는 IaC도구이다. 대표적인 IaC도구는 Terraform, Vagrant, Ansible등이 존재하는데, Vagrant는 로컬환경에서 가상머신(VM)rybbit-life-debugging.tistory.com  1. 가상머신(CentOS)에 호스트네임, IP등을 자동으로 설정아래 링크를 통해 실습파일을 다..

DevOps 2024.09.26

모놀리식 아키텍쳐(MA)와 마이크로 서비스 아키텍쳐(MSA)

클라우드네이티브환경에서 자주 등장하는 용어 중 하나는 마이크로 서비스 아키텍처(MSA)이다. MSA는 소프트웨어 아키텍처의 한 종류로 MSA를 이해하기 위해 기존에 사용하는 아키텍처인 모놀리식 아키텍처(MA)와 비교해서 이해할 필요가 있다.  모놀리식 아키텍처란(MA)?모놀리식 아키텍처(MA)는 하나의 애플리케이션에 모든 컴포넌트가 밀접하게 연결되어 있는 구조를 의미한다. monolithic은 단단히 짜여 있다는 뜻으로 각각의 컴포넌트들이 밀접하게 연결되어 있으며, 하나의 큰 애플리케이션으로 배포되는 것을 의미한다. 모놀리식 아키텍쳐의 특징모놀리식 아키텍처는 모든 컴포넌트가 하나의 코드베이스에서 존재하기 때문에 상호작용하는 문제를 걱정할 필요가 없어 초기에 개발 및 배포가 편리하다. 하지만 각각의 컴포넌..

백엔드 2024.09.26

Vagrant 실습 환경 구축 (Windows)

Vagrant란?가상 머신(VM), 컨테이너 환경을 쉽게 설정하고 관리할 수 있도록 도와주는 IaC도구입니다. 대표적인 IaC도구는 Terraform, Vagrant, Ansible등이 존재하는데, Vagrant는 로컬환경에서 가상머신(VM)을 관리할때 주로 사용합니다.*IaC란 Infra as Code의 약자로 인프라를 코드로 관리하는 것을 의미합니다. 코드기반으로 관리하면 일관된 인프라를 구성할수 있다는 장점이 존재합니다.  Virtualbox 설치(6.1.50 버전)가상머신(VM)은 Virtualbox를 설치합니다. 설치를 하기 전에 Vagrant와 호환이 되는 Virtualbox 버전을 확인해야 합니다. 호환이 되는 버전은 아래와 같으며, 추후에 변경될 수도 있으므로 공식사이트를 통해 확인하는 것..

DevOps 2024.09.24

가상화와 컨테이너

컨테이너 인프라 환경을 이해하기 위해서는 가상화와 컨테이너의 개념에 대해서 이해해야한다. 두 개념은 모두 서버 자원을 효율적으로 사용하기 위한 기술이다.  가상화(VM, Virutal Machine)하나의 컴퓨터에서 여러 운영체제를 독립적으로 실행할수 있도록 하는 기술이다. 하이퍼바이저라는 소프트웨어를 통해서 가상머신(VM)을 관리한다. 가상화 기술을 사용할수 있는 대표적인 도구는 VirutalBox와 VMware가 있다. 구조를 확인해보면 물리적인 컴퓨터 위에 하이퍼바이저를 올리고 이를 통해 여러대의 가상머신(VM)이 존재하는것을 알수 있다. 각각의 가상머신(VM)은 Guest OS, Bins/Lib, APP을 가지고 있어 독립적인 환경처럼 동작한다.  *하이퍼 바이저 종류에는 bare-Metal 하이..

백엔드 2024.09.23

[웹 취약점 실습] 정보공개 취약점(Information disclosure) - 1

정보공개취약점이란웹사이트가 의도치 않게 사용자에게 민감한 정보를 노출하는 취약점이다. 공격자들은 이를 통해 민감한 정보(계정정보, 금융정보, 개인정보 등) 얻거나, 에러발생 시 노출되는 정보(애플리케이션 정보, DB정보, 웹서버구성정보, 개발 관련 주석 등)를 통해 추가적인 공격을 시도할 위협이 존재한다. 실습하기해당 실습은 에러발생 시 취약한 버전의 서드파티 프레임워크가 노출되는 것을 확인하는 실습이다. ACCESS THE LAB 버튼을 클릭하여 실습사이트로 이동할수있다.실습사이트 접속 시 해당 페이지를 확인할 수 있다. 버프스위트의 프록시 기능을 통해 해당 페이지의 요청 및 응답값을 확인할 것이다. Open browser클릭하여 실습사이트에 접속하고 intercept off 기능을 눌러 요청 및 응답..