| Screego是一個開源的用go語言寫的屏幕投影軟件,可以以高質量低延遲將你的屏幕演示給其他人看,screego帶有身份驗證,集成了TURN服務方便NAT遍歷。有了它我們可以自建一個便捷的共享屏幕服務器。共享看片,指日可待。 |
- 項目地址:https://github.com/screego/server
- 文檔地址:https://screego.net/#/
Screego提供了docker、多個平台的可執行二進制文件和源碼的下載。
Screego強制要求使用TLS,我這里演示使用nginx反向代理二進制文件,也可以直接在Screego內部使用,自行研究文檔。
從github的releases頁面下載適合centos的linux_amd64.tar.gz包
wget https://github.com/screego/server/releases/download/v1.0.7/screego_1.0.7_linux_amd64.tar.gz
解壓之后包含"screego","screego.config.example"這兩個文件,"screego"是二進制可執行文件,"screego.config.example"是config文件配置范例。
"screego.config.example"是包含所有的參考案例。新建一個screego.config,注意不要打成screen。寫入以下配置:
# 服務器公網IP SCREEGO_EXTERNAL_IP=X.X.X.X # 設置密鑰,任意隨機字符就行 SCREEGO_SECRET=8w6EJ183hqFieprl # 后續使用nginx反向代理,這里關閉內部的TLS,如果要使用內部的TLS,就true SCREEGO_SERVER_TLS=false # 監聽端口,之后使用反向代理,這里設置監聽在本地 SCREEGO_SERVER_ADDRESS=127.0.0.1:5050 # TURN監聽端口 SCREEGO_TURN_ADDRESS=0.0.0.0:3478 # 使用反向代理這里必須啟用 SCREEGO_TRUST_PROXY_HEADERS=true # 參數值all表示所有請求都需要身份驗證。如果不需要驗證,任何人都可以自由建立房間,改為true SCREEGO_AUTH_MODE=all # 修改為使用的域名,記得是https SCREEGO_CORS_ALLOWED_ORIGINS=https://screego.ExampleDomainName.cn # 日志信息 SCREEGO_LOG_LEVEL=info # 用於身份驗證的文件 SCREEGO_USERS_FILE=user
上面配置文件最后一行,我們使用user,touch新建一個user文件。在包含screego二進制文件里的文件夾里執行
./screego hash --name "linuxprobe" --pass "password"
對應的 linuxprobe 和 password 可以換成自定義的值。執行上述命令應該有類似的輸出:
linuxprobe:$2a$12$9YgqeiL2MC2skKCj/ulpruOAlga5GdgXBECfubZCuapJGhGmQTuly
把輸出內容寫入到user文件里。
直接使用的nginx,可以編輯對應的conf配置文件,如screego.conf文件,反向代理寫入以下配置,注意替換域名:
server {
listen 80;
server_name screego.ExampleDomainName.cn;
location / {
proxy_pass http://127.0.0.1:5050;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_redirect http:// $scheme://;
proxy_set_header X-Real-IP $remote_addr;
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"; proxy_redirect http:// $scheme://;


Screego強制要求使用TLS,Nginx也得強制配置SSL。Nginx配置https證書都是常規操作,不在贅述。
所有配置完成之后,使用命令啟動:
./screego serve









本文原創地址:https://www.linuxprobe.com/screego-create-screen.html
