可否考虑API端口与管理网页端口分开。
您好大佬, 由于API端口必须开放公开给客户端连接使用,这个没有问题,但是管理网页端口同时使用API端口会有点小问题, 因为国内个别运营商不允许家宽开放网页服务,避免自建钓鱼网站,如果检测到开放网页服务,会引起一些不必要的一些麻烦,如果限制IP访问后台网页,又会造成客户端无法连接API,所以大佬是否可以考虑把API端口与和管理后台网页端口分开的功能, 这样的话,可以在防火墙上控制指定的IP访问后台网页,或者不对外开放后台管理,只内网连接后台网页使用网页客户端。谢谢。
前后端其实是分离的 后台的页面在 lejianwen/rustdesk-api-web 之后后面感觉做到一起更方便
你可以在要禁用网页的服务器(家宽)上用nginx反代禁止 /_admin 或限制IP访问
的确我也觉得同一个端口非常不安全,而且是http,需要后面操作的东西多了
我也是觉得API端口与管理网页端口分开为好。
前后端其实是分离的 后台的页面在 lejianwen/rustdesk-api-web 之后后面感觉做到一起更方便
你可以在要禁用网页的服务器(家宽)上用nginx反代禁止
/_admin或限制IP访问
感谢大佬的回复,有试过在nginx 里反代禁止/_admin/
location = /_admin/ {
# 仅允许指定IP访问
allow 222.621.126.122;
deny all; # 拒绝其他所有IP
这样虽然是禁止了其它用户访问API管理界面,但是会返回 403 Forbidden
nginx/1.21.6,
感觉还是没有直接管理后台单独一个端口,在防火墙上按规则放行来的彻底,对于运营商来说,随便你扫,都无法知道我映射开了这个网页端口。
前后端其实是分离的 后台的页面在 lejianwen/rustdesk-api-web 之后后面感觉做到一起更方便 你可以在要禁用网页的服务器(家宽)上用nginx反代禁止
/_admin或限制IP访问感谢大佬的回复,有试过在nginx 里反代禁止/_admin/
location = /_admin/ { # 仅允许指定IP访问 allow 222.621.126.122; deny all; # 拒绝其他所有IP 这样虽然是禁止了其它用户访问API管理界面,但是会返回 403 Forbidden nginx/1.21.6, 感觉还是没有直接管理后台单独一个端口,在防火墙上按规则放行来的彻底,对于运营商来说,随便你扫,都无法知道我映射开了这个网页端口。
实际上真要扫都是抓包的,只要看到是HTTP请求就知道了,RustDesk会定期发心跳包到HTTP接口,对运营商来说403和直接通过了没啥区别。以及,建议使用HTTPS,无论境内外。
下面是我的Nginx反代配置和Docker的部分参数,你可以参考一下。
location /server { proxy_pass http://127.0.0.1:21118; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-Proto $scheme; proxy_http_version 1.1; add_header X-Cache $upstream_cache_status; add_header Cache-Control no-cache; proxy_ssl_server_name off; proxy_ssl_name $proxy_host; add_header Strict-Transport-Security "max-age=31536000"; } location /ws/relay { proxy_pass http://127.0.0.1:21119/ws/relay; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-Proto $scheme; proxy_http_version 1.1; add_header X-Cache $upstream_cache_status; add_header Cache-Control no-cache; proxy_ssl_server_name off; proxy_ssl_name $proxy_host; add_header Strict-Transport-Security "max-age=31536000"; } location / { proxy_pass http://127.0.0.1:21114; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-Proto $scheme; proxy_http_version 1.1; add_header X-Cache $upstream_cache_status; add_header Cache-Control no-cache; proxy_ssl_server_name off; proxy_ssl_name $proxy_host; add_header Strict-Transport-Security "max-age=31536000"; }
-e "RELAY=rd.123.cc"
-e "RUSTDESK_API_RUSTDESK_ID_SERVER=rd.123.cc/server"
-e "RUSTDESK_API_RUSTDESK_RELAY_SERVER=rd.123.cc/relay"
-e "RUSTDESK_API_RUSTDESK_API_SERVER=https://rd.123.cc" \
我是部署在香港服务器的,所以直接走网页。其实这俩配置还是有点小问题的,不过能用,主要是网页也是能用的,整体只需要开放https端口和21115-21119就可以了。我防火墙封锁了外网的21114端口。你是家庭宽带的话,可以对应修改一下。
前后端其实是分离的 后台的页面在 lejianwen/rustdesk-api-web 之后后面感觉做到一起更方便 你可以在要禁用网页的服务器(家宽)上用nginx反代禁止
/_admin或限制IP访问感谢大佬的回复,有试过在nginx 里反代禁止/_admin/ location = /_admin/ { # 仅允许指定IP访问 allow 222.621.126.122; deny all; # 拒绝其他所有IP 这样虽然是禁止了其它用户访问API管理界面,但是会返回 403 Forbidden nginx/1.21.6, 感觉还是没有直接管理后台单独一个端口,在防火墙上按规则放行来的彻底,对于运营商来说,随便你扫,都无法知道我映射开了这个网页端口。
实际上真要扫都是抓包的,只要看到是HTTP请求就知道了,RustDesk会定期发心跳包到HTTP接口,对运营商来说403和直接通过了没啥区别。以及,建议使用HTTPS,无论境内外。
下面是我的Nginx反代配置和Docker的部分参数,你可以参考一下。
location /server { proxy_pass http://127.0.0.1:21118; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-Proto $scheme; proxy_http_version 1.1; add_header X-Cache $upstream_cache_status; add_header Cache-Control no-cache; proxy_ssl_server_name off; proxy_ssl_name $proxy_host; add_header Strict-Transport-Security "max-age=31536000"; } location /ws/relay { proxy_pass http://127.0.0.1:21119/ws/relay; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-Proto $scheme; proxy_http_version 1.1; add_header X-Cache $upstream_cache_status; add_header Cache-Control no-cache; proxy_ssl_server_name off; proxy_ssl_name $proxy_host; add_header Strict-Transport-Security "max-age=31536000"; } location / { proxy_pass http://127.0.0.1:21114; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-Proto $scheme; proxy_http_version 1.1; add_header X-Cache $upstream_cache_status; add_header Cache-Control no-cache; proxy_ssl_server_name off; proxy_ssl_name $proxy_host; add_header Strict-Transport-Security "max-age=31536000"; }
-e "RELAY=rd.123.cc" -e "RUSTDESK_API_RUSTDESK_ID_SERVER=rd.123.cc/server" -e "RUSTDESK_API_RUSTDESK_RELAY_SERVER=rd.123.cc/relay" -e "RUSTDESK_API_RUSTDESK_API_SERVER=https://rd.123.cc" \
我是部署在香港服务器的,所以直接走网页。其实这俩配置还是有点小问题的,不过能用,主要是网页也是能用的,整体只需要开放https端口和21115-21119就可以了。我防火墙封锁了外网的21114端口。你是家庭宽带的话,可以对应修改一下。
谢谢大佬的分享.话说/ws/relay 这里也要这么多设置吗
前后端其实是分离的 后台的页面在 lejianwen/rustdesk-api-web 之后后面感觉做到一起更方便 你可以在要禁用网页的服务器(家宽)上用nginx反代禁止
/_admin或限制IP访问感谢大佬的回复,有试过在nginx 里反代禁止/_admin/ location = /_admin/ { # 仅允许指定IP访问 allow 222.621.126.122; deny all; # 拒绝其他所有IP 这样虽然是禁止了其它用户访问API管理界面,但是会返回 403 Forbidden nginx/1.21.6, 感觉还是没有直接管理后台单独一个端口,在防火墙上按规则放行来的彻底,对于运营商来说,随便你扫,都无法知道我映射开了这个网页端口。
实际上真要扫都是抓包的,只要看到是HTTP请求就知道了,RustDesk会定期发心跳包到HTTP接口,对运营商来说403和直接通过了没啥区别。以及,建议使用HTTPS,无论境内外。 下面是我的Nginx反代配置和Docker的部分参数,你可以参考一下。
location /server { proxy_pass http://127.0.0.1:21118; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-Proto $scheme; proxy_http_version 1.1; add_header X-Cache $upstream_cache_status; add_header Cache-Control no-cache; proxy_ssl_server_name off; proxy_ssl_name $proxy_host; add_header Strict-Transport-Security "max-age=31536000"; } location /ws/relay { proxy_pass http://127.0.0.1:21119/ws/relay; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-Proto $scheme; proxy_http_version 1.1; add_header X-Cache $upstream_cache_status; add_header Cache-Control no-cache; proxy_ssl_server_name off; proxy_ssl_name $proxy_host; add_header Strict-Transport-Security "max-age=31536000"; } location / { proxy_pass http://127.0.0.1:21114; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-Proto $scheme; proxy_http_version 1.1; add_header X-Cache $upstream_cache_status; add_header Cache-Control no-cache; proxy_ssl_server_name off; proxy_ssl_name $proxy_host; add_header Strict-Transport-Security "max-age=31536000"; }
-e "RELAY=rd.123.cc" -e "RUSTDESK_API_RUSTDESK_ID_SERVER=rd.123.cc/server" -e "RUSTDESK_API_RUSTDESK_RELAY_SERVER=rd.123.cc/relay" -e "RUSTDESK_API_RUSTDESK_API_SERVER=https://rd.123.cc" \
我是部署在香港服务器的,所以直接走网页。其实这俩配置还是有点小问题的,不过能用,主要是网页也是能用的,整体只需要开放https端口和21115-21119就可以了。我防火墙封锁了外网的21114端口。你是家庭宽带的话,可以对应修改一下。
谢谢大佬的分享.话说/ws/relay 这里也要这么多设置吗
emmm,我不怎么上线,没看到。
或许你已经弄完了。
我这么设置其实只是为了能用,至于为啥用的路径不一致,,,我也纳闷呢。我还是一个个端口号和路径以及Nginx配置文件改出来的。
如果你和我一样只是为了能用,那么到这里应该就足够了。
这个项目还是不错的,比官方的连接速度快是真的,我北方地区用香港的中继,哪怕中转也快的一批,而多数情况下我都是走直连的,更快了。而且网页被我折腾大半天也可以用了,延迟也能接受。
我最终还是放弃网页客户端了,使用本地客户端登录或链接直接启动本地客户端进行远控吧,网页客户端要使用起来还是有点麻烦。
我最终还是放弃网页客户端了,使用本地客户端登录或链接直接启动本地客户端进行远控吧,网页客户端要使用起来还是有点麻烦。
网页客户端本质只是临时替代,如果都有完整的客户端了用客户端是最好的。网页是没办法打洞只能强行中继的
我也建议将网页部分分离到新的端口,这样就可以自行解决web部分到底在不在公网访问
我也建议将网页部分分离到新的端口,这样就可以自行解决web部分到底在不在公网访问
我个人的看法是用nginx搞一下,反代个新端口顺带设置个规则也不错,毕竟这个API是不自带SSL的,公共网络环境还是SSL稳妥一些。