{"id":19448563,"url":"https://github.com/vnt-dev/vnts","last_synced_at":"2026-02-11T03:06:26.015Z","repository":{"id":105577349,"uuid":"589181286","full_name":"vnt-dev/vnts","owner":"vnt-dev","description":"vnt server","archived":false,"fork":false,"pushed_at":"2025-09-17T02:04:18.000Z","size":8484,"stargazers_count":306,"open_issues_count":21,"forks_count":119,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-10-08T02:50:24.147Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vnt-dev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-01-15T10:51:26.000Z","updated_at":"2025-10-02T14:21:42.000Z","dependencies_parsed_at":"2023-12-19T15:59:29.004Z","dependency_job_id":"5d53f897-db23-4362-b028-8251ad919a30","html_url":"https://github.com/vnt-dev/vnts","commit_stats":null,"previous_names":["vnt-dev/vnts","lbl8603/vnts"],"tags_count":25,"template":false,"template_full_name":null,"purl":"pkg:github/vnt-dev/vnts","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vnt-dev%2Fvnts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vnt-dev%2Fvnts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vnt-dev%2Fvnts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vnt-dev%2Fvnts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vnt-dev","download_url":"https://codeload.github.com/vnt-dev/vnts/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vnt-dev%2Fvnts/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29326078,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T02:08:56.257Z","status":"ssl_error","status_checked_at":"2026-02-11T02:08:51.338Z","response_time":97,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-10T16:27:39.182Z","updated_at":"2026-02-11T03:06:25.996Z","avatar_url":"https://github.com/vnt-dev.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# vnts\n\n[vnt](https://github.com/vnt-dev/vnt)的服务端\n\n查看参数\n\n```\nOptions:\n  -p, --port \u003cPORT\u003e                指定端口，默认29872\n  -w, --white-token \u003cWHITE_TOKEN\u003e  token白名单，例如 --white-token 1234 --white-token 123\n  -g, --gateway \u003cGATEWAY\u003e          网关，例如 --gateway 10.10.0.1\n  -m, --netmask \u003cNETMASK\u003e          子网掩码，例如 --netmask 255.255.255.0\n  -f, --finger                     开启指纹校验，开启后只会转发指纹正确的客户端数据包，增强安全性，这会损失一部分性能\n  -l, --log-path \u003cLOG_PATH\u003e        log路径，默认为当前程序路径，为/dev/null时表示不输出log\n      --wg \u003cWG_SECRET_KEY\u003e         wg私钥，使用base64编码\n  -h, --help                       Print help information\n  -V, --version                    Print version information\n```\n\n## 说明\n\n1. 修改服务端密钥后，客户端要重启才能正常链接(修改密钥后无法自动重连)\n2. 服务端密钥用于加密客户端和服务端之间传输的数据(使用rsa+aes256gcm加密)\n   ，可以防止token被中间人窃取，如果客户端显示的密钥指纹和服务端的不一致，则表示可能有中间人攻击\n3. 服务端密钥在'./key/'目录下,可以替换成自定义的密钥对\n4. 客户端的密码用于加密客户端之间传输的数据\n5. 默认情况服务日志输出在 './log/'下,可通过编写'\n   ./log/log4rs.yaml'文件自定义日志配置,参考[log4rs](https://github.com/estk/log4rs)\n\n## 编译\n\n前提条件:安装rust编译环境([install rust](https://www.rust-lang.org/zh-CN/tools/install))\n\n```\n到项目根目录下执行 cargo build\n\nweb是可选模块，如需编译则使用 cargo build --features web\n\n```\n\n## 环境变量映射表\n将 vnts 参数转换为环境变量（全部大写，前缀 VNT_）：\n\n参数\t环境变量名\t示例值\n-p/--port\tVNT_PORT\t29872\n\n-w/--white-token\tVNT_WHITE_TOKEN\tmysecrettoken\n\n-g/--gateway\tVNT_GATEWAY\t10.10.0.1\n\n-m/--netmask\tVNT_NETMASK\t255.255.255.0\n\n-f/--finger\tVNT_FINGER\ttrue\n\n-l/--log-path\tVNT_LOG_PATH\t/var/log/vnt.log\n\n-P/--web-port\tVNT_WEB_PORT\t29870\n\n-U/--username\tVNT_USERNAME\tadmin\n\n-W/--password\tVNT_PASSWORD\tsecurepass123\n\n--wg\tVNT_WG_SECRET_KEY\tbase64_encoded_key\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvnt-dev%2Fvnts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvnt-dev%2Fvnts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvnt-dev%2Fvnts/lists"}