> For the complete documentation index, see [llms.txt](https://docs.ccv.brown.edu/oscar/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ccv.brown.edu/oscar/connecting-to-oscar/remote-ide/from-non-compliant-networks-2-fa.md).

# From Non-compliant Networks (2-FA)

{% hint style="info" %}
This guide is only for users connecting from Non-Brown Compliant Networks. 2-FA is mandatory.
{% endhint %}

1. Install the [Remote Development extension pack](https://aka.ms/vscode-remote/download/extension) for VSCode
2. Open VSCode settings

   * On Windows/Linux - **File** > **Preferences** > **Settings**
   * On macOS - **Code** > **Preferences** > **Settings**

   Search for `symlink` and make sure the symlink searching is unchecked

   ![VSCode settings with symlink searching unchecked](/files/-MfcEEm-c6-L5-T4WZZ6)
3. Under VSCode settings, search for `remote ssh timeout` and manually enter a timeout value i.e. `50s`. It should give you enough time to complete 2-Factor Authentication.

   ![VSCode settings showing remote SSH timeout value](/files/TmTFoSnEoWHYj9fm4quW)
4. Edit the `~/.ssh/config` file on your local machine, add the following lines. Replace `<username>` with your Oscar username.

   ```console
   # Jump box with public IP address
   Host jump-box
     HostName ssh.ccv.brown.edu
     User <username>
   # Target machine with private IP address
   Host ccv-vscode-node
     HostName vscode1
     User <username>
     ProxyCommand ssh -q -W %h:%p jump-box
   ```
5. In VSCode, select **Remote-SSH: Connect to Host…** and after the list populates select `ccv-vscode-node`

   ![VSCode Remote-SSH connect to host dialog](/files/-Mj4nSLSBBnJMYZ3zLaP)

   <figure><img src="/files/8PbgAnJO30Z2EVLEM6Wi" alt="select vscode node"><figcaption></figcaption></figure>
6. When prompted in VSCode, please enter your Brown password and complete the DUO authentication. After that, wait about 30 seconds and VSCode should connect to Oscar.

   <figure><img src="/files/SRV8MbXhMx8wtExGwoYS" alt="Enter your Brown password and confirm access"><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.ccv.brown.edu/oscar/connecting-to-oscar/remote-ide/from-non-compliant-networks-2-fa.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
