Skip to content

Commit

Permalink
docs: use themed shorthands for incompatibility notes and warnings
Browse files Browse the repository at this point in the history
  • Loading branch information
Azadzadeh committed Dec 15, 2022
1 parent 481b63e commit 8bb941e
Show file tree
Hide file tree
Showing 10 changed files with 48 additions and 14 deletions.
4 changes: 3 additions & 1 deletion docs/content/en/advance/aead.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ draft: false
weight: 8
---

### Note that Trojan does not support this feature
{{% panel status="caution" title="Compatibility" %}}
Note that Trojan does not support this feature
{{% /panel %}}

The Trojan protocol itself is not encrypted and its security relies on the underlying TLS. in general, TLS security is good and there is no need to encrypt Trojan traffic again. However, there are some scenarios where you may not be able to guarantee the security of a TLS tunnel.

Expand Down
4 changes: 3 additions & 1 deletion docs/content/en/advance/api.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ draft: false
weight: 10
---

### Note that Trojan does not support this feature
{{% panel status="caution" title="Compatibility" %}}
Note that Trojan does not support this feature
{{% /panel %}}

Trojan-Go provides a set of APIs using gRPC, which supports the following features.

Expand Down
14 changes: 11 additions & 3 deletions docs/content/en/advance/customize-protocol-stack.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ draft: false
weight: 8
---

### Note that Trojan does not support this feature
{{% panel status="caution" title="Compatibility" %}}
Note that Trojan does not support this feature
{{% /panel %}}

Trojan-Go allows advanced users to customize the protocol stack. In custom mode, Trojan-Go will relinquish control of the protocol stack and allow users to manipulate the underlying protocol stack combinations. For example:

Expand All @@ -18,11 +20,17 @@ Trojan-Go allows advanced users to customize the protocol stack. In custom mode,

And so on.

**Do not try to use this feature if you don't know anything about networking. Incorrect configuration may cause Trojan-Go to not work properly, or cause performance and security issues. **

{{% panel status="warning" title="Caution" %}}
Do not try to use this feature if you don't know anything about networking. Incorrect configuration may cause Trojan-Go to not work properly, or cause performance and security issues.
{{% /panel %}}

Trojan-Go abstracts all protocols into tunnels, each of which may provide a client, which is responsible for sending, a server, which is responsible for receiving, or both. The custom protocol stack is how the custom tunnels are stacked.

**Before proceeding with the configuration, please read the "Basic Introduction" section of the Developer's Guide to ensure that you understand how Trojan-Go works**
{{% panel status="notice" title="Prerequisite" %}}
Before proceeding with the configuration, please read the "Basic Introduction" section of the Developer's Guide to ensure that you understand how Trojan-Go works.
{{% /panel %}}


Here are the tunnels supported by Trojan-Go and their properties:

Expand Down
4 changes: 3 additions & 1 deletion docs/content/en/advance/mux.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ draft: false
weight: 1
---

### Note that Trojan does not support this feature
{{% panel status="caution" title="Compatibility" %}}
Note that Trojan does not support this feature
{{% /panel %}}

Trojan-Go supports the use of multiplexing to improve network concurrency performance.

Expand Down
4 changes: 3 additions & 1 deletion docs/content/en/advance/nat.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ draft: false
weight: 11
---

### Note that Trojan does not fully support this feature (UDP)
{{% panel status="caution" title="Compatibility" %}}
Note that Trojan does not fully support this feature (UDP)
{{% /panel %}}

Trojan-Go supports transparent TCP/UDP proxies based on tproxy.

Expand Down
14 changes: 11 additions & 3 deletions docs/content/en/advance/plugin.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,10 @@ draft: false
weight: 7
---

### Note that Trojan does not support this feature
{{% panel status="caution" title="Compatibility" %}}
Note that Trojan does not support this feature
{{% /panel %}}


Trojan-Go supports a pluggable transport layer. In principle, Trojan-Go can use any software that has TCP tunneling capabilities as a transport layer, such as v2ray, shadowsocks, kcp, etc. Also, Trojan-Go is compatible with Shadowsocks' SIP003 plugin standard, such as GoQuiet, v2ray-plugin, etc. You can also use Tor's transport layer plugins, such as obfs4, meek, etc.

Expand All @@ -18,9 +21,14 @@ We recommend that you design your own protocols and develop your own plugins**.

For example, you can use the SIP003-compliant v2ray-plugin, an example of which is shown below:

**This configuration uses websocket to transmit unencrypted trojan protocol in clear text, which is a security risk. This configuration is for demonstration purposes only. **
{{% panel status="warning" title="Caution" %}}
This configuration uses websocket to transmit unencrypted trojan protocol in clear text, which is a security risk. This configuration is for demonstration purposes only.
{{% /panel %}}

{{% panel status="danger" title="Warning" %}}
Do not use this configuration to penetrate GFW under any circumstances.
{{% /panel %}}

**Do not use this configuration to penetrate GFW under any circumstances.**

Server-side configuration.

Expand Down
4 changes: 3 additions & 1 deletion docs/content/en/advance/router.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ draft: false
weight: 3
---

### Note that Trojan does not support this feature
{{% panel status="caution" title="Compatibility" %}}
Note that Trojan does not support this feature
{{% /panel %}}

Trojan-Go's built-in routing module can help you implement domestic direct connections, i.e., the client can connect directly to domestic websites without going through a proxy.

Expand Down
4 changes: 3 additions & 1 deletion docs/content/en/advance/websocket.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ draft: false
weight: 2
---

### Note that Trojan does not support this feature
{{% panel status="caution" title="Compatibility" %}}
Note that Trojan does not support this feature
{{% /panel %}}

Trojan-Go supports using TLS+Websocket to host the Trojan protocol, making it possible to relay traffic using CDNs.

Expand Down
5 changes: 4 additions & 1 deletion docs/content/en/basic/full-config.md
Original file line number Diff line number Diff line change
Expand Up @@ -361,4 +361,7 @@ trojan-go provides an API based on gRPC to support server-side and client-side m

- ```client_cert``` If client authentication is enabled, fill in the list of certified client certificates here.

Warning:**Do not expose API services without TLS bi-directional authentication directly to the Internet, otherwise it may lead to various security problems.**

{{% panel status="warning" title="Warning" %}}
Do not expose API services without TLS bi-directional authentication directly to the Internet, otherwise it may lead to various security problems.
{{% /panel %}}
5 changes: 4 additions & 1 deletion docs/content/en/developer/websocket.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,10 @@ weight: 40

Since HTTPS is transparent to the CDN when using CDN transit, the CDN can review the content of the Websocket transfer. The Trojan protocol itself is transmitted in clear text, so to ensure security, a layer of Shadowsocks AEAD encryption layer can be added to obfuscate traffic characteristics and ensure security.

**If you are using a CDN provided by an operator in China, please make sure to turn on AEAD encryption**

{{% panel status="warning" title="Caution" %}}
If you are using a CDN provided by an operator in China, please make sure to turn on AEAD encryption.
{{% /panel %}}

When AEAD encryption is enabled, traffic carried by Websocket will be encrypted by Shadowsocks AEAD, see Shadowsocks white paper for the specific format of the header.

Expand Down

0 comments on commit 8bb941e

Please sign in to comment.