Fix: format & typo

This commit is contained in:
JimhHan
2021-04-04 20:12:51 +08:00
parent 85353848f5
commit 50779d1ae4
2 changed files with 359 additions and 325 deletions
+36 -19
View File
@@ -107,7 +107,8 @@ TLS 配置。TLS 由 Golang 提供,通常情况下 TLS 协商的结果为使
XTLS 配置。XTLS 是 Xray 的原创黑科技, 也是使 Xray 性能一骑绝尘的核心动力。 XTLS 与 TLS 有相同的安全性, 配置方式也和 TLS 一致.
点击此处查看 [XTLS 的技术细节剖析](./features/xtls.md)
::: danger TLS / XTLS 是目前最安全的传输加密方案, 且外部看来流量类型和正常上网具有一致性。 启用 XTLS 并且配置合适的 XTLS 流控模式, 可以在保持和 TLS 相同的安全性的前提下,
::: tip
TLS / XTLS 是目前最安全的传输加密方案, 且外部看来流量类型和正常上网具有一致性。 启用 XTLS 并且配置合适的 XTLS 流控模式, 可以在保持和 TLS 相同的安全性的前提下,
性能达到数倍甚至十几倍的提升。 当 `security` 的值从 `tls` 改为 `xtls` 时, 只需将 `tlsSettings` 修改成为 `xtlsSettings`
:::
@@ -192,7 +193,8 @@ CipherSuites 用于配置受支持的密码套件列表, 每个套件名称之
你可以在 [这里](https://golang.org/src/crypto/tls/cipher_suites.go#L500)或 [这里](https://golang.org/src/crypto/tls/cipher_suites.go#L44)
找到 golang 加密套件的名词和说明
::: danger 以上两项配置为非必要选项,正常情况下不影响安全性 在未配置的情况下 golang 根据设备自动选择. 若不熟悉, 请勿配置此选项, 填写不当引起的问题自行负责
::: danger
以上两项配置为非必要选项,正常情况下不影响安全性 在未配置的情况下 golang 根据设备自动选择. 若不熟悉, 请勿配置此选项, 填写不当引起的问题自行负责
:::
> `allowInsecure`: true | false
@@ -201,7 +203,8 @@ CipherSuites 用于配置受支持的密码套件列表, 每个套件名称之
当值为 `true` 时,Xray 不会检查远端主机所提供的 TLS 证书的有效性。
::: danger 出于安全性考虑,这个选项不应该在实际场景中选择 true,否则可能遭受中间人攻击。
::: danger
出于安全性考虑,这个选项不应该在实际场景中选择 true,否则可能遭受中间人攻击。
:::
> `disableSystemRoot`: true | false
@@ -218,7 +221,8 @@ CipherSuites 用于配置受支持的密码套件列表, 每个套件名称之
此参数用于配置指定 `TLS Client Hello` 的指纹。当其值为空时,表示不启用此功能。启用后,Xray 将通过 uTLS 库 **模拟** `TLS` 指纹,或随机生成。
::: tip 此功能仅 **模拟** `TLS Client Hello` 的指纹,行为、其他指纹与 Golang 相同。如果你希望更加完整地模拟浏览器 `TLS`
::: tip
此功能仅 **模拟** `TLS Client Hello` 的指纹,行为、其他指纹与 Golang 相同。如果你希望更加完整地模拟浏览器 `TLS`
指纹与行为,可以使用 [Browser Dialer](./transports/websocket.md#browser-dialer)。
:::
@@ -229,7 +233,8 @@ CipherSuites 用于配置受支持的密码套件列表, 每个套件名称之
证书列表,其中每一项表示一个证书(建议 fullchain)。
::: tip 如果要在 ssllibs 或者 myssl 获得 A/A+ 等级的评价,
::: tip
如果要在 ssllibs 或者 myssl 获得 A/A+ 等级的评价,
请参考 [这里](https://github.com/XTLS/Xray-core/discussions/56#discussioncomment-215600).
:::
@@ -304,23 +309,29 @@ ocspStapling 检查更新时间间隔。 单位:秒
- `"verify"`:证书用于验证远端 TLS 的证书。当使用此项时,当前证书必须为 CA 证书。
- `"issue"`:证书用于签发其它证书。当使用此项时,当前证书必须为 CA 证书。
::: tip TIP 1 在 Windows 平台上可以将自签名的 CA 证书安装到系统中,即可验证远端 TLS 的证书。
::: tip TIP 1
在 Windows 平台上可以将自签名的 CA 证书安装到系统中,即可验证远端 TLS 的证书。
:::
::: tip TIP 2 当有新的客户端请求时,假设所指定的 `serverName` 为 `"xray.com"`,Xray 会先从证书列表中寻找可用于 `"xray.com"` 的证书,如果没有找到,则使用任一 `usage`
::: tip TIP 2
当有新的客户端请求时,假设所指定的 `serverName` 为 `"xray.com"`,Xray 会先从证书列表中寻找可用于 `"xray.com"` 的证书,如果没有找到,则使用任一 `usage`
为 `"issue"` 的证书签发一个适用于 `"xray.com"` 的证书,有效期为一小时。并将新的证书加入证书列表,以供后续使用。
:::
::: tip TIP 3 当 `certificateFile` 和 `certificate` 同时指定时,Xray 优先使用 `certificateFile`。`keyFile` 和 `key` 也一样。
::: tip TIP 3
当 `certificateFile` 和 `certificate` 同时指定时,Xray 优先使用 `certificateFile`。`keyFile` 和 `key` 也一样。
:::
::: tip TIP 4 当 `usage` 为 `"verify"` 时,`keyFile` 和 `key` 可均为空。
::: tip TIP 4
当 `usage` 为 `"verify"` 时,`keyFile` 和 `key` 可均为空。
:::
::: tip TIP 5 使用 `xray tls cert` 可以生成自签名的 CA 证书。
::: tip TIP 5
使用 `xray tls cert` 可以生成自签名的 CA 证书。
:::
::: tip TIP 6 如已经拥有一个域名, 可以使用工具便捷的获取免费第三方证书,如[acme.sh](https://github.com/acmesh-official/acme.sh)
::: tip TIP 6
如已经拥有一个域名, 可以使用工具便捷的获取免费第三方证书,如[acme.sh](https://github.com/acmesh-official/acme.sh)
:::
> `certificateFile`: string
@@ -363,19 +374,21 @@ ocspStapling 检查更新时间间隔。 单位:秒
是否启用 [TCP Fast Open](https://zh.wikipedia.org/wiki/TCP%E5%BF%AB%E9%80%9F%E6%89%93%E5%BC%80)。
当其值为 `true` 或`正整数`时,启用 TFO;当其值为 `false` 或`负数`时,强制关闭 TFO;当此项不存在或为 `0` 时,使用系统默认设置。
可用于 inbound/outbound。
当其值为 `true` 或`正整数`时,启用 TFO;当其值为 `false` 或`负数`时,强制关闭 TFO;当此项不存在或为 `0` 时,使用系统默认设置。 可用于 inbound/outbound。
- 仅在以下版本(或更新版本)的操作系统中可用:
- Windows 10 (1607)
- Mac OS 10.11 / iOS 9
- Linux 3.16:需要通过内核参数 `net.ipv4.tcp_fastopen` 进行设定,此参数是一个 bitmap,`0x1` 代表客户端允许启用,`0x2` 代表服务器允许启用;默认值为 `0x1`,如果服务器要启用 TFO,请把此内核参数值设为 `0x3`。
- FreeBSD 10.3 (Server) / 12.0 (Client):需要把内核参数 `net.inet.tcp.fastopen.server_enabled` 以及 `net.inet.tcp.fastopen.client_enabled` 设为 `1`。
- Linux 3.16:需要通过内核参数 `net.ipv4.tcp_fastopen` 进行设定,此参数是一个 bitmap,`0x1` 代表客户端允许启用,`0x2` 代表服务器允许启用;默认值为 `0x1`,如果服务器要启用
TFO,请把此内核参数值设为 `0x3`。
- FreeBSD 10.3 (Server) / 12.0 (Client):需要把内核参数 `net.inet.tcp.fastopen.server_enabled`
以及 `net.inet.tcp.fastopen.client_enabled` 设为 `1`。
- 对于 Inbound,此处所设定的`正整数`代表 [待处理的 TFO 连接请求数上限](https://tools.ietf.org/html/rfc7413#section-5.1) ,**注意并非所有操作系统都支持在此设定**:
- Linux / FreeBSD:此处的设定的`正整数`值代表上限,可接受的最大值为 2147483647,为 `true` 时将取 `256`;注意在 Linux,`net.core.somaxconn` 会限制此值的上限,如果超过了 `somaxconn`,请同时提高 `somaxconn`。
- Linux / FreeBSD:此处的设定的`正整数`值代表上限,可接受的最大值为 2147483647,为 `true` 时将取 `256`;注意在 Linux,`net.core.somaxconn`
会限制此值的上限,如果超过了 `somaxconn`,请同时提高 `somaxconn`。
- Mac OS:此处为 `true` 或`正整数`时,仅代表启用 TFO,上限需要通过内核参数 `net.inet.tcp.fastopen_backlog` 单独设定。
- Windows:此处为 `true` 或`正整数`时,仅代表启用 TFO。
@@ -391,7 +404,8 @@ ocspStapling 检查更新时间间隔。 单位:秒
透明代理需要 Root 或 `CAP\_NET\_ADMIN` 权限。
::: danger 当 [Dokodemo-door](./inbounds/dokodemo.md) 中指定了 `followRedirect`为`true`,且 Sockopt 设置中的`tproxy` 为空时,Sockopt
::: danger
当 [Dokodemo-door](./inbounds/dokodemo.md) 中指定了 `followRedirect`为`true`,且 Sockopt 设置中的`tproxy` 为空时,Sockopt
设置中的`tproxy` 的值会被设为 `"redirect"`。
:::
@@ -408,7 +422,9 @@ ocspStapling 检查更新时间间隔。 单位:秒
默认值为 `"AsIs"`。
::: danger 启用了此功能后,不当的配置可能会导致死循环。
::: danger
启用了此功能后,不当的配置可能会导致死循环。
一句话版本:连接到服务器,需要等待 DNS 查询结果;完成 DNS 查询,需要连接到服务器。
@@ -439,7 +455,8 @@ ocspStapling 检查更新时间间隔。 单位:秒
一个出站代理的标识。当值不为空时,将使用指定的 outbound 发出连接。 此选项可用于支持底层传输方式的链式转发。
::: danger 此选项与 PorxySettingsObject.Tag 不兼容
::: danger
此选项与 PorxySettingsObject.Tag 不兼容
:::
> `acceptProxyProtocol`: true | false