C.W.K.
Stream
Lesson 10 of 12 · published

Tailscale ACL & Grant

~15 min · tailscale, acl, tags, grants

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

Tailnet 의 access control

디폴트로 tailnet 의 모든 장치가 다른 모든 장치를 모든 포트에서 도달. 단일 user 개인 tailnet 엔 fine. 가족, 컨트랙터, 동료와 공유하기 시작하면 ACL 원해 — 누가 뭐 도달 가능한지 제한 규칙.

Tag 가 정체성을 머신에서 분리

ACL 에서 개별 장치 명명 (장치 변경 시 churn) 보다 머신을 역할로 tag (tag:server, tag:dev, tag:prod). 그다음 tag 에 대한 ACL 작성. Tag 가 서버한테 어떤 단일 user 계정에 묶이지 않은 안정 정체성도 줌.

Grant — 차세대 구문

Tailscale 이 옛 ACL 구문에서 grant 로 마이그레이션 중 — 더 fine-grained capability 제공, SSH user-매핑, 앱 레벨 통제, 시간 제한 access 포함. 새 tailnet 이 grant 디폴트; 옛 거 opt-in 가능. 아래 ACL 예가 둘 다 보여줌.

Code

고전 ACL 구문·json
{
  "groups": {
    "group:admin": ["you_username@github"],
    "group:family": ["spouse@github"]
  },
  "tagOwners": {
    "tag:server": ["group:admin"]
  },
  "acls": [
    { "action": "accept", "src": ["group:admin"], "dst": ["*:*"] },
    { "action": "accept", "src": ["group:family"], "dst": ["tag:server:80,443"] }
  ]
}
Grant 구문 — fine SSH 통제·json
{
  "grants": [{
    "src": ["group:admin"],
    "dst": ["tag:server"],
    "app": {
      "tailscale.com/cap/ssh": [{
        "users": ["root", "you_username"]
      }]
    }
  }]
}

External links

Exercise

Tailscale admin console (login.tailscale.com) 열어. 현재 ACL 봐 (Settings → Access Controls). 단일 user tailnet 엔 디폴트 accept */* 규칙 봐. 아무것도 변경 X — 그냥 거기 뭐 있는지 이해. Tailnet 공유 시 그게 교체할 규칙.

Progress

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

댓글 0

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

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