서버 인프라

이 페이지는 서버 인프라 운영에 필요한 리눅스, 네트워크, 보안, 트러팅슈팅 등의 콘텐츠로 연결되는 인덱스입니다.

서버 및 인프라 기술

서버/인프라는 IT 시스템의 핵심 구성 요소로, 서버 관리, 네트워크 설정, 보안, 가상화 및 클라우드 서비스를 포함한 인프라 관련 기술 등이 있습니다.

📂 서버 인프라
├─ 📁 리눅스 서버
├─ 📁 윈도우 서버
├─ 📁 네트워크
├─ 📁 보안
├─ 📁 클라우드
├─ 📁 트러블슈팅
├─ 📁 가상화 (Docker, VMware)
📂 리눅스 서버
 ├─ 📁 리눅스의 이해 | 시스템 기초
├─ 📄 리눅스란 무엇인가?
├─ 📄 리눅스 커널(Kernel)
├─ 📄 root의 개념
├─ 📄 부팅
└─ 📄 터미널

 ├─ 📁 서비스 관리
├─ 📄 systemctl / service
├─ 📄 서비스 활성화/비활성화
└─ 📄 서비스 상태 확인 / 재시작

 ├─ 📁 리눅스 네트워크
├─ 📄 개념 | 설정 | 명령어
├─ 📄 IP 설정  인터페이스
├─ 📄 방화벽 (firewalld, iptables)
├─ 📄 DNS
└─ 📁 리눅스 원격 접속
├─ 📄 VNC
├─ 📄 SSH  접속 관리
└─ 📄 Telnet

 ├─ 📁 디렉토리 | 디스크
├─ 📄 디렉토리
└─ 📁 디스크
├─ 📄 파일 시스템
├─ 📄 마운트/포맷
├─ 📄 LVM
└─ 📄 RAID 구성

 ├─ 📁 사용자  그룹 관리
├─ 📁 사용자
   ├─ 📄 useradd/usermod
   ├─ 📄 userdel
   └─ 📄 사용자 관리
├─ 📁 그룹
   └─ 📄 그룹 추가 | 삭제
└─ 📁 퍼미션 | 소유권
├─ 📄 chmod / chown / chgrp
├─ 📄 umask
└─ 📄 ACL(Access Control List)

 ├─ 📁 프로세스 관리
├─ 📄 시그널
├─ 📄 프로그램,프로세스, 스레드
├─ 📄 kill / nice / renice
└─ 📄 데몬 | 백그라운드, 포어그라운드

 ├─ 📁 소프트웨어: 패키지  업데이트
├─ 📄 yum/dnf/apt
├─ 📄 패키지 설치/삭제
├─ 📄 저장소 설정
└─ 📄 소스코드 | 컴파일

 ├─ 📁 명령어  셸스크립트
├─ 📁 리눅스 명령어 분류
   └─ 📄 파일 조작 / 프로세스 / 네트워크 명령어 
└─ 📁 셸스크립트 기초
├─ 📄 변수 / 조건 / 반복문
└─ 📄 스크립트 예제 (백업, 알림 )

 ├─ 📁 DBMS
├─ 📄 쿼리문
└─ 📄 로그
리눅스(Linux)
📂 리눅스 서버
 ├─ 📁 OS | 서비스 구축 
├─ 📄 CentOS, Ubuntu, Rocky Linux 설치
└─ 📁  서비스
├─ 📄 apache | APM
├─ 📄 Nginx
├─ 📄 DB
├─ 📄 PHP
├─ 📄 메일
└─ 📁 기타 서비스 
└─ 📄 PROXY, DHCP

 └─ 📁 운영 관리 
     ├─ 📁 성능  모니터링
├─ 📁 프로세스, CPU, 메모리 네트워크...
   ├─ 📄 top, htop, iostat, vmstat
   └─ 📄 하드웨어
├─ 📁 로그 관리
   └─ 📄 system log, syslog, journalctl, logrotate
└─ 📁 자동화
├─ 📄 crontab 예약 작업
├─ 📄 rsync / scp 동기화
└─ 📄 백업  복구

     ├─ 📁 리눅스 보안
├─ 📄 사용자 제한
├─ 📄 방화벽 설정
├─ 📄 sudo 보안 관리
└─ 📄 SSH 보안 설정

     └─ 📁 리눅스 트러블슈팅
         ├─ 📄 부팅 문제
         ├─ 📄 네트워크 연결 문제
         ├─ 📄 권한 오류
         └─ 📄 디스크 공간 부족
 📂 RockyLinux
  ├─📄 APM 설치
 📂 Ubuntu
  ├─📄 APM 설치
 📂 CentOS 7
  ├─📄 CentOS 7 yum repo 변경
  ├─📄 Nginx 설치 
  │  └─📄 Nginx SSL 설치
 📂 CentOS 7
  ├─ 📂 apache    
└─📄 apache SSL 설치
커피와 노트북

효율적인 서버 인프라 학습 전략

IT 기술을 학습할 때 한 권의 책을 처음부터 끝까지 정독 하기보다는, 전체를 훑으며 핵심 개념을 빠르게 파악하고 필요한 부분을 반복해 읽는 방식이 더 효과적일 수 있습니다.

특히 리눅스나 서버 관련 서적은 저자마다 중요하게 여기는 주제가 달라 특정 내용이 생략되거나 강조될 수 있으므로, 여러 권을 참고하며 다양한 시각에서 전체 구조를 이해하는 것이 중요합니다. 깊이 있는 이해는 넓은 틀을 먼저 잡은 후에 천천히 채워가도 늦지 않습니다.

  • Apache&Nginx에 Varnish Cache 설치 및 설정

    기존 Apache와 Nginx 조합의 서버에 Varnish Cache를 추가로 설치하고 적용 해 보도록 하겠습니다. Nginx에 Varnish Cache를 추가로 설정하는 작업이기 때문에 기존의 서버에 적용된 사항을 체크…
  • /tmp 디렉토리 보안 설정 [CentOS 7]

    리눅스 웹 서버를 운영할 때, /tmp 디렉토리는 시스템과 여러 애플리케이션이 임시 파일을 저장하는 공간으로 자주 사용됩니다. 하지만 /tmp 디렉토리는 누구나 쓰기 가능한 특성을 가지고 있어,…
  • CentOS 7 Nginx 설치 | PHP & MariaDB 설치

    VritrualBox에 CentOS 7 Nginx 설치를 진행해 보겠습니다. 추가로 PHP 설치 후 PHP-FPM 설정을 같이 진행합니다. ✅ CentOS 7 Nginx 설치 epel 저장소 설치 후 nginx…
  • [Linux] CentOS 7 설치 | VirtualBox 설치

    VirtualBox에 CentOS 7 설치를 진행 해 보겠습니다. 미리 다운로드 받은 ISO 파일로 이미 설정을 완료한 상태입니다. ✅ CentOS 7 설치 진행 Install CentOS를 선택하고 다음…

리눅스 tmp 디렉토리: /tmp와 /var/tmp 차이

리눅스 tmp 디렉토리는 임시 파일을 저장하기 위해 주로 /tmp와 /var/tmp 디렉토리를 사용합니다. /tmp는 일시적인 임시 파일을 저장하는 공간으로, 시스템이 재부팅 되면 대부분의 파일이 삭제됩니다. 따라서 빠른 입출력과 임시 작업에 적합하며, 주로 프로세스가 실행 중 생성하는 임시 데이터를 저장합니다. 반면에 /var/tmp는 재부팅 후에도 파일이 유지되는 임시 저장 공간입니다. 장기간 유지가 필요한 임시 파일이나 작업…

[Linux] ip 명령어 : 네트워크 인터페이스 및 설정 관리

ip 명령어는 리눅스에서 네트워크를 관리할 때 사용되는 주요 도구로, 다양한 네트워크 작업을 수행할 수 있습니다. ip 명령어는 네트워크 인터페이스의 상태를 확인하거나 활성화 및 비활성화 할 수 있으며, IP 주소를 확인하거나 수동으로 추가 및 삭제하는 작업도 가능합니다. 또한 라우팅 테이블을 조회하고 경로를 추가하거나 제거하는 등의 라우팅 관리, ARP 테이블 확인 및 수정, 터널링 설정…

[Linux] localectl 명령어

CentOS 7 버전부터 많은 명령어들이 통합되어 제공됩니다. 로케일 및 키보드 관련 부문은 localectl 명령어에서 제공합니다. locale은 원래 지역이나 장소를 의미하지만, IT 환경에서는 언어 및 지역 설정을 지칭합니다. 리눅스에서는 문자 인코딩, 언어, 날짜/시간, 숫자 등의 지역화 설정을 locale 문자열로 정의합니다. 대부분의 유닉스 및 리눅스 배포판은 POSIX 기반이며, 이는 Red Hat 및 Debian 계열도 포함됩니다….

Nginx SSL 인증서 설치[CentOS 7]

Nginx SSL 인증서 설치를 진행합니다. 1. 인증서 신청하기 SSL 인증서는 30일 무료 SSL을 https://zerossl.com/ 사이트에서 신청했습니다. DCV 인증은 DNS 인증 방식으로 진행했습니다. 네임서버에서 CNAME 레코드를 설정합니다. 설정 후 인증 신청을 한 후 대기 시간이 소요됩니다. 인증이 완료되면 인증서 파일을 다운로드 받은 후 서버에 인증서 설치 작업을 진행합니다. 2. 방화벽 설정 윈도우 처음 설치…

Rsync 명령어: 옵션 | 사용 예시

Rsync 명령어는 Remote sync의 줄임말로 원격에서 로컬, 로컬에서 로컬로의 파일 및 디렉토리를 복사하는 프로그램입니다. rsync에는 두 가지 접속 방법이 있는데 SSH를 통해 접속하는 방법과 rsync 데몬을 통해 접속하는 방법입니다. ✅ rsync의 두 가지 접속 방법 🔲 SSH 사용 SSH를 통한 접속(: 사용)은 [rsync [옵션] user@host:/경로 /로컬경로]의 방법으로 이용되며 내부적으롤 SSH 프로토콜을 사용합니다. SSH를…

yum-config-manager 명령어 | YUM 저장소 설정

yum 명령어는 기본 사용 시 기본 저장소(보통 안정화 버전)에서 패키지를 설치합니다. 저장소 파일을 추가하면 안정화(stable) 또는 최신(mainline) 버전 중 활성화된 저장소에서 패키지를 설치할 수 있습니다. 안정화와 최신 버전 저장소가 모두 활성화되어 있을 경우, yum은 버전이 더 높은 패키지(보통 최신 버전)를 설치합니다. 원하는 버전을 설치하려면, remi 저장소 설정 또는 yum-config-manager를 사용하여 특정 저장소를 활성화해서…

리눅스 서버 시간 동기화: timedatectl(CentOS7 이상)

리눅스에서 날짜 및 시간 설정이 필요한 이유는 서버 운영 중 시간이 잘못되면, 입력되는 DB데이터, 로그 데이터, 웹 서버에 접속한 기록 등의 시간이 맞지 않는 경우가 발생할 수 있기 때문입니다. 리눅스 서버 시간 동기화를 사용하는데 있어 OS는 두 개의 시계를 가지고 있습니다.시스템 시계(소프트웨어 시계), 하드웨어 시계(실시간 시계, BIOS 시계)입니다. ✅ 리눅스 서버 시간 동기화:…

[Linux] lsof 명령어: 실행 중 파일 정보 출력

lsof 명령어는 lisf open files의 약자로 리눅스 시스템에서 열려 있는 파일의 정보를 출력해 주는 명령어입니다. lsof 명령어는 파일을 포함하여 디렉터리, 네트워크 소켓, 파이프 등 프로세스가 사용 중인 다양한 리소스도 조회할 수 있습니다. ✅ lsof 명령어 기본 구문 명령어만 입력 했을 때는 현재 시스템에서 열린 모든 파일과 관련된 프로세스 정보를 출력합니다. ✅ lsof 명령어…

[Linux] stat 명령어 : 파일&파일 시스템 확인

리눅스 stat 명령어는 파일 및 파일 시스템의 상태를 보여주는 명령어입니다. 파일에 대한 자세한 정보가 필요할 때 사용합니다. ✅ stat 명령어 기본 사용 방법 ✅ 명령어 옵션 ✅사용 예시 🔲 파일 시스템의 정보 출력: -f