---
title: "Shadowsocks"
description: "Cipher, plugin, liên kết và tính năng Shadowsocks mà Potatso hỗ trợ."
---

> Documentation Index
> Fetch the complete documentation index at: https://potatso.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Shadowsocks

Máy chủ Shadowsocks được mô tả bằng **cipher** và **mật khẩu**, và tùy chọn một **plugin** ngụy trang kết nối. Potatso kết nối với máy chủ khi hỗ trợ cipher và, nếu có, cả plugin. Hãy dùng các bảng dưới đây để kiểm tra cài đặt máy chủ của bạn, như nhà cung cấp hiển thị hoặc trong liên kết `ss://` của nó.

Bạn có thể thêm máy chủ Shadowsocks thủ công, bằng [liên kết `ss://`](#links), hoặc bằng cách nhập:

- đăng ký Clash hoặc Mihomo,
- cấu hình trực tuyến [SIP008](https://shadowsocks.org/doc/sip008.html), từ tệp hoặc liên kết,
- `config.json` của shadowsocks-rust hoặc shadowsocks-libev,
- cấu hình Surge, hoặc cấu hình Xray hay V2Ray.

## Cipher {#ciphers}

Hãy ưu tiên cipher 2022 nếu máy chủ cung cấp, rồi đến cipher AEAD. Cipher luồng có điểm yếu đã biết: chỉ dùng với máy chủ không cung cấp gì khác.

| Cipher | Loại | Hỗ trợ |
| --- | --- | --- |
| `2022-blake3-aes-128-gcm`, `2022-blake3-aes-256-gcm` | 2022 | ✅ Với [nhiều người dùng](#multi-user) |
| `2022-blake3-chacha20-poly1305`, `2022-blake3-chacha8-poly1305` | 2022 | ✅ |
| `aes-128-gcm`, `aes-192-gcm`, `aes-256-gcm` | AEAD | ✅ |
| `chacha20-ietf-poly1305`, `xchacha20-ietf-poly1305` | AEAD | ✅ |
| `aes-128-ccm`, `aes-256-ccm`, `aes-128-gcm-siv`, `aes-256-gcm-siv` | AEAD | ✅ |
| `sm4-gcm`, `sm4-ccm` | AEAD | ✅ |
| `aes-128-ctr`, `aes-192-ctr`, `aes-256-ctr` | Luồng | ✅ |
| `aes-128-cfb`, `aes-192-cfb`, `aes-256-cfb` (cũng viết là `-cfb128`) | Luồng | ✅ |
| `aes-128-cfb1`, `aes-192-cfb1`, `aes-256-cfb1` | Luồng | ✅ |
| `aes-128-cfb8`, `aes-192-cfb8`, `aes-256-cfb8` | Luồng | ✅ |
| `aes-128-ofb`, `aes-192-ofb`, `aes-256-ofb` | Luồng | ✅ |
| `camellia-128-ctr`, `camellia-192-ctr`, `camellia-256-ctr` | Luồng | ✅ |
| `camellia-128-cfb`, `camellia-192-cfb`, `camellia-256-cfb` (cũng viết là `-cfb128`) | Luồng | ✅ |
| `camellia-128-cfb1`, `camellia-192-cfb1`, `camellia-256-cfb1` | Luồng | ✅ |
| `camellia-128-cfb8`, `camellia-192-cfb8`, `camellia-256-cfb8` | Luồng | ✅ |
| `camellia-128-ofb`, `camellia-192-ofb`, `camellia-256-ofb` | Luồng | ✅ |
| `chacha20-ietf`, `chacha20`, `salsa20` | Luồng | ✅ |
| `bf-cfb`, `rc4-md5`, `rc4`, `table` | Luồng | ✅ |
| `none` (cũng viết là `plain`) | Không mã hóa | ✅ |
| `cast5-cfb`, `des-cfb`, `idea-cfb`, `rc2-cfb`, `seed-cfb`, `rc4-md5-6` | Luồng | ❌ Chỉ ShadowsocksR |
| `xchacha20`, `xsalsa20` | Luồng | ❌ |

Tên không phân biệt hoa thường, nên `AES-256-GCM` hoạt động giống `aes-256-gcm`.

`none` gửi lưu lượng của bạn không mã hóa. Chỉ dùng với plugin tự mã hóa kết nối, như v2ray-plugin với TLS.

Mọi cipher được hỗ trợ đều được kiểm thử với ít nhất một máy chủ Shadowsocks thật: [shadowsocks-rust](https://github.com/shadowsocks/shadowsocks-rust), [sing-box](https://sing-box.sagernet.org/) hoặc máy chủ Python gốc. Trong các cipher AEAD ở trên, chỉ máy chủ shadowsocks-rust cung cấp `aes-*-ccm`, `aes-*-gcm-siv` và `sm4-*`, và ít nhà cung cấp dùng chúng.

### Khóa 2022 {#2022-keys}

Các cipher 2022 ([SIP022](https://shadowsocks.org/doc/sip022.html)) không dùng mật khẩu. Chúng dùng khóa: các byte ngẫu nhiên, mã hóa Base64, với độ dài cipher cần. `2022-blake3-aes-128-gcm` cần khóa 16 byte và các cipher 2022 khác cần khóa 32 byte. Hãy dùng khóa đúng như máy chủ của bạn có.

Potatso không kết nối với khóa sai độ dài, hoặc với mật khẩu không phải Base64. Để tạo khóa mới cho máy chủ của bạn, chạy `openssl rand -base64 16` cho `2022-blake3-aes-128-gcm`, hoặc `openssl rand -base64 32` cho các cipher 2022 khác.

### Máy chủ nhiều người dùng {#multi-user}

Máy chủ 2022 có thể chia sẻ một cổng cho nhiều người dùng ([SIP023](https://shadowsocks.org/doc/sip023.html)). Mỗi người dùng có khóa riêng. Với các máy chủ này, đặt mật khẩu là khóa máy chủ và khóa người dùng của bạn, cách nhau bằng dấu hai chấm:

```text
server-key:user-key
```

Chỉ `2022-blake3-aes-128-gcm` và `2022-blake3-aes-256-gcm` hỗ trợ máy chủ nhiều người dùng.

## Plugin {#plugins}

Plugin bọc kết nối Shadowsocks để khó bị phát hiện hơn. Potatso tích hợp sẵn các plugin này, nên không cần cài thêm gì.

| Plugin | Tên plugin | Hỗ trợ | UDP |
| --- | --- | --- | --- |
| Simple Obfs | `obfs-local`, `simple-obfs`, `obfs` | ✅ `obfs=http` và `obfs=tls` | Gửi đến máy chủ không qua plugin |
| v2ray-plugin | `v2ray-plugin` | ✅ WebSocket, có hoặc không có TLS. Chế độ QUIC không được hỗ trợ. | ❌ |
| gost-plugin | `gost-plugin` | ✅ WebSocket, có hoặc không có TLS | ❌ |
| ShadowTLS | `shadow-tls` | ✅ Phiên bản 1, 2 và 3 | ❌ |
| Restls | `restls` | ✅ | ❌ |
| JLS | `jls` | ✅ | ❌ |

Potatso không nhập máy chủ cần plugin khác:

- Cloak, xray-plugin và các plugin khác là chương trình mà thiết bị của bạn phải chạy cạnh Potatso, điều iOS không cho phép.
- kcptun và ech-tls-tunnel chưa có trong Potatso.

### Đặt plugin {#set-plugin}

Trong cài đặt của máy chủ, chọn plugin dưới **Plugin**, rồi nhập tùy chọn của nó trong **Tham số plugin**. Tùy chọn là các cặp `key=value` cách nhau bằng dấu chấm phẩy, như trong ví dụ Simple Obfs này:

```text
obfs=tls;obfs-host=cdn.example.com
```

Một khóa đứng riêng, như `tls`, bật tùy chọn đó. Bỏ qua mọi tùy chọn bạn không cần; các bảng bên dưới cho biết giá trị mặc định của từng tùy chọn.

Khi bạn nhập một máy chủ, Potatso đặt plugin và tùy chọn của nó cho bạn:

- [Liên kết `ss://`](#links) mang chúng trong tham số `plugin`, sau tên plugin: `simple-obfs;obfs=tls;obfs-host=cdn.example.com`.
- Đăng ký Clash hoặc Mihomo mang chúng trong `plugin` và `plugin-opts`.
- Cấu hình SIP008 hoặc `config.json` của shadowsocks-rust hay shadowsocks-libev mang chúng trong `plugin` và `plugin_opts`.

Đây là cùng các tùy chọn ở mọi dạng. Nếu nhà cung cấp liệt kê chúng mỗi dòng một tùy chọn, như trong `plugin-opts` của Clash, hãy viết từng tùy chọn dưới dạng `key=value` và nối chúng bằng dấu chấm phẩy.

### Tùy chọn plugin {#plugin-options}

**Simple Obfs**

| Tùy chọn | Mô tả |
| --- | --- |
| `obfs` | Bắt buộc. `http` hoặc `tls`. |
| `obfs-host` | Header `Host` (`http`) hoặc tên máy chủ gửi trong bắt tay TLS (`tls`). Khi để trống, Potatso dùng địa chỉ của máy chủ. |
| `obfs-uri` | Chỉ `http`. Đường dẫn yêu cầu. Mặc định `/`. |
| `http-method` | Chỉ `http`. Phương thức yêu cầu. Mặc định `GET`. |

**v2ray-plugin**

| Tùy chọn | Mô tả |
| --- | --- |
| `mode` | `websocket`, mặc định. Chế độ QUIC không được hỗ trợ. |
| `tls` | Kết nối qua TLS. Mặc định tắt. |
| `host` | Header `Host`, và tên máy chủ cho TLS. Khi để trống, Potatso dùng địa chỉ của máy chủ. |
| `path` | Đường dẫn WebSocket. Mặc định `/`. |
| `mux` | Ghép kênh. Mặc định tắt. Chỉ bật nếu máy chủ của bạn dùng. |
| `skip-cert-verify` | Chấp nhận mọi chứng chỉ máy chủ. Chỉ dùng với máy chủ bạn tin cậy. |
| `header` | Một header yêu cầu bổ sung, dưới dạng `header=Name:Value`. Lặp lại để thêm header. |

**gost-plugin**

| Tùy chọn | Mô tả |
| --- | --- |
| `mode` | Bắt buộc. `websocket`. |
| `tls` | Kết nối qua TLS. Mặc định tắt. |
| `host` | Header `Host`, và tên máy chủ cho TLS. Mặc định `bing.com`, như trong gost. |
| `path` | Đường dẫn WebSocket. Mặc định `/`. |
| `mux` | Ghép kênh. Mặc định bật. |
| `skip-cert-verify` | Chấp nhận mọi chứng chỉ máy chủ. Chỉ dùng với máy chủ bạn tin cậy. |
| `fingerprint` | Dấu vân tay SHA-256 của chứng chỉ máy chủ, để chỉ chấp nhận chứng chỉ đó. |
| `header` | Một header yêu cầu bổ sung, dưới dạng `header=Name:Value`. Lặp lại để thêm header. |

**ShadowTLS**

| Tùy chọn | Mô tả |
| --- | --- |
| `host` | Bắt buộc. Tên máy chủ của trang web ngụy trang, như `www.example.com`. |
| `version` | Bắt buộc. `1`, `2` hoặc `3`. |
| `password` | Mật khẩu. Phiên bản 2 và 3 cần nó. |
| `alpn` | Danh sách ALPN, cách nhau bằng dấu phẩy. Mặc định `h2,http/1.1`. |
| `skip-cert-verify` | Chấp nhận mọi chứng chỉ của trang web ngụy trang. |

**Restls**

| Tùy chọn | Mô tả |
| --- | --- |
| `host` | Bắt buộc. Tên máy chủ của trang web ngụy trang. |
| `password` | Bắt buộc. Mật khẩu. |
| `version-hint` | Bắt buộc. `tls13` hoặc `tls12`, theo cách máy chủ của bạn được thiết lập. |
| `restls-script` | Script bản ghi, nếu nhà cung cấp đưa. |

**JLS**

| Tùy chọn | Mô tả |
| --- | --- |
| `host` | Bắt buộc. Tên máy chủ của trang web ngụy trang. |
| `username` | Bắt buộc. Tên người dùng. |
| `password` | Bắt buộc. Mật khẩu. |
| `alpn` | Danh sách ALPN, cách nhau bằng dấu phẩy. Mặc định `h2,http/1.1`. |

Potatso không kết nối với máy chủ khi thiếu tùy chọn bắt buộc hoặc giá trị không hợp lệ.

## UDP {#udp}

UDP bật theo mặc định cho máy chủ Shadowsocks và hoạt động với mọi cipher được hỗ trợ. Hãy tắt nó trong cài đặt máy chủ nếu máy chủ của bạn không chuyển tiếp UDP.

UDP không được gửi qua plugin, nên với plugin khác Simple Obfs, máy chủ chỉ mang TCP. Potatso không hỗ trợ UDP-over-TCP (`udp-over-tcp` hoặc `uot` trong liên kết hay đăng ký) và không nhập máy chủ yêu cầu nó.

## Hỗ trợ tính năng {#features}

| Tính năng | Hỗ trợ |
| --- | --- |
| Liên kết `ss://` [SIP002](https://shadowsocks.org/doc/sip002.html) | ✅ Gồm cả dạng Base64 cũ hơn |
| Plugin [SIP003](https://shadowsocks.org/doc/sip003.html) | Chỉ các [plugin tích hợp sẵn](#plugins) |
| SIP003u (UDP qua plugin) | ❌ |
| [Cipher AEAD](https://shadowsocks.org/doc/aead.html) (SIP004) | ✅ |
| Cấu hình trực tuyến [SIP008](https://shadowsocks.org/doc/sip008.html) | ✅ |
| Cipher 2022 [SIP022](https://shadowsocks.org/doc/sip022.html) | ✅ TCP và UDP |
| Header định danh nhiều người dùng [SIP023](https://shadowsocks.org/doc/sip023.html) | ✅ Cho các cipher AES 2022 |
| [Cipher luồng](https://shadowsocks.org/doc/stream.html) | ✅ Xem [Cipher](#ciphers) |
| UDP-over-TCP | ❌ |
| TCP Fast Open, MPTCP | ❌ |

Một số tính năng của shadowsocks-rust là cài đặt của chính chương trình máy khách `sslocal`, và Potatso làm công việc tương tự theo cách riêng:

- Máy chủ SOCKS5, HTTP, tunnel, redir, DNS và TUN cục bộ: Potatso tự bắt lưu lượng của thiết bị.
- Danh sách kiểm soát truy cập (ACL): hãy dùng quy tắc trong hồ sơ của bạn.
- Chọn máy chủ nhanh nhất trong nhiều máy chủ: hãy dùng nhóm proxy trong hồ sơ của bạn.

## Liên kết `ss://` {#links}

Liên kết `ss://` chứa toàn bộ máy chủ trong một dòng ([SIP002](https://shadowsocks.org/doc/sip002.html)):

```text
ss://userinfo@host:port/?plugin=…#name
```

| Thành phần | Mô tả |
| --- | --- |
| `userinfo` | Cipher và mật khẩu dưới dạng `cipher:password`, mã hóa Base64 hoặc mã hóa phần trăm. Cipher 2022 phải dùng dạng mã hóa phần trăm. |
| `host` | Địa chỉ máy chủ. Đặt địa chỉ IPv6 trong dấu ngoặc vuông, chẳng hạn `[2001:db8::1]`. |
| `port` | Cổng máy chủ. |
| `plugin` | Tùy chọn. Tên plugin và tùy chọn của nó, cách nhau bằng dấu chấm phẩy và mã hóa phần trăm, chẳng hạn `simple-obfs;obfs=tls;obfs-host=cdn.example.com`. |
| `name` | Tùy chọn. Tên của máy chủ trong Potatso. |

Potatso cũng nhập dạng cũ hơn, trong đó mọi thứ trước `#` được mã hóa Base64:

```text
ss://base64(cipher:password@host:port)#name
```

Potatso chấp nhận Base64 chuẩn và Base64 an toàn cho URL, có hoặc không có đệm `=`. Khi Potatso chia sẻ máy chủ, nó đưa ra dạng Base64 và dạng mã hóa phần trăm của SIP002 cùng dạng cũ hơn.

### Ví dụ {#link-examples}

Mỗi ví dụ cho thấy liên kết để nhập. Mật khẩu trong các ví dụ AEAD là `secret`.

Một máy chủ cơ bản với `aes-256-gcm`:

```text
ss://YWVzLTI1Ni1nY206c2VjcmV0@ss.example.com:8388#Basic
```

Máy chủ 2022 với khóa 16 byte `MTIzNDU2Nzg5MDEyMzQ1Ng==`:

```text
ss://2022-blake3-aes-128-gcm:MTIzNDU2Nzg5MDEyMzQ1Ng%3D%3D@ss.example.com:8388#2022
```

Máy chủ 2022 nhiều người dùng, với khóa máy chủ và khóa người dùng cách nhau bằng dấu hai chấm (`%3A`):

```text
ss://2022-blake3-aes-256-gcm:MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI%3D%3AYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU%3D@ss.example.com:8388#Multi-user
```

Simple Obfs với TLS, dùng `cdn.example.com` làm tên máy chủ:

```text
ss://YWVzLTI1Ni1nY206c2VjcmV0@ss.example.com:443/?plugin=simple-obfs%3Bobfs%3Dtls%3Bobfs-host%3Dcdn.example.com#Obfs
```

Dạng cũ của máy chủ cơ bản:

```text
ss://YWVzLTI1Ni1nY206c2VjcmV0QHNzLmV4YW1wbGUuY29tOjgzODg#Legacy
```

Máy chủ với địa chỉ IPv6:

```text
ss://YWVzLTI1Ni1nY206c2VjcmV0@[2001:db8::1]:8388#IPv6
```

Source: https://potatso.com/docs/vi/protocols/shadowsocks/index.mdx
