413 lines
18 KiB
JSON
413 lines
18 KiB
JSON
{
|
||
"action": {
|
||
"confirm": "확인",
|
||
"cancel": "취소",
|
||
"close": "닫기",
|
||
"delete": "삭제",
|
||
"save": "저장",
|
||
"create": "생성",
|
||
"copy": "복사",
|
||
"copied": "복사됨",
|
||
"refresh": "새로고침",
|
||
"gotIt": "확인",
|
||
"edit": "편집",
|
||
"open": "열기",
|
||
"clone": "복제",
|
||
"reconnect": "재연결",
|
||
"disconnect": "연결 끊기",
|
||
"submit": "확인"
|
||
},
|
||
"status": {
|
||
"loading": "불러오는 중...",
|
||
"processing": "처리 중...",
|
||
"connecting": "연결 중...",
|
||
"connected": "연결됨",
|
||
"disconnected": "연결 끊김",
|
||
"background": "백그라운드",
|
||
"suspended": "일시 중단",
|
||
"reconnecting": "재연결 중",
|
||
"error": "연결 오류",
|
||
"reading": "불러오는 중...",
|
||
"saving": "저장 중..."
|
||
},
|
||
"error": {
|
||
"title": "문제가 발생했습니다",
|
||
"body": "앱에서 예기치 않은 문제가 발생했습니다",
|
||
"recoverable": "이 오류는 복구 가능합니다. 페이지를 새로고침해 보세요.",
|
||
"refreshPage": "페이지 새로고침",
|
||
"restartApp": "앱 재시작",
|
||
"supportHint": "문제가 지속되면 로그를 확인하거나 지원팀에 문의하세요"
|
||
},
|
||
"toast": {
|
||
"closeAria": "알림 닫기"
|
||
},
|
||
"metrics": {
|
||
"timezone": "시간대 {{value}}",
|
||
"memory": "메모리 {{percent}}%{{detail}}",
|
||
"sessionTransfer": "세션 트래픽 {{value}}"
|
||
},
|
||
"palette": {
|
||
"title": "명령 팔레트",
|
||
"aria": "명령 팔레트",
|
||
"placeholder": "명령, 세션 또는 스니펫 검색...",
|
||
"empty": "일치하는 결과가 없습니다",
|
||
"emptyHint": "다른 키워드를 시도해 보세요",
|
||
"resultCount": "{{count}}개 결과",
|
||
"badge": {
|
||
"command": "명령",
|
||
"session": "세션",
|
||
"snippet": "스니펫"
|
||
},
|
||
"hint": {
|
||
"nav": "탐색",
|
||
"run": "실행",
|
||
"close": "닫기"
|
||
},
|
||
"cmd": {
|
||
"newSession": "새 세션",
|
||
"newSessionDesc": "새 SSH 세션 프로필 생성",
|
||
"quickConnect": "빠른 연결",
|
||
"quickConnectDesc": "호스트 정보로 직접 연결",
|
||
"localTerminal": "로컬 터미널",
|
||
"localTerminalDesc": "로컬 셸 열기",
|
||
"settings": "설정 열기",
|
||
"settingsDesc": "앱 환경설정",
|
||
"toggleSidebar": "사이드바 전환",
|
||
"toggleSidebarDesc": "터미널에 집중하도록 사이드바 숨기기",
|
||
"newTab": "새 탭",
|
||
"closeTab": "현재 탭 닫기",
|
||
"closeAllTabs": "모든 탭 닫기",
|
||
"portForward": "새 포트 포워딩",
|
||
"upgradePro": "OpsXShell 프로로 업그레이드",
|
||
"editSession": "세션 편집: {{name}}"
|
||
}
|
||
},
|
||
"tab": {
|
||
"welcome": "환영합니다",
|
||
"new": "새 탭",
|
||
"settings": "설정",
|
||
"portForward": "포트 포워딩",
|
||
"terminal": "터미널",
|
||
"batch": "일괄 실행",
|
||
"newTerminal": "새 터미널",
|
||
"closeAria": "{{title}} 닫기",
|
||
"listAria": "열린 탭",
|
||
"kind": {
|
||
"terminal": "터미널",
|
||
"sftp": "SFTP",
|
||
"portforward": "포워딩",
|
||
"serial": "시리얼",
|
||
"rdp": "RDP",
|
||
"vnc": "VNC",
|
||
"batch": "일괄",
|
||
"settings": "설정"
|
||
},
|
||
"menu": {
|
||
"closeOthers": "다른 탭 닫기",
|
||
"closeRight": "오른쪽 탭 닫기",
|
||
"closeLeft": "왼쪽 탭 닫기",
|
||
"closeAll": "모두 닫기",
|
||
"clone": "탭 복제",
|
||
"openSftp": "SFTP 열기"
|
||
},
|
||
"renameAria": "탭 {{title}} 이름 바꾸기",
|
||
"renameHint": "더블 클릭해 이름 변경"
|
||
},
|
||
"sidebar": {
|
||
"brandSub": "SSH / SFTP 터미널",
|
||
"collapse": "사이드바 접기 (Ctrl/Cmd+B)",
|
||
"collapseAria": "사이드바 접기",
|
||
"expand": "사이드바 펼치기",
|
||
"expandAria": "사이드바 펼치기",
|
||
"toggle": "사이드바 전환",
|
||
"searchPlaceholder": "검색...",
|
||
"localShell": {
|
||
"openDefault": "기본 로컬 셸 열기",
|
||
"choose": "셸 선택",
|
||
"title": "로컬 셸",
|
||
"subtitle": "이 컴퓨터에서 터미널 열기",
|
||
"default": "기본"
|
||
}
|
||
},
|
||
"connectionPanel": {
|
||
"title": "연결",
|
||
"empty": "연결 없음",
|
||
"emptyDesc": "활성 연결이 없습니다. 서버에 연결하면 여기에 표시됩니다.",
|
||
"stat": {
|
||
"total": "전체",
|
||
"active": "활성",
|
||
"background": "백그라운드",
|
||
"error": "연결 끊김/오류"
|
||
},
|
||
"status": {
|
||
"connected": "연결됨",
|
||
"connecting": "연결 중",
|
||
"background": "백그라운드",
|
||
"suspended": "일시 중단",
|
||
"error": "오류",
|
||
"disconnected": "연결 끊김",
|
||
"reconnecting": "재연결 중"
|
||
},
|
||
"refCount": "참조 {{count}}개",
|
||
"reconnect": "재연결",
|
||
"reconnecting": "재연결 중...",
|
||
"disconnect": "연결 끊기"
|
||
},
|
||
"pro": {
|
||
"upgrade": "프로로 업그레이드",
|
||
"feature": "Pro 기능",
|
||
"unlock": "프로 고급 기능 잠금 해제",
|
||
"comingSoon": "출시 예정",
|
||
"activateSuccess": "활성화됨",
|
||
"activateFailed": "활성화 실패",
|
||
"licenseActivated": "Pro 라이선스가 활성화되었습니다",
|
||
"paymentPending": "결제 후 라이선스를 여기에 붙여넣거나 나중에 다시 활성화해 보세요",
|
||
"invalidLicense": "활성화 실패: 잘못된 라이선스",
|
||
"goUpgrade": "업그레이드",
|
||
"haveLicense": "라이선스가 있나요? 활성화",
|
||
"title": "OpsXShell · 프로 잠금 해제",
|
||
"subtitleComingSoon": "고급 기능 곧 제공 · 프로로 먼저 체험",
|
||
"subtitleUnlock": "고급 기능을 잠금 해제하는 중",
|
||
"subtitleDefault": "포트 포워딩, 터미널 AI, 일괄 운영, 호스트 목록, 원격 데스크톱 등 프로 기능",
|
||
"activated": "Pro 활성화됨",
|
||
"expiresAt": " · {{date}}까지 유효",
|
||
"lifetime": " · 평생 라이선스",
|
||
"oneTimeFee": "무료 / 프로 연간 / 프로 영구",
|
||
"pasteLicense": "라이선스 붙여넣기",
|
||
"activateButton": "활성화",
|
||
"clearLicense": "로컬 라이선스 삭제",
|
||
"paymentNote": "결제는 Waffo가 처리합니다. 이 앱은 카드 정보를 수집하지 않습니다.",
|
||
"testDeviceId": "테스트 환경 · 기기 ID: {{deviceId}}",
|
||
"later": "나중에 하기",
|
||
"viewPro": "프로 요금제 보기",
|
||
"wallComingSoonSuffix": "곧 제공",
|
||
"wallUnlock": "프로 고급 기능 잠금 해제",
|
||
"wallMessageComingSoon": "이 기능은 OpsXShell 프로에 포함되며 아직 준비 중입니다. 프로 연간 또는 영구로 먼저 체험하세요.",
|
||
"wallMessageDefault": "포트 포워딩, 터미널 AI, 일괄 실행, 호스트 목록, 원격 데스크톱은 프로에 포함됩니다. 프로 연간 또는 영구로 이 기기에서 사용하세요.",
|
||
"checkoutUnavailable": "결제를 사용할 수 없습니다 ({{status}})",
|
||
"emailLabel": "이메일",
|
||
"emailRequired": "결제 전에 이메일을 입력하세요",
|
||
"claimPending": "라이선스를 받는 중…",
|
||
"invalidKeyFormat": "키 형식이 올바르지 않습니다. LIC- 라이선스 키를 붙여넣으세요",
|
||
"accountEmail": "계정: {{email}}",
|
||
"freeTier": "무료",
|
||
"proTier": "프로",
|
||
"freeItems": {
|
||
"ssh": "SSH 터미널",
|
||
"sftp": "SFTP 파일 관리자",
|
||
"local": "로컬 터미널",
|
||
"crud": "세션 CRUD",
|
||
"import": "단일 / ssh_config 가져오기"
|
||
},
|
||
"proItems": {
|
||
"forward": "포트 포워딩",
|
||
"proxy": "세션 프록시 / SOCKS",
|
||
"serial": "시리얼 터미널",
|
||
"ai": "터미널 AI 어시스턴트",
|
||
"batch": "일괄 실행 / 브로드캐스트 동기화",
|
||
"broadcast": "브로드캐스트 동기 입력",
|
||
"importExport": "호스트 목록 일괄 가져오기/내보내기",
|
||
"desktop": "원격 데스크톱 (RDP / VNC)"
|
||
},
|
||
"planYearly": "프로 연간",
|
||
"planYearlyDesc": "¥99 / 년 · 기기 2대",
|
||
"planPerpetual": "프로 영구",
|
||
"planPerpetualDesc": "¥199 · 기기 5대 · 평생",
|
||
"planTrial": "프로 체험",
|
||
"devices": "최대 {{count}}대",
|
||
"goUpgradeYearly": "프로 연간 구매",
|
||
"goUpgradePerpetual": "프로 영구 구매",
|
||
"activatedYearly": "프로 연간 활성화됨",
|
||
"activatedPerpetual": "프로 영구 활성화됨",
|
||
"activatedTrial": "프로 체험 활성화됨",
|
||
"choosePlan": "선택: 무료 / 프로 연간 / 프로 영구",
|
||
"planFreePrice": "¥0",
|
||
"planFreeDesc": "SSH · SFTP · 로컬 터미널",
|
||
"planFreeCta": "현재 요금제",
|
||
"planIncludesPro": "모든 프로 기능 포함",
|
||
"planFree": "무료",
|
||
"subtitleUnlockDetail": "관련 기능: {{feature}}",
|
||
"wallUnlockComingSoon": "프로 고급 기능 곧 제공",
|
||
"wallMessageComingSoonFeature": "「{{feature}}」는 프로 고급 기능이며 아직 준비 중입니다. 프로 연간 또는 영구로 먼저 체험하세요.",
|
||
"wallMessageFeature": "「{{feature}}」는 프로 고급 기능입니다. 프로 연간 또는 영구로 이 기기에서 사용하세요."
|
||
},
|
||
"launcher": {
|
||
"title": "빠른 실행",
|
||
"description": "세션, 로컬 Shell, 데스크톱, 시리얼",
|
||
"cards": {
|
||
"quickConnect": {
|
||
"title": "빠른 연결",
|
||
"desc": "user@host:port"
|
||
},
|
||
"saveSession": {
|
||
"title": "세션 저장",
|
||
"desc": "자격 증명, 그룹, 프록시"
|
||
},
|
||
"serial": {
|
||
"title": "시리얼 터미널",
|
||
"desc": "보레이트 및 포트 설정"
|
||
},
|
||
"rdp": {
|
||
"title": "RDP 데스크톱",
|
||
"desc": "원격 Windows"
|
||
},
|
||
"vnc": {
|
||
"title": "VNC 데스크톱",
|
||
"desc": "원격 그래픽"
|
||
}
|
||
},
|
||
"sectionLocalShell": "로컬 셸",
|
||
"sectionSavedSessions": "저장된 세션",
|
||
"systemDefault": "시스템 기본값"
|
||
},
|
||
"statusBar": {
|
||
"socksLabel": "포워딩",
|
||
"socksIdle": "포트 포워딩 열기 · 우클릭으로 SOCKS 복사",
|
||
"socksRunning": "SOCKS5 실행 중 · 클릭하여 관리 · 우클릭으로 복사",
|
||
"forwardOpenIdle": "포트 포워딩 열기 · 우클릭으로 socks5://127.0.0.1:{{port}} 복사",
|
||
"forwardOpenRunning": "SOCKS5 실행 중 (:{{port}}) · 클릭하여 관리 · 우클릭으로 복사",
|
||
"forwardStarted": "포워딩 시작됨",
|
||
"forwardStartedDynamic": "SOCKS5 시작됨: socks5://127.0.0.1:{{port}}",
|
||
"forwardResumed": "포트 포워딩 {{count}}개를 복구했습니다",
|
||
"socksStartFailed": "시작 실패: {{message}}",
|
||
"socksStopFailed": "중지 실패: {{message}}",
|
||
"socksCopied": "socks5://127.0.0.1:{{port}} 복사됨"
|
||
},
|
||
"portForward": {
|
||
"title": "포트 포워딩",
|
||
"connectedAs": "연결됨: {{target}}",
|
||
"notConnected": "연결되지 않음 — 먼저 SSH를 연결하세요",
|
||
"socksDefaultHint": "로컬 SOCKS5: 127.0.0.1:1080",
|
||
"socksRunning": "SOCKS5 실행 중",
|
||
"socksStart": "SOCKS5 시작",
|
||
"addRule": "추가",
|
||
"emptyTitle": "포트 포워딩 없음",
|
||
"emptyDesc": "SOCKS5를 시작하거나 로컬/원격 규칙을 추가하세요",
|
||
"emptyAction": "127.0.0.1:1080 시작",
|
||
"typeLocal": "로컬",
|
||
"typeRemote": "원격",
|
||
"typeDynamic": "동적",
|
||
"running": "실행 중",
|
||
"socksProxy": "SOCKS5: 127.0.0.1:{{port}}",
|
||
"remoteToLocal": "원격 {{bind}}:{{remote}} → {{host}}:{{local}}",
|
||
"stats": "{{connections}}개 연결 · ↑{{up}} · ↓{{down}}",
|
||
"copyProxy": "프록시 복사",
|
||
"copyRule": "규칙 복제",
|
||
"editRule": "편집",
|
||
"stopListener": "중지",
|
||
"start": "시작",
|
||
"delete": "삭제",
|
||
"editTitle": "포워딩 편집",
|
||
"addTitle": "포워딩 추가",
|
||
"typeLocalDesc": "원격 서비스 접근",
|
||
"typeRemoteDesc": "로컬 서비스 노출",
|
||
"typeDynamicDesc": "SOCKS5",
|
||
"selectType": "유형",
|
||
"drawerSubtitle": "현재 SSH 세션을 통한 터널",
|
||
"ruleFields": "세부 정보",
|
||
"dynamicHint": "로컬 SOCKS5(기본 :1080). 트래픽은 현재 SSH 출구를 통해 나갑니다.",
|
||
"dynamicSingleHint": "SSH 호스트당 동적 규칙 1개. 중지 후 포트 변경.",
|
||
"dynamicPortHint": "사용 중이면 다른 포트(예: 1081).",
|
||
"ruleList": "규칙",
|
||
"ruleListEmpty": "아직 로컬/원격 규칙이 없습니다",
|
||
"addSection": "새로 추가",
|
||
"errorDynamicExists": "동적 규칙이 이미 존재합니다 (1080). 대신 시작하거나 중지하세요.",
|
||
"diagram": {
|
||
"title": "작동 방식",
|
||
"localApp": "로컬 앱",
|
||
"sshHost": "SSH 호스트",
|
||
"remoteService": "원격 서비스",
|
||
"remoteClient": "원격 클라이언트",
|
||
"localService": "로컬 서비스",
|
||
"localClient": "로컬",
|
||
"browser": "로컬 클라이언트",
|
||
"socksProxy": "로컬 SOCKS",
|
||
"anyTarget": "모든 대상",
|
||
"localSide": "로컬",
|
||
"remoteSide": "원격",
|
||
"firewall": "방화벽",
|
||
"viaApp": "OpsXShell 경유",
|
||
"viaSsh": "SSH 경유",
|
||
"toTarget": "대상으로",
|
||
"toListen": "수신",
|
||
"targetDb": "DB",
|
||
"targetWeb": "웹",
|
||
"targetApi": "API",
|
||
"remotePeerA": "원격 A",
|
||
"remotePeerB": "원격 B",
|
||
"remotePeerC": "원격 C",
|
||
"cloudA": "클라우드 A",
|
||
"cloudB": "클라우드 B",
|
||
"internet": "인터넷",
|
||
"localCaption": "로컬: 원격 포트를 로컬 포트인 것처럼 접근합니다.",
|
||
"remoteCaption": "원격: 원격 접근을 로컬 서비스로 포워딩합니다.",
|
||
"dynamicCaption": "동적: 로컬 SOCKS5, 현재 SSH 출구로 외부 접속."
|
||
},
|
||
"ruleName": "이름",
|
||
"ruleNamePlaceholder": "예: MySQL",
|
||
"localListenPort": "로컬 수신 포트",
|
||
"localListenPortHint": "기본 localhost — ssh -L 포트:… 와 같음. 보통 포트만 입력.",
|
||
"localBindAdvanced": "고급: 로컬 바인드 변경",
|
||
"localTargetPort": "로컬 대상 포트",
|
||
"remoteTargetPort": "대상 포트",
|
||
"remoteListenPort": "원격 수신 포트",
|
||
"remoteListenPortHint": "기본은 원격 localhost — ssh -R 포트:… 와 같습니다. 보통 포트만 입력하세요.",
|
||
"remoteListenAddress": "원격 수신",
|
||
"remoteListenAddressPlaceholder": "127.0.0.1:18080",
|
||
"remoteListenAddressHint": "127.0.0.1 = 원격 본기만 / 0.0.0.0 = 원격 LAN(GatewayPorts 필요).",
|
||
"errorRemoteListenAddress": "유효한 원격 수신 주소 입력(예: 127.0.0.1:18080)",
|
||
"localTargetAddress": "로컬 / LAN 대상",
|
||
"localTargetAddressPlaceholder": "127.0.0.1:8080",
|
||
"localTargetAddressHint": "로컬/LAN 서비스로 전달 (예: 127.0.0.1:8080). 0.0.0.0 금지.",
|
||
"viaSessionRemote": "{{target}} 에서 수신 (기본 localhost)",
|
||
"errorRemoteListenPort": "유효한 원격 수신 포트(1–65535)를 입력하세요",
|
||
"errorLocalTargetAddress": "유효한 로컬/LAN 대상 입력(예: 127.0.0.1:8080)",
|
||
"portPlaceholder": "예: 3306",
|
||
"remoteHost": "대상 호스트",
|
||
"remoteHostPlaceholder": "127.0.0.1",
|
||
"socksRuleName": "SOCKS5 프록시",
|
||
"defaultLocalName": "로컬 포워딩",
|
||
"defaultRemoteName": "원격 포워딩",
|
||
"sessionRestoredTitle": "세션 복원됨",
|
||
"sessionRestoredDesc": "마지막 세션의 포트 포워딩 탭이 복원되었습니다.\n다시 사용하려면 SSH를 재연결하세요.",
|
||
"stopEditTitle": "편집 전 중지",
|
||
"stopEditMessage": "이 포워딩이 실행 중입니다. 편집하기 전에 중지하시겠습니까?",
|
||
"stopEditConfirm": "중지하고 편집",
|
||
"deleteTitle": "규칙 삭제",
|
||
"deleteRunning": "실행 중인 포워딩이 먼저 중지됩니다.",
|
||
"deleteConfirm": "이 규칙을 삭제하시겠습니까?",
|
||
"errorNamePort": "이름과 유효한 포트(1–65535)를 입력하세요",
|
||
"errorTargetPort": "유효한 대상 포트(1–65535)를 입력하세요",
|
||
"errorRemoteHost": "대상 호스트를 입력하세요(SSH 서버 기준)",
|
||
"errorNotConnected": "연결되지 않음",
|
||
"errorStartFailed": "시작 실패",
|
||
"errorStopFailed": "중지 실패",
|
||
"errorSocksRunning": "SOCKS5가 이미 실행 중입니다",
|
||
"copySuffix": "복사",
|
||
"remoteBindHint": "0.0.0.0 은 GatewayPorts 필요. 없으면 종종 127.0.0.1 만 바인드. 대상에 0.0.0.0 금지.",
|
||
"localToRemote": "로컬 {{bind}}:{{local}} → 원격 {{host}}:{{remote}}",
|
||
"localToRemotePort": "로컬 :{{local}} → 원격 {{host}}:{{remote}}",
|
||
"remoteHostHint": "SSH 서버 기준. 본기는 127.0.0.1, LAN은 도달 가능한 IP. 0.0.0.0 불가.",
|
||
"localBindHost": "로컬 바인드",
|
||
"localBindHostPlaceholder": "127.0.0.1",
|
||
"localBindHostHint": "기본은 이 기기만. 0.0.0.0 또는 LAN IP로 네트워크 접근 허용.",
|
||
"errorTargetHostInvalid": "대상은 0.0.0.0 불가 — 127.0.0.1 또는 도달 가능한 IP",
|
||
"listenAddress": "로컬 수신",
|
||
"listenAddressPlaceholder": "127.0.0.1:8080",
|
||
"listenAddressHint": "기본은 이 기기만. 0.0.0.0이면 LAN 접근 가능.",
|
||
"targetAddress": "원격 대상",
|
||
"targetAddressPlaceholder": "127.0.0.1:80",
|
||
"targetAddressHint": "SSH 서버에서 본 주소. 본기 서비스는 127.0.0.1:포트.",
|
||
"errorListenAddress": "유효한 수신 주소 입력(예: 127.0.0.1:8080)",
|
||
"errorTargetAddress": "유효한 대상 입력(예: 127.0.0.1:80)",
|
||
"targetAddressHintVia": "{{target}} 경유. 본기 서비스는 127.0.0.1:포트(새 원격 포트 생성 안 함).",
|
||
"viaSession": "세션 경유 {{target}}",
|
||
"remoteToLocalPort": "원격 :{{remote}} → {{host}}:{{local}}",
|
||
"remoteBindAdvanced": "고급: 원격 바인드 변경",
|
||
"remoteBindHost": "원격 바인드",
|
||
"remoteBindHostPlaceholder": "127.0.0.1",
|
||
"remoteBindHostHint": "기본은 원격 호스트만. 0.0.0.0 은 GatewayPorts 필요. 없으면 대부분 sshd 가 여전히 127.0.0.1 만 바인드합니다.",
|
||
"remoteGatewayPortsWarning": "원격 0.0.0.0 수신을 요청했습니다. GatewayPorts 가 없으면 sshd 가 조용히 127.0.0.1 만 바인드하는 경우가 많습니다."
|
||
}
|
||
}
|