|
Screego是一个开源的用go语言写的屏幕投影软件,可以以高质量低延迟将你的屏幕演示给其他人看,screego带有身份验证,集成了TURN服务方便NAT遍历。有了它我们可以自建一个便捷的共享屏幕服务器。共享看片,指日可待。 项 目 Screego提供了docker、多个平台的可执行二进制文件和源码的下载。演示说明 Screego强制要求使用TLS,我这里演示使用nginx反向代理二进制文件,也可以直接在Screego内部使用,自行研究文档。6 { D# R, z" K$ @; q# x 下载) P2 [# _% | y' D, J 从github的releases页面下载适合centos的linux_amd64.tar.gz包wget https://github.com/screego/serve ... _linux_amd64.tar.gz <以上代码可复制粘贴,可往左滑> 解压# ^6 o. M/ |. a- Q: k5 {4 [/ o+ D 解压之后包含"screego","screego.config.example"这两个文件,"screego"是二进制可执行文件,"screego.config.example"是config文件配置范例。$ u" N7 C& n" n3 r/ u) h9 H' X 编辑配置文件/ Z6 c3 e1 M# e! E: g "screego.config.example"是包含所有的参考案例。新建一个screego.config,注意不要打成screen。写入以下配置:# 服务器公网IP SCREEGO_EXTERNAL_IP=X.X.X.X- R, f% d- i! _; v8 E; D( X # 设置密钥,任意随机字符就行 SCREEGO_SECRET=8w6EJ183hqFieprl # 后续使用nginx反向代理,这里关闭内部的TLS,如果要使用内部的TLS,就true SCREEGO_SERVER_TLS=false # 监听端口,之后使用反向代理,这里设置监听在本地 SCREEGO_SERVER_ADDRESS=127.0.0.1:5050( q$ U8 h5 t- c& i! q# M+ u # TURN监听端口5 v* R- _9 j8 Z: x SCREEGO_TURN_ADDRESS=0.0.0.0:3478 # 使用反向代理这里必须启用 SCREEGO_TRUST_PROXY_HEADERS=true" Z+ U$ a2 r/ v l8 G8 D4 \ # 参数值all表示所有请求都需要身份验证。如果不需要验证,任何人都可以自由建立房间,改为true SCREEGO_AUTH_MODE=all # 修改为使用的域名,记得是https SCREEGO_CORS_ALLOWED_ORIGINS=https://screego.ExampleDomainName.cn1 d# w* R% ~" Y) F* G3 U, o- [ # 日志信息 j! D! L. ?& V3 M+ z* K SCREEGO_LOG_LEVEL=info # 用于身份验证的文件& r% b& L6 N' [% @5 M* q SCREEGO_USERS_FILE=user <以上代码可复制粘贴,可往左滑> 建立用户) N }2 ?* T; ~; I; h% Q$ r: S3 ] 上面配置文件最后一行,我们使用user,touch新建一个user文件。在包含screego二进制文件里的文件夹里执行./screego hash --name "linuxprobe" --pass "password". n' D: N' n/ Y5 X, T2 U9 B <以上代码可复制粘贴,可往左滑>对应的 linuxprobe 和 password 可以换成自定义的值。执行上述命令应该有类似的输出:linuxprobe 2a$12$9YgqeiL2MC2skKCj/ulpruOAlga5GdgXBECfubZCuapJGhGmQTuly. I* B* q9 M& ?4 |& j<以上代码可复制粘贴,可往左滑>把输出内容写入到user文件里。 配置反向代理 直接使用的nginx,可以编辑对应的conf配置文件,如screego.conf文件,反向代理写入以下配置,注意替换域名:server {' V6 D' |6 W' i7 `6 l. M listen 80;9 W! h* U7 w8 `9 a9 x r server_name screego.ExampleDomainName.cn;9 A! x3 G4 D$ V+ ?7 I location / {$ G, X& {6 W a; c* N9 ~( K proxy_pass http://127.0.0.1:5050;7 e5 o) d& s2 o- V( g proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade;( u& K* O t3 M; S X5 _ proxy_set_header Connection "upgrade"; proxy_redirect http:// $scheme://;, Y. ^4 I% E P proxy_set_header X-Real-IP $remote_addr;$ ^0 t+ J9 V4 B) ]/ H proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto http; proxy_set_header Host $http_host; } } <以上代码可复制粘贴,可往左滑>如果使用宝塔,需要在站点新建反向代理到5050端口,在编辑反向代理文件,加入三条宝塔默认反向代理配置漏掉的三条:proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; x8 R/ `) A9 W2 A proxy_redirect http:// $scheme://;2 g1 |; |: d8 e <以上代码可复制粘贴,可往左滑>
Screego强制要求使用TLS,Nginx也得强制配置SSL。Nginx配置https证书都是常规操作,不在赘述。 使用 所有配置完成之后,使用命令启动:./screego serve, |2 P& v" }$ @. a$ z) ~<以上代码可复制粘贴,可往左滑>
|
微信公众号
手机版