> For the complete documentation index, see [llms.txt](https://replyblue-catalog.gitbook.io/replyblues-organization/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://replyblue-catalog.gitbook.io/replyblues-organization/developer-and-infrastructure-docs/developers-guide-outdated.md).

# Developers Guide (outdated)

NEEDS TO BE UPDATED

### &#x20;Recommended Access Methods:

1️⃣ **Tailscale VPN + SSH Key-Based Access to the VM (Best for Security & Simplicity)**

**🔒 Steps to Securely Grant Access**

**Step 1: Ensure the VM is Connected to Tailscale**

* If your **Proxmox host** or **VM** is not already in your Tailscale network, install Tailscale:

```bash
// curl -fsSL https://tailscale.com/install.sh | sh
tailscale up
```

Verify that your VM is assigned a Tailscale IP (e.g., 100.x.x.x):

```bash
// tailscale status 
```

**Step 2:  Add Your Developers to Your Tailscale Network**

• Ask your developer to generate an SSH key pair on their local machine:

1\. Create an SSH Key Pair on Developer’s Machine

Steps:

**Step 2:  Add Your Developers to Your Tailscale Network**

```bash
// tailscale status 
```

Verify that your VM is assigned a Tailscale IP (e.g., 100.x.x.x):

```bash
// curl -fsSL https://tailscale.com/install.sh | sh
tailscale up
```

* Invite your developer to your Tailscale team via the Tailscale admin panel.
* Once they accept, they’ll get a Tailscale IP that allows them to connect securely within the VPN.

**Step 3:  Set Up SSH Key-Based Authentication**

* Ask your developer to generate an SSH key pair:

```bash
// ssh-keygen -t rsa -b 4096
```

* They should send you their public key (usually \~/.ssh/id\_rsa.pub).

• Add the key to the **VM’s authorized keys:**

```bash
echo "developer_public_key_here" >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
```

* Now, they can SSH into the VM securely through the Tailscale VPN:

```bash
// ssh -i ~/.ssh/id_rsa developer@100.x.x.x  # Use Tailscale IP
```

***

## Accessing Virtual Machines via Screen Sharing

✅ **Step 1: Invite Developer to Tailscale Network**

1. Go to Tailscale Admin Panel: <https://login.tailscale.com/admin/members>
2. Click "Invite User".
3. Enter your developer's email.
4. Send the invite. Your developer must accept it.
   1. Developer needs to install Tailscale once they received the invite:
      1. Windows: <https://tailscale.com/download/windows>&#x20;
      2. Mac: <https://tailscale.com/download/macos>
      3. Linux: <https://tailscale.com/download/linux>

✅ **Step 2:  Verify Developer is Connected to Tailscale**

1. On your Tailscale Admin Panel, check if developer's device appear under "Machines".
2. If their device shows Active, they are now inside the network.

✅ **Step 3:  Provide the Tailscale IP of Your VM**

1. On your laptop, find the Tailscale IP of the VM:

Tailscale IP Address: 100.127.97.79

✅ **Step 3:  Provide the Tailscale IP of Your VM**

1. **On your laptop, find the Tailscale IP of the VM:**

```bash
tailscale status
```

* Example output:

```bash
bluebubbles-vm 100.64.12.34 linux active
```

2. Share this Tailscale IP Address: `100.127.97.79`
3. Use this IP address in VNC Client

### Enable Screen Sharing (VNC) on macOS for DEVELOPER ( [Salman Maqbool](mailto:undefined))

1. Ensure you have VNC Viewer installed on your Mac OS System.
2. Go to your email inbox and approve the request to gain access to Tailscale. You should be able to access the admin panel - something like this: \
   Why I am using Tailscale? Tailscale is a private network that operates all Replyblue's device together to protect people from accessing these devices. Each device gets assigned an IP address that is rotated.

<figure><img src="https://3529502190-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FDrye6MQ3kgpmdUFCYrXP%2Fuploads%2Fo3Yv1x625BjLXIoXPgjr%2FScreenshot%202025-02-05%20at%208.59.29%E2%80%AFPM.png?alt=media&amp;token=ce961429-761b-4845-a0e3-37e89927260a" alt=""><figcaption></figcaption></figure>

3. Next, install Tailscale on your laptop in order to join my private network - this will allow you to access my virtual machines.
4. Once you have Tailscale installed on your laptop, then open up "VNC Viewer" application.
5. In the address bar type in the private IP Address that is assigned to "Houston-VM" - **100.127.97.79**

   <figure><img src="https://3529502190-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FDrye6MQ3kgpmdUFCYrXP%2Fuploads%2FGM9Q2dM7fh4AEkzFWP8t%2FScreenshot%202025-02-05%20at%209.02.24%E2%80%AFPM.png?alt=media&amp;token=4592536d-8ba3-4015-a03b-3b9b238048ad" alt=""><figcaption></figcaption></figure>
6. Once you type in the IP address, then it should prompt you to enter the login credentials\
   \
   **Username:** houston-monterey-vm
7. **Password:** 1234

   <figure><img src="https://3529502190-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FDrye6MQ3kgpmdUFCYrXP%2Fuploads%2F6wDgPPRJ1rtnllmwxjDp%2FScreenshot%202025-02-05%20at%209.05.51%E2%80%AFPM.png?alt=media&amp;token=c6555168-867b-42d9-a14f-fc36250d8a44" alt=""><figcaption></figcaption></figure>

### Enable Screen Sharing (VNC) on macOS

1\. Open System Preferences → Click on Sharing.

2\. Enable “Screen Sharing” by checking the box.

3\. Click Computer Settings…, then check:

• ✅ “Anyone may request permission to control the screen”

• ✅ “VNC viewers may control screen with password”

4\. Set a VNC password for security.

5\. Note your Mac’s IP address (found under Network settings).

6\. The developer can now connect using a VNC client:

<pre class="language-markup"><code class="lang-markup">IP Address: 100.127.97.79
OR
host-name: "houston-monterey-vm's iMac Pro"

<strong>Password: 123456
</strong></code></pre>

## Developer access Tailscale
