C.W.K.
Stream
Lesson 11 of 14 · published

파일 권한

~12 min · permissions, ssh-perms, silent-failure

Level 0Pinger
0 XP0/101 lessons0/12 achievements
0/150 XP to next level150 XP to go0% complete

SSH 가 신경 많이 쓰는 이유

SSH 가 권한 너무 느슨하면 private key, authorized_keys, 또는 홈 디렉토리도 사용 거부 — 실패 모드가 silent. 인증이 조용히 password 로 fallback; 키 왜 안 되는지 디버깅에 몇 시간. 근본 원인 거의 항상 권한. 한 번 설정, 주기적 감사, 더 잘 자.

외울 숫자

경로권한이유
~755 또는 750group 이나 other 가 쓸 수 없음
~/.ssh700owner 만 read 또는 list
~/.ssh/id_ed25519600Private key — owner 만 read
~/.ssh/id_ed25519.pub644Public key, 공유 fine
~/.ssh/authorized_keys600서버 쪽 손님 명단 — owner 만 write
~/.ssh/known_hosts644Host fingerprint, secret X
~/.ssh/config644 또는 600둘 다 fine

Code

Perm 관련 인증 실패 진단·bash
# Verbose SSH shows the exact rejection
ssh -v user@host
# Look for 'Authentication refused: bad ownership or modes for...'

# Permission audit
ls -la ~/.ssh/

# Quick fix-all script
cat > ~/bin/fix-ssh-perms.sh <<'EOF'
#!/bin/bash
set -eu
chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_*           2>/dev/null || true
chmod 644 ~/.ssh/*.pub          2>/dev/null || true
chmod 644 ~/.ssh/known_hosts    2>/dev/null || true
chmod 644 ~/.ssh/config         2>/dev/null || true
chmod 600 ~/.ssh/authorized_keys 2>/dev/null || true
chmod o-w,g-w ~                  # home not writable by group/other
echo 'SSH permissions normalized.'
EOF
chmod +x ~/bin/fix-ssh-perms.sh

External links

Exercise

Fleet 의 모든 머신에서 ls -la ~/.ssh/ 돌리고 모든 항목을 위 표와 비교. 안 맞는 거 — 위 스크립트로 즉시 fix. 보너스 — 스크립트를 dotfiles bootstrap 통해 배포해 모든 새 머신 셋업에 돌게, perm 관련 인증 버그 선제 제거.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.