본문 바로가기
네트워크 (LAN,WAN)

SSH 끊겨도 살아있는 tmux 기반 멀티 터미널 세션 유지 및 Pane 분할

by 날으는물고기 2026. 5. 10.

SSH 끊겨도 살아있는 tmux 기반 멀티 터미널 세션 유지 및 Pane 분할

728x90

tmux는 터미널 멀티플렉서(Terminal Multiplexer)입니다.
하나의 SSH 세션 안에서 여러 개의 터미널 창(Window), 패널(Pane), 세션(Session)을 동시에 관리할 수 있게 해줍니다.

특히 서버 운영, 보안 점검, 로그 모니터링, 장시간 배치 작업, 원격 작업 환경에서 매우 강력합니다.

  • SSH 끊겨도 작업 유지
  • 여러 터미널을 한 화면에서 분할
  • 세션 저장 및 재접속
  • 백그라운드 작업 유지
  • 로그 모니터링 최적화
  • 협업(shared session) 가능
문제 tmux 해결
SSH 끊김으로 작업 종료 세션 유지
장시간 로그 분석 detach 후 유지
여러 서버 동시 작업 pane/window 분리
장애 대응 중 터미널 혼잡 구조적 분리
실시간 모니터링 dashboard 형태 구성
원격지 작업 reconnect 가능

  • tcpdump
  • journalctl -f
  • tail -f
  • Elasticsearch reindex
  • DB migration
  • vulnerability scan
  • long-running Python script

이런 작업을 tmux 없이 하면 SSH 종료 순간 작업도 종료될 가능성이 큽니다.

설치 방법

Ubuntu / Debian

sudo apt update
sudo apt install tmux -y

RHEL / Rocky / AlmaLinux

sudo yum install tmux -y

또는

sudo dnf install tmux -y

macOS

brew install tmux

기본 사용 흐름

가장 중요한 개념

tmux
 └─ Session
     └─ Window
         └─ Pane

예시

보안운영세션
 ├─ logs window
 │   ├─ nginx pane
 │   └─ auth pane
 ├─ monitoring window
 └─ incident window

가장 기본적인 사용법

새 세션 생성

tmux

또는 이름 지정

tmux new -s security

세션 목록 확인

tmux ls

예시

security: 1 windows
monitoring: 2 windows

기존 세션 접속

tmux attach -t security

세션 분리(detach)

tmux 내부에서

Ctrl+b → d

의미

세션은 살아있고
현재 접속만 끊음

이게 tmux 핵심 기능입니다.

SSH 끊겨도 유지되는 원리

일반 SSH

SSH 종료
 → shell 종료
   → process 종료

tmux 사용

SSH 종료
 → tmux session 유지
   → process 유지

python long_task.py

실행 중 SSH 끊겨도 살아있습니다.

Window 사용법

새 window 생성

Ctrl+b → c

window 이동

다음

Ctrl+b → n

이전

Ctrl+b → p

번호 이동

Ctrl+b → 0~9

window 이름 변경

Ctrl+b → ,

logs
monitor
incident

Pane 분할

운영에서 매우 중요합니다.

세로 분할

Ctrl+b → %

가로 분할

Ctrl+b → "

pane 이동

Ctrl+b → 방향키

pane 크기 조절

Ctrl+b → Ctrl+방향키

pane 종료

exit

또는

Ctrl+d

실무 활용 예시

예시 1 — 로그 모니터링

Window: logs

Pane1:
tail -f /var/log/nginx/access.log

Pane2:
tail -f /var/log/auth.log

Pane3:
journalctl -f

Pane4:
tcpdump -i eth0

예시 2 — Kubernetes 운영

Window1:
kubectl get pods -w

Window2:
kubectl logs -f api-pod

Window3:
htop

Window4:
watch kubectl top pods

예시 3 — 침해사고 대응

Pane1:
EDR query

Pane2:
grep IOC

Pane3:
SIEM query

Pane4:
Slack 대응

가장 중요한 운영 기능들

세션 자동 복구

현재 세션

tmux ls

재접속

tmux attach -t security

마지막 세션 자동 연결

tmux a

강제 세션 연결

다른 곳에서 붙어있을 때

tmux attach -d -t security

기존 연결 강제 종료 후 붙음.

세션 종료

tmux kill-session -t security

강력 추천 설정 (~/.tmux.conf)

기본 예시

set -g mouse on

setw -g mode-keys vi

set -g history-limit 50000

set -g base-index 1

setw -g pane-base-index 1

bind r source-file ~/.tmux.conf \; display "Reloaded!"

설정 의미

옵션 설명
mouse on 마우스 사용
mode-keys vi vim 스타일
history-limit 스크롤 증가
base-index 1 번호 1부터
reload bind 설정 리로드

설정 적용

tmux source-file ~/.tmux.conf

또는

Ctrl+b → r

Copy Mode (매우 중요)

tmux는 자체 스크롤 버퍼를 가집니다.

300x250

진입

Ctrl+b → [

이동

vim 방식 가능

종료

q

실무에서 매우 좋은 패턴

패턴 1 — 서버별 세션 분리

tmux new -s prod
tmux new -s dev
tmux new -s security

패턴 2 — 업무별 window 구성

0: monitor
1: logs
2: deploy
3: incident

패턴 3 — 장시간 작업 유지

tmux new -s migration

python migrate.py

detach

Ctrl+b d

다음날 재접속 가능.

tmux + SSH 조합 핵심

추천 alias

alias ta='tmux attach'
alias tls='tmux ls'
alias tn='tmux new -s'

보안 관점 주의사항

세션 방치 위험

tmux 세션은 살아있음.

SSH 종료되어도
권한 유지 가능
  • 작업 후 세션 종료 필요
  • 공유 서버에서는 주의
  • sudo 상태 유지 여부 확인

민감정보 노출

history buffer에 남을 수 있음

  • API Key
  • Token
  • Password
  • DB credentials

shared tmux 사용 주의

다른 사용자가 attach 가능할 수 있음. (권한 점검)

ls -al /tmp/tmux-*

tmuxinator / teamocil

복잡한 환경 자동 구성 가능.

name: security
windows:
  - logs:
      layout: tiled
      panes:
        - tail -f /var/log/auth.log
        - journalctl -f
        - htop

실행

tmuxinator start security

추천 추가 도구

도구 설명
tmuxinator 세션 자동 구성
tmate 공유 세션
byobu tmux wrapper
powerline 상태바 강화
oh-my-tmux 고급 설정

실무 추천 단축키 TOP

기능
detach Ctrl+b d
새 window Ctrl+b c
pane 분할 Ctrl+b %
pane 이동 Ctrl+b 방향키
copy mode Ctrl+b [
window rename Ctrl+b ,
설정 reload Ctrl+b r

개인적으로 추천하는 운영 방식

Session:
  prod

Window:
  logs
  monitor
  deploy
  debug

Pane:
  서비스별 분리

이렇게 하면 장애 대응 속도가 매우 빨라집니다.

tmux와 screen 차이

항목 tmux screen
현대적 기능 우수 제한적
pane 분할 강력 약함
설정 편리 복잡
plugin 많음 적음
상태바 강력 제한적

현재는 대부분 tmux 사용.

처음 시작하는 추천 루틴

먼저 이것만 익히면 됩니다.

tmux new -s work

그리고

Ctrl+b c
Ctrl+b %
Ctrl+b "
Ctrl+b 방향키
Ctrl+b d

마지막

tmux attach -t work

이 정도만 익혀도 운영 효율이 크게 향상됩니다.

728x90
그리드형(광고전용)

댓글