diff --git a/locale/ko/docs/guides/debugging-getting-started.md b/locale/ko/docs/guides/debugging-getting-started.md
index edf9ea29baea4..6866e8690b1a2 100644
--- a/locale/ko/docs/guides/debugging-getting-started.md
+++ b/locale/ko/docs/guides/debugging-getting-started.md
@@ -10,8 +10,6 @@ This guide will help you get started debugging your Node.js apps and scripts.
## Enable Inspector
-**NOTE**: The `--inspect` option and [Inspector Protocol][] are _experimental_ and may change.
-
When started with the **--inspect** switch, a Node.js process listens via WebSockets
for diagnostic commands as defined by the [Inspector Protocol][],
by default at host and port 127.0.0.1:9229. Each process is also assigned a
@@ -55,8 +53,6 @@ it will activate the Inspector API.
## 인스펙터 활성화
-**NOTE**: `--inspect` 옵션과 [Inspector 프로토콜][]은 _실험 단계_이고 변경될 수 있습니다.
-
**--inspect** 스위치로 시작하면 Node.js 프로세스가 [Inspector 프로토콜][]에서 정의된
진단 명령어를 웹소켓으로 받습니다. [Inspector 프로토콜][]은 기본적으로 127.0.0.1:9229를
사용합니다. 각 프로세스에는 고유한 [UUID][](예: `0f2c936f-b1cd-4ac9-aab3-f63b0f33d55e`)도
@@ -90,6 +86,69 @@ HTTP 요청을 보내서 이 메타데이터를 받을 수 있습니다. 이는
Node 8 부터는 인스펙터 API를 활성화할 것입니다.
---
+
+
+## 보안 관련
+
+디버거가 Node.js 실행 환경에 완전히 액세스하기 때문에 이 포트에 연결할 수 있는 공격자가 노드 프로세스를 대신하여 임의의 코드를 실행할 수 있습니다. 디버거 포트를 공용 및 개인 네트워크에 노출하는 경우 보안에 미치는 영향을 이해하는 것은 중요합니다.
+
+
+
+### 디버그 포트를 공개적으로 노출하는 것은 안전하지 않습니다.
+
+디버거가 퍼블릭 IP 주소 또는 0.0.0.0에 바인딩 될 경우 IP 주소에 접근할 수 있는 어떤 클라이언트든 아무 제약 없이 디버거에 접속할 수 있고 임의의 코드를 실행할 수 있습니다.
+
+기본적으로 `node --inspect`는 127.0.0.1에 바인딩 합니다. 디버거에 외부 접속을 허용하려 할 경우 퍼블릭 IP 주소 또는 0.0.0.0 등을 명시적으로 제공해야 합니다. 이렇게 하면 잠재적으로 심각한 보안 위협에 노출될 수 있습니다. 보안 노출을 방지하기 위해 적절한 방화벽과 액세스 제어를 유지하는 것이 좋습니다.
+
+원격 디버거 클라이언트의 접근을 안전하게 허용하는 방법은 '[원격 디버깅 활성화 시나리오](#enabling-remote-debugging-scenarios)' 섹션을 참조하십시오.
+
+
+
+### 로컬 애플리케이션은 인스펙터에 완전히 액세스 할 수 있습니다.
+
+인스펙터 포트를 127.0.0.1(기본값)에 바인딩하더라도 시스템에서 로컬로 실행되는 애플리케이션들은 제한 없이 액세스 할 수 있습니다. 이것은 로컬 디버거를 편리하게 부착할 수 있도록 의도적으로 설계되었습니다.
+
+
+
+### 브라우저, 웹소켓, 동일 출처 정책
+
+웹 브라우저에서 열리는 웹사이트는 브라우저 보안 모델에 따라 웹소켓과 HTTP 요청을 할 수 있습니다. 고유한 디버거 세션 ID를 얻으려면 초기 HTTP 연결이 필요합니다. 동일 출처 정책은 이 HTTP 연결을 만들 수 없도록 합니다. [DNS 리바인딩 공격](https://en.wikipedia.org/wiki/DNS_rebinding)에 대한 추가 보안을 위해 Node.js는 연결의 'Host' 헤더가 IP 주소나 `localhost` 또는 `localhost6`을 정확하게 지정하는지 검증합니다.
+
+
+
+이러한 보안 정책은 호스트 이름을 지정하여 원격 디버그 서버에 접속할 수 없도록 합니다. IP 주소를 지정하거나 아래에 설명된 것과 같이 ssh 터널을 사용하여 이 제한사항을 해결할 수 있습니다.
-#### [VS Code](https://github.com/microsoft/vscode) 1.10+
+#### [Visual Studio Code](https://github.com/microsoft/vscode) 1.10+
* Debug 패널에서 설정 아이콘을 클릭해서 `.vscode/launch.json`을 엽니다.
초기 설정으로 "Node.js"를 선택하세요.
+#### [Visual Studio](https://github.com/Microsoft/nodejstools) 2017
+
+* 메뉴에서 "Debug > Start Debugging"을 선택하거나 F5를 누르세요.
+* [상세한 설명](https://github.com/Microsoft/nodejstools/wiki/Debugging)
+
#### [JetBrains WebStorm](https://www.jetbrains.com/webstorm/) 2017.1+와 다른 JetBrains IDE
* 새로운 Node.js 디버그 설정을 생성하고 Debug를 누르세요. Node.js 7+에서는
@@ -224,6 +293,16 @@ The following table lists the impact of various runtime flags on debugging:
+
+ node inspect --port=xxxx script.js |
+
+
+ - Spawn child process to run user's script under --inspect flag;
+ and use main process to run CLI debugger.
+ - Listen on port port (default: 9229)
+
+ |
+
---
@@ -240,7 +319,7 @@ The following table lists the impact of various runtime flags on debugging:
- 인스펙터 에이전트 활성화
- - 기본 포트(9229)를 리스닝합니다
+ - 기본 주소와 포트에서 수신(127.0.0.1:9229)
|
@@ -249,7 +328,8 @@ The following table lists the impact of various runtime flags on debugging:
- 인스펙터 에이전트 활성화
- - port 포트를 리스닝합니다
+ - 주소 또는 호스트 이름 host에 바인딩 (기본값: 127.0.0.1)
+ - port 포트에서 수신 (기본값: 9229)
|
@@ -258,8 +338,8 @@ The following table lists the impact of various runtime flags on debugging:
- 인스펙터 에이전트 활성화
- - 기본 포트(9229)를 리스닝합니다
- - 사용자 코드를 시작하기 전에 멈춥니다
+ - 기본 주소와 포트에서 수신(127.0.0.1:9229)
+ - 사용자 코드 시작 전 멈춤
|
@@ -268,8 +348,9 @@ The following table lists the impact of various runtime flags on debugging:
- 인스펙터 에이전트 활성화
- - port 포트를 리스닝합니다
- - 사용자 코드를 시작하기 전에 멈춥니다
+ - 주소 또는 호스트 이름 host에 바인딩 (기본값: 127.0.0.1)
+ - port 포트에서 수신 (기본값: 9229)
+ - 사용자 코드 시작 전 멈춤
|
@@ -277,8 +358,16 @@ The following table lists the impact of various runtime flags on debugging:
node inspect script.js |
- - 사용자의 스크립트를 --inspect 플래그로 실행하는 자식 프로세스를 생성하고
- CLI 디버거 실행에 메인 프로세스를 사용합니다.
+ - 사용자의 스크립트를 --inspect 플래그로 실행하는 자식 프로세스를 생성하고 CLI 디버거 실행에 메인 프로세스를 사용합니다.
+
+ |
+
+
+ node inspect --port=xxxx script.js |
+
+
+ - 사용자의 스크립트를 --inspect 플래그로 실행하는 자식 프로세스를 생성하고 CLI 디버거 실행에 메인 프로세스를 사용합니다.
+ - port 포트에서 수신 (기본값: 9229)
|
@@ -286,6 +375,49 @@ The following table lists the impact of various runtime flags on debugging:
---
+
+## 원격 디버깅 활성화 시나리오
+
+
+디버거가 퍼블릭 IP 주소에서 수신하지 않는 것을 권장합니다. 만약 원격 디버깅 연결을 허용해야 하는 경우 ssh 터널링을 대신 사용할 것을 권장합니다. 설명을 위해 아래 예제를 제공합니다. 진행하기 전 권한을 가진 서비스에 원격 액세스를 허용할 경우 발생할 수 있는 보안 위험을 이해하시기 바랍니다.
+
+
+디버깅하기를 원하는 remote.example.com 원격 시스템에서 노드가 실행 중이라고 가정하겠습니다. 해당 시스템에서 localhost(기본값)만 수신하는 인스펙터로 노드 프로세스를 시작해야 합니다.
+
+```bash
+$ node --inspect server.js
+```
+
+
+이제 디버그 클라이언트 연결을 시작하려는 로컬 시스템에서 ssh 터널을 설정할 수 있습니다.
+
+```bash
+$ ssh -L 9221:localhost:9229 user@remote.example.com
+```
+
+
+그러면 로컬 시스템의 9221 포트에서 remote.example.com의 9229 포트로 전달되는 ssh 터널 세션이 시작됩니다. Chrome DevTools 또는 Visual Studio Code 등의 디버거로 localhost:9221에 연결 할 수 있으며 Node.js 애플리케이션이 로컬에서 실행 중인 것처럼 디버깅할 수 있습니다.
+
+---
+
-
-# Node.js 애플리케이션 디버깅
-
-Node.js 애플리케이션을 디버그에 도움이 되는 많은 도구와 라이브러리가 있습니다만, 그 중 일부만 소개합니다.
-
-도구를 사용하지 않고 수동으로 연결하려면 **--inspect** 옵션을 사용하여 화면에 나타난 URL로 접속하세요.
-
-`--inspect` 없이 프로세스를 시작했을 경우 SIGUSR1 신호를 보내 디버거를 활성화하면 연결 URL이 화면에 나타납니다.
-
-
-
-## 인스펙터 도구와 클라이언트
-
-아래와 같은 상용, 오픈 소스 도구를 사용하면 Node.js 애플리케이션을 더 쉽게 디버깅 할 수 있습니다.
-
-### [node-inspect](https://github.com/nodejs/node-inspect)
-
-* 이 CLI 디버거는 에서 개발되고 있습니다.
-* Node에 포함되어 있으며 `node inspect myscript.js`로 실행됩니다.
-* 또한, `npm install -g node-inspect`로 직접 설치할 수 있으며, `node-inspect myscript.js`로 사용할 수 있습니다.
-
-### [Chrome DevTools](https://github.com/ChromeDevTools/devtools-frontend)
-
-* **옵션 1**: 크로미움 기반의 브라우저에서 `chrome://inspect`에 접속 후 "Open dedicated DevTools for Node"를 클릭하십시오.
-
-
-
-### [VS Code](https://github.com/microsoft/vscode) 1.10+
-
-* 디버그 패널에서 설정 아이콘을 클릭하여 `.vscode/launch.json`을 열고 초기 설정을 위해 "Node.js"를 선택합니다.
-
-### [Visual Studio](https://github.com/Microsoft/nodejstools)
-
-* 메뉴에서 "Debug > Start Debugging"을 선택하거나 F5를 누릅니다.
-* 자세한 안내는 [여기](https://github.com/Microsoft/nodejstools/wiki/Debugging)를 참고하세요.
-
-
-### [JetBrains WebStorm](https://www.jetbrains.com/webstorm/) 2017.1+ 및 기타 JetBrains IDE
-
-* 새로운 Node.js 디버그 구성을 만들고 Debug를 누릅니다.
-
-### [chrome-remote-interface](https://github.com/cyrus-and/chrome-remote-interface)
-
-* 인스펙터 프로토콜 엔드포인트에 쉽게 연결할 수 있는 라이브러리입니다.
-
-
-
-
-## 커맨드라인 옵션
-
-아래의 표는 다양한 런타임 옵션이 디버깅에 미치는 영향을 나타냅니다.
-
-
- 옵션 | 의미 |
-
- --inspect |
-
-
- - 인스펙터 에이전트를 활성화합니다
- - 기본 주소와 포트로 수신합니다 (127.0.0.1:9229)
-
- |
-
-
- --inspect=[host:port] |
-
-
- - 인스펙터 에이전트를 활성화합니다
- - host에 해당하는 주소나 호스트네임으로 바인딩합니다 (기본값: 127.0.0.1)
- - port에 해당하는 포트로 수신합니다 (기본값: 9229)
-
- |
-
-
- --inspect-brk |
-
-
- - 인스펙터 에이전트를 활성화합니다
- - 기본 주소와 포트로 수신합니다 (127.0.0.1:9229)
- - 사용자의 코드를 시작하기 전에 중단합니다
-
- |
-
-
- --inspect-brk=[host:port] |
-
-
- - 인스펙터 에이전트를 활성화합니다
- - host에 해당하는 주소나 호스트네임으로 바인딩합니다 (기본값: 127.0.0.1)
- - port에 해당하는 포트로 수신합니다 (기본값: 9229)
- - 사용자의 코드를 시작하기 전에 중단합니다
-
- |
-
-
- node inspect script.js |
-
-
- - --inspect 옵션으로 사용자의 스크립트를 실행하는 하위 프로세스를 생성하고, 메인 프로세스로 CLI 디버거를 실행합니다.
-
- |
-
-
- node inspect --port=xxxx script.js |
-
-
- - --inspect 옵션으로 사용자의 스크립트를 실행하는 하위 프로세스를 생성하고, 메인 프로세스로 CLI 디버거를 실행합니다.
- - port에 해당하는 포트로 수신합니다 (기본값: 9229)
-
- |
-
-
diff --git a/locale/ko/site.json b/locale/ko/site.json
index e874a8bd2c213..c47c31bc3cfda 100644
--- a/locale/ko/site.json
+++ b/locale/ko/site.json
@@ -93,10 +93,6 @@
"guides": {
"link": "docs/guides",
"text": "안내"
- },
- "inspector": {
- "link": "docs/inspector",
- "text": "인스펙터"
}
},
"getinvolved": {