diff --git a/README.md b/README.md index e3bcb0c..7443dfa 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# rttys([中文](/README_ZH.md)) +# rttys [1]: https://img.shields.io/badge/license-MIT-brightgreen.svg?style=plastic [2]: /LICENSE @@ -21,137 +21,6 @@ This is the server program of [rtty](https://github.com/zhaojh329/rtty) -## Build from source -golang and node 20+ is required - - cd ui - npm install - npm run build - cd .. - go build - -## Authorization(optional) -### Token -A token is a random string generated by users themselves, which can be regarded -as the password for device connecting. - - $ rttys run -t 34762d07637276694b938d23f10d7164 - -### Use your own authentication server -If the device hook URL is configured, when the device connecting, -rttys will initiate a request to this URL, and the authentication -server will return whether the authentication has been passed. - -Request data format: - - {"devid":"test", "token":"34762d07637276694b938d23f10d7164"} - -Authentication Server Response HTTP 200 to indicate that the device is allowed to connect. - -### mTLS -You can enable mTLS by specifying device CA storage (valid file) in config file or from CLI (variable ssl-cacert). -Device(s) without valid CA in storage will be disconnected in TLS handshake. - -## nginx proxy - -``` -# rttys.conf - -addr-user: 127.0.0.1:5913 - -addr-http-proxy: 127.0.0.1:5914 -http-proxy-redir-url: http://web.your-server.com -http-proxy-redir-domain: .your-server.com -``` - -``` -# nginx.conf - -server { - listen 80; - - server_name rtty.your-server.com; - - location /connect/ { - proxy_http_version 1.1; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection "Upgrade"; - proxy_pass http://127.0.0.1:5913; - } - - location / { - proxy_pass http://127.0.0.1:5913; - } -} - -server { - listen 80; - - server_name web.your-server.com; - - location / { - proxy_http_version 1.1; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection "Upgrade"; - proxy_pass http://127.0.0.1:5914; - } -} -``` - -The parameter 'http-proxy-redir-url' and 'http-proxy-redir-domain' in rttys.conf can also be configured -by setting new HTTP headers in nginx. - -``` -server { - listen 80; - - server_name rtty.your-server.com; - - location /connect/ { - proxy_http_version 1.1; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection "Upgrade"; - proxy_pass http://127.0.0.1:5913; - } - - location /web/ { - proxy_set_header HttpProxyRedir http://web.your-server.com; - proxy_set_header HttpProxyRedirDomain .your-server.com - proxy_pass http://127.0.0.1:5913; - } - - location / { - proxy_pass http://127.0.0.1:5913; - } -} - -server { - listen 80; - - server_name web.your-server.com; - - location / { - proxy_http_version 1.1; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection "Upgrade"; - proxy_pass http://127.0.0.1:5914; - } -} -``` - -## Docker -### Simple run - - sudo docker run -it -p 5912:5912 -p 5913:5913 -p 5914:5914 zhaojh329/rttys:latest \ - run --addr-http-proxy :5914 - -### Using config file - - sudo mkdir -p /opt/rttys - sudo sh -c 'echo "addr-http-proxy: :5914" > /opt/rttys/rttys.conf' - sudo docker run -it -p 5912:5912 -p 5913:5913 -p 5914:5914 -v /opt/rttys:/etc/rttys \ - zhaojh329/rttys:latest run -conf /etc/rttys/rttys.conf - ## Star History [![Star History Chart](https://api.star-history.com/svg?repos=zhaojh329/rttys&type=Date)](https://www.star-history.com/#zhaojh329/rttys&Date) diff --git a/README_ZH.md b/README_ZH.md deleted file mode 100644 index c3250d5..0000000 --- a/README_ZH.md +++ /dev/null @@ -1,156 +0,0 @@ -# rttys - -[1]: https://img.shields.io/badge/license-MIT-brightgreen.svg?style=plastic -[2]: /LICENSE -[3]: https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=plastic -[4]: https://github.com/zhaojh329/rttys/pulls -[5]: https://img.shields.io/badge/Issues-welcome-brightgreen.svg?style=plastic -[6]: https://github.com/zhaojh329/rttys/issues/new -[7]: https://img.shields.io/badge/release-4.4.5-blue.svg?style=plastic -[8]: https://github.com/zhaojh329/rttys/releases -[9]: https://github.com/zhaojh329/rttys/workflows/build/badge.svg -[12]: https://deepwiki.com/badge.svg -[13]: https://deepwiki.com/zhaojh329/rttys - -[![license][1]][2] -[![PRs Welcome][3]][4] -[![Issue Welcome][5]][6] -[![Release Version][7]][8] -![Build Status][9] -[![Ask DeepWiki][12]][13] - -这是[rtty](https://github.com/zhaojh329/rtty)的服务器程序。 - -## 从源码构建 -golang and node 20+ is required - - cd ui - npm install - npm run build - cd .. - go build - -## 认证(可选) -### Token -一个随机字符串,由用户自己生成,可以被认为是设备连接时的密码. - - $ rttys -t 34762d07637276694b938d23f10d7164 - -### 使用自己的认证服务器 -如果配置了设备 hook url, 设备连接时, rttys 会向此 url 发起请求, 认证服务器返回是否通过认证. - -请求数据格式: - - {"devid":"test", "token":"34762d07637276694b938d23f10d7164"} - -认证服务器响应 HTTP 200 表示允许设备连接. - -### SSL 双向认证(mTLS) -您可以在配置文件中指定设备 CA 存储(有效文件)或在 CLI 中指定设备 CA 存储(参数 ssl-cacert) 来启用 mTLS。 -存储中没有有效 CA 的设备将在 TLS 握手中断开连接。 - -## nginx 反向代理 - -``` -# rttys.conf - -addr-user: 127.0.0.1:5913 - -addr-http-proxy: 127.0.0.1:5914 -http-proxy-redir-url: http://web.your-server.com -http-proxy-redir-domain: .your-server.com -``` - -``` -# nginx.conf - -server { - listen 80; - - server_name rtty.your-server.com; - - location /connect/ { - proxy_http_version 1.1; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection "Upgrade"; - proxy_pass http://127.0.0.1:5913; - } - - location / { - proxy_pass http://127.0.0.1:5913; - } -} - -server { - listen 80; - - server_name web.your-server.com; - - location / { - proxy_http_version 1.1; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection "Upgrade"; - proxy_pass http://127.0.0.1:5914; - } -} -``` - -在 rttys.conf 中的参数 http-proxy-redir-url 和 http-proxy-redir-domain 也可以通过在 nginx 中设置新 -的 HTTP headers 来配置. - -``` -server { - listen 80; - - server_name rtty.your-server.com; - - location /connect/ { - proxy_http_version 1.1; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection "Upgrade"; - proxy_pass http://127.0.0.1:5913; - } - - location /web/ { - proxy_set_header HttpProxyRedir http://web.your-server.com; - proxy_set_header HttpProxyRedirDomain .your-server.com - proxy_pass http://127.0.0.1:5913; - } - - location / { - proxy_pass http://127.0.0.1:5913; - } -} - -server { - listen 80; - - server_name web.your-server.com; - - location / { - proxy_http_version 1.1; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection "Upgrade"; - proxy_pass http://127.0.0.1:5914; - } -} -``` - -## Docker - - sudo docker run -it -p 5912:5912 -p 5913:5913 -p 5914:5914 zhaojh329/rttys:latest \ - --addr-http-proxy :5914 - -使用配置文件 - - sudo mkdir -p /opt/rttys - sudo sh -c 'echo "addr-http-proxy: :5914" > /opt/rttys/rttys.conf' - sudo docker run -it -p 5912:5912 -p 5913:5913 -p 5914:5914 -v /opt/rttys:/etc/rttys \ - zhaojh329/rttys:latest -conf /etc/rttys/rttys.conf - -## Star History -[![Star History Chart](https://api.star-history.com/svg?repos=zhaojh329/rttys&type=Date)](https://www.star-history.com/#zhaojh329/rttys&Date) - -## 贡献代码 -如果你想帮助[rttys](https://github.com/zhaojh329/rttys)变得更好,请参考 -[CONTRIBUTING_ZH.md](https://github.com/zhaojh329/rttys/blob/master/CONTRIBUTING_ZH.md)。