# IP Whitelist with HTTP Tunnel

> Configure IP Whitelisting with Pinggy HTTP tunnels. Learn how to start tunnels with restricted access based on specified IP addresses.
> Source: https://pinggy.io/docs/http_tunnels/ip_whitelist/


# IP Whitelist

Pinggy provides the capability of IP whitelisting, allowing access restrictions based on specified IP addresses or ranges. This feature permits connections solely from designated IP addresses while disregarding requests from other addresses without any response.

Start tunnel with IP Whitelisting as follows:


```bash
# SSH - no install, works anywhere the ssh client is available
ssh -p 443 -R0:localhost:8000 -t free.pinggy.io w:IP1
```

```bash
# Pinggy CLI - install with: npm install -g pinggy (or download the binary)
./pinggy -p 443 -R0:localhost:8000 -t free.pinggy.io w:IP1
```


Like basic authentication, one can set multiple ip addresses as well.


```bash
# SSH - no install, works anywhere the ssh client is available
ssh -p 443 -R0:localhost:8000 -t free.pinggy.io w:[IP1[,IP2[,IP3..]]]
```

```bash
# Pinggy CLI - install with: npm install -g pinggy (or download the binary)
./pinggy -p 443 -R0:localhost:8000 -t free.pinggy.io w:[IP1[,IP2[,IP3..]]]
```


You can modify the command below to suit your needs, including adding more IP addresses. **Additionally, your IP address has been included, but feel free to add more if necessary.**


```bash
# HTTP tunnel forwarding localhost:8000
ssh -p 443 -R0:localhost:8000 free.pinggy.io
```


Configure more options (authentication, web debugger, custom domains, IP whitelisting, header rules) interactively at https://pinggy.io/docs/http_tunnels/ip_whitelist/


&nbsp;

If you execute the command with your designated port where your service is operational, you can include any desired IP address in the setup, and you'll observe an output resembling this:

![IP Whitelist With HTTP Tunnel](/doc_img/ip_whitelist_terminal.webp)


**Only the IP addresses specified in the command will be able to access the tunnel.**

