리눅스 네트워크 기초: ip, ss로 갈아타기 + DNS 진단
ifconfig·netstat·route는 이제 레거시입니다. iproute2(ip·ss)로 인터페이스·라우팅·소켓을 진단하고, /etc/hosts·resolv.conf와 dig·getent로 DNS를 파고드는 표준 흐름.
ifconfig·netstat·route는 이제 레거시입니다. iproute2(ip·ss)로 인터페이스·라우팅·소켓을 진단하고, /etc/hosts·resolv.conf와 dig·getent로 DNS를 파고드는 표준 흐름.
'No space left on device' 알림부터 시작해서 — 어느 파티션이 찼는지(df), 무엇이 잡아먹는지(du), 지웠는데 안 줄어드는 함정(lsof)까지. 그리고 블록 장치·마운트·fstab의 기초.
프로세스를 서비스로 띄우고(systemctl), 부팅에 등록하고(enable), 유닛 파일로 정의하고, cron 대신 타이머로 돌리는 표준 흐름. enable과 start의 흔한 혼동과 daemon-reload 함정까지.
서버에 어떻게 들어가고(ssh·~/.ssh/config), 키 인증을 어떻게 붙이고, sshd_config로 그 문을 어떻게 잠그는지. 특히 자기 자신이 잠기지 않고 하드닝하는 순서까지.
리눅스 박스에 들어가(배포판·SSH) → 시스템을 관측하고(프로세스·모니터링·디스크) → 계정과 권한을 다루고(사용자·sudo·특수 비트·PAM) → 서비스를 띄우고(systemd) → 로그로 무슨 일이 있었는지 읽는(syslog·로그인 기록·회전) 데까지. 서버를 '운영'하는 관점으로 이 블로그의 리눅스 글을 큐레이션. 네트워크·방화벽은 부록으로, 셸 스크립트·데스크톱 환경은 결이 다른 축이라 별도 로드맵으로 링크.
일반 사용자가 자기 비밀번호를 바꿀 수 있는 이유(SUID), 공유 디렉토리의 그룹이 유지되는 이유(SGID), /tmp에서 남의 파일을 못 지우는 이유(sticky bit). rwx 너머의 세 비트를 chmod로 다루고 보안 관점으로 점검하는 법.
비밀번호를 몇 자 이상·며칠마다·몇 번 틀리면 잠그게 강제하는 법. login.defs와 chage로 만료를, pam_pwquality로 복잡도를, pam_faillock으로 잠금을 거는 흐름과 PAM을 안전하게 건드리는 법(authselect).
로그가 생성·수집·저장되는 두 체계 — 전통적 syslog(rsyslog)와 systemd journald가 어떻게 공존하는지, /var/log 구조와 facility·priority, logger로 직접 남기기, journalctl 실전 조회·영속화까지.
firewalld(RHEL/Rocky)와 ufw(Debian/Ubuntu)는 프론트엔드일 뿐이고, 실제 패킷을 거르는 건 커널의 netfilter → nftables/iptables입니다. zone·--permanent 함정·rich rule·SSH 락아웃 경고까지 실무 흐름으로 정리.
누가 언제 접속했고 지금 뭘 하고 있는지 — who·w·last·lastlog로 세션을 감사하고, 그 뒤에 있는 바이너리 회계 파일(utmp/wtmp/btmp/lastlog)과 systemd 시대의 변화까지 정리합니다.