Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update korean translation #1929

Merged
merged 4 commits into from
Dec 28, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
160 changes: 146 additions & 14 deletions locale/ko/docs/guides/debugging-getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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`)도
Expand Down Expand Up @@ -90,6 +86,69 @@ HTTP 요청을 보내서 이 메타데이터를 받을 수 있습니다. 이는
Node 8 부터는 인스펙터 API를 활성화할 것입니다.

---
<!-- ## Security Implications

Since the debugger has full access to the Node.js execution environment, a
malicious actor able to connect to this port may be able to execute arbitrary
code on behalf of the Node process. It is important to understand the security
implications of exposing the debugger port on public and private networks. -->

## 보안 관련

디버거가 Node.js 실행 환경에 완전히 액세스하기 때문에 이 포트에 연결할 수 있는 공격자가 노드 프로세스를 대신하여 임의의 코드를 실행할 수 있습니다. 디버거 포트를 공용 및 개인 네트워크에 노출하는 경우 보안에 미치는 영향을 이해하는 것은 중요합니다.

<!-- ### Exposing the debug port publicly is unsafe

If the debugger is bound to a public IP address, or to 0.0.0.0, any clients that
can reach your IP address will be able to connect to the debugger without any
restriction and will be able to run arbitrary code.

By default `node --inspect` binds to 127.0.0.1. You explicitly need to provide a
public IP address or 0.0.0.0, etc., if you intend to allow external connections
to the debugger. Doing so may expose you a potentially significant security
threat. We suggest you ensure appropriate firewalls and access controls in place
to prevent a security exposure.

See the section on '[Enabling remote debugging scenarios](#enabling-remote-debugging-scenarios)' on some advice on how
to safely allow remote debugger clients to connect. -->

### 디버그 포트를 공개적으로 노출하는 것은 안전하지 않습니다.

디버거가 퍼블릭 IP 주소 또는 0.0.0.0에 바인딩 될 경우 IP 주소에 접근할 수 있는 어떤 클라이언트든 아무 제약 없이 디버거에 접속할 수 있고 임의의 코드를 실행할 수 있습니다.

기본적으로 `node --inspect`는 127.0.0.1에 바인딩 합니다. 디버거에 외부 접속을 허용하려 할 경우 퍼블릭 IP 주소 또는 0.0.0.0 등을 명시적으로 제공해야 합니다. 이렇게 하면 잠재적으로 심각한 보안 위협에 노출될 수 있습니다. 보안 노출을 방지하기 위해 적절한 방화벽과 액세스 제어를 유지하는 것이 좋습니다.

원격 디버거 클라이언트의 접근을 안전하게 허용하는 방법은 '[원격 디버깅 활성화 시나리오](#enabling-remote-debugging-scenarios)' 섹션을 참조하십시오.

<!-- ### Local applications have full access to the inspector

Even if you bind the inspector port to 127.0.0.1 (the default), any applications
running locally on your machine will have unrestricted access. This is by design
to allow local debuggers to be able to attach conveniently. -->

### 로컬 애플리케이션은 인스펙터에 완전히 액세스 할 수 있습니다.

인스펙터 포트를 127.0.0.1(기본값)에 바인딩하더라도 시스템에서 로컬로 실행되는 애플리케이션들은 제한 없이 액세스 할 수 있습니다. 이것은 로컬 디버거를 편리하게 부착할 수 있도록 의도적으로 설계되었습니다.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Application이 제목에서는 응용프로그램이라고 되어 있고 본문에서는 애플리케이션이라고 되어 있는데 일관되게 번역되었으면 합니다. 어느쪽이든 상관은 없습니다.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'응용프로그램'은 '응용 프로그램'으로 부탁드립니다.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'애플리케이션'으로 통일하였습니다.


<!-- ### Browsers, WebSockets and same-origin policy

Websites open in a web-browser can make WebSocket and HTTP requests under the
browser security model. An initial HTTP connection is necessary to obtain a
unique debugger session id. The same-origin-policy prevents websites from being
able to make this HTTP connection. For additional security against
[DNS rebinding attacks](https://en.wikipedia.org/wiki/DNS_rebinding), Node.js
verifies that the 'Host' headers for the connection either
specify an IP address or `localhost` or `localhost6` precisely. -->

### 브라우저, 웹소켓, 동일 출처 정책
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

웹소켓 을 보고 웹 소켓 이 아닐까 했는데, 대부분의 공용 문서에서 웹소켓 으로 표기하는군요..! 👍


웹 브라우저에서 열리는 웹사이트는 브라우저 보안 모델에 따라 웹소켓과 HTTP 요청을 할 수 있습니다. 고유한 디버거 세션 ID를 얻으려면 초기 HTTP 연결이 필요합니다. 동일 출처 정책은 이 HTTP 연결을 만들 수 없도록 합니다. [DNS 리바인딩 공격](https://en.wikipedia.org/wiki/DNS_rebinding)에 대한 추가 보안을 위해 Node.js는 연결의 'Host' 헤더가 IP 주소나 `localhost` 또는 `localhost6`을 정확하게 지정하는지 검증합니다.

<!-- These security policies disallow connecting to a remote debug server by
specifying the hostname. You can work-around this restriction by specifying
either the IP address or by using ssh tunnels as described below. -->

이러한 보안 정책은 호스트 이름을 지정하여 원격 디버그 서버에 접속할 수 없도록 합니다. IP 주소를 지정하거나 아래에 설명된 것과 같이 ssh 터널을 사용하여 이 제한사항을 해결할 수 있습니다.

<!--
## Inspector Clients
Expand Down Expand Up @@ -133,11 +192,16 @@ Node 인스펙터에 접속할 수 있는 여러 상용 도구와 오픈소스
복사하거나 --inspect가 알려준 텍스트에서 복사해서 크롬에 붙여넣기를 합니다.

<!--
#### [VS Code](https://github.com/microsoft/vscode) 1.10+
#### [Visual Studio Code](https://github.com/microsoft/vscode) 1.10+

* In the Debug panel, click the settings icon to open `.vscode/launch.json`.
Select "Node.js" for initial setup.

#### [Visual Studio](https://github.com/Microsoft/nodejstools) 2017

* Choose "Debug > Start Debugging" from the menu or hit F5.
* [Detailed instructions](https://github.com/Microsoft/nodejstools/wiki/Debugging).

#### [JetBrains WebStorm](https://www.jetbrains.com/webstorm/) 2017.1+ and other JetBrains IDEs

* Create a new Node.js debug configuration and hit Debug. `--inspect` will be used
Expand All @@ -151,11 +215,16 @@ Node 인스펙터에 접속할 수 있는 여러 상용 도구와 오픈소스
---
-->

#### [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+에서는
Expand Down Expand Up @@ -224,6 +293,16 @@ The following table lists the impact of various runtime flags on debugging:
</ul>
</td>
</tr>
<tr>
<td><code>node inspect --port=xxxx <i>script.js</i></code></td>
<td>
<ul>
<li>Spawn child process to run user's script under --inspect flag;
and use main process to run CLI debugger.</li>
<li>Listen on port <i>port</i> (default: 9229)</li>
</ul>
</td>
</tr>
</table>

---
Expand All @@ -240,7 +319,7 @@ The following table lists the impact of various runtime flags on debugging:
<td>
<ul>
<li>인스펙터 에이전트 활성화</li>
<li>기본 포트(9229)를 리스닝합니다</li>
<li>기본 주소와 포트에서 수신(127.0.0.1:9229)</li>
</ul>
</td>
</tr>
Expand All @@ -249,7 +328,8 @@ The following table lists the impact of various runtime flags on debugging:
<td>
<ul>
<li>인스펙터 에이전트 활성화</li>
<li><i>port</i> 포트를 리스닝합니다</li>
<li>주소 또는 호스트 이름 <i>host</i>에 바인딩 (기본값: 127.0.0.1)</li>
<li><i>port</i> 포트에서 수신 (기본값: 9229)</li>
</ul>
</td>
</tr>
Expand All @@ -258,8 +338,8 @@ The following table lists the impact of various runtime flags on debugging:
<td>
<ul>
<li>인스펙터 에이전트 활성화</li>
<li>기본 포트(9229)를 리스닝합니다</li>
<li>사용자 코드를 시작하기 전에 멈춥니다</li>
<li>기본 주소와 포트에서 수신(127.0.0.1:9229)</li>
<li>사용자 코드 시작 전 멈춤</li>
</ul>
</td>
</tr>
Expand All @@ -268,24 +348,76 @@ The following table lists the impact of various runtime flags on debugging:
<td>
<ul>
<li>인스펙터 에이전트 활성화</li>
<li><i>port</i> 포트를 리스닝합니다</li>
<li>사용자 코드를 시작하기 전에 멈춥니다</li>
<li>주소 또는 호스트 이름 <i>host</i>에 바인딩 (기본값: 127.0.0.1)</li>
<li><i>port</i> 포트에서 수신 (기본값: 9229)</li>
<li>사용자 코드 시작 전 멈춤</li>
</ul>
</td>
</tr>
<tr>
<td><code>node inspect <i>script.js</i></code></td>
<td>
<ul>
<li>사용자의 스크립트를 --inspect 플래그로 실행하는 자식 프로세스를 생성하고
CLI 디버거 실행에 메인 프로세스를 사용합니다.</li>
<li>사용자의 스크립트를 --inspect 플래그로 실행하는 자식 프로세스를 생성하고 CLI 디버거 실행에 메인 프로세스를 사용합니다.</li>
</ul>
</td>
</tr>
<tr>
<td><code>node inspect --port=xxxx <i>script.js</i></code></td>
<td>
<ul>
<li>사용자의 스크립트를 --inspect 플래그로 실행하는 자식 프로세스를 생성하고 CLI 디버거 실행에 메인 프로세스를 사용합니다.</li>
<li><i>port</i> 포트에서 수신 (기본값: 9229)</li>
</ul>
</td>
</tr>
</table>

---

<!-- ## Enabling remote debugging scenarios -->
## 원격 디버깅 활성화 시나리오

<!--
We recommend that you never have the debugger listen on a public IP address. If
you need to allow remote debugging connections we recommend the use of ssh
tunnels instead. We provide the following example for illustrative purposes only.
Please understand the security risk of allowing remote access to a privileged
service before proceeding.
-->
디버거가 퍼블릭 IP 주소에서 수신하지 않는 것을 권장합니다. 만약 원격 디버깅 연결을 허용해야 하는 경우 ssh 터널링을 대신 사용할 것을 권장합니다. 설명을 위해 아래 예제를 제공합니다. 진행하기 전 권한을 가진 서비스에 원격 액세스를 허용할 경우 발생할 수 있는 보안 위험을 이해하시기 바랍니다.

<!--
Let's say you are running Node on remote machine, remote.example.com, that you
want to be able to debug. On that machine, you should start the node process
with the inspector listening only to localhost (the default).
-->
디버깅하기를 원하는 remote.example.com 원격 시스템에서 노드가 실행 중이라고 가정하겠습니다. 해당 시스템에서 localhost(기본값)만 수신하는 인스펙터로 노드 프로세스를 시작해야 합니다.

```bash
$ node --inspect server.js
```

<!--
Now, on your local machine from where you want to initiate a debug client
connection, you can setup an ssh tunnel:
-->
이제 디버그 클라이언트 연결을 시작하려는 로컬 시스템에서 ssh 터널을 설정할 수 있습니다.

```bash
$ ssh -L 9221:localhost:9229 user@remote.example.com
```

<!--
This starts a ssh tunnel session where a connection to port 9221 on your local
machine will be forwarded to port 9229 on remote.example.com. You can now attach
a debugger such as Chrome DevTools or Visual Studio Code to localhost:9221,
which should be able to debug as if the Node.js application was running locally.
-->
그러면 로컬 시스템의 9221 포트에서 remote.example.com의 9229 포트로 전달되는 ssh 터널 세션이 시작됩니다. Chrome DevTools 또는 Visual Studio Code 등의 디버거로 localhost:9221에 연결 할 수 있으며 Node.js 애플리케이션이 로컬에서 실행 중인 것처럼 디버깅할 수 있습니다.

---

<!--
## Legacy Debugger

Expand Down
Loading