很有趣, 利用docker執行wechat
Linux 並沒有wechat , 除了利用wine安裝外, 若還有雙開需求怎辦?
大陸同胞居然利用docker執行wechat, 真是太牛了
https://hub.docker.com/r/bestwu/wechat
Linux 並沒有wechat , 除了利用wine安裝外, 若還有雙開需求怎辦?
大陸同胞居然利用docker執行wechat, 真是太牛了
https://hub.docker.com/r/bestwu/wechat
一般公司省錢的作法, 就是一台linux主機 , 充當上網(nat) 分享器,
但後來該主機又搞了docker .
可是docker 預設網路(iptables) 都開放, 很麻煩, 造成原本firewall-cmd出問題, 無法限制內部ip上網, 所有ip都能上網, 超麻煩的,
後來發現iptables也能運作, 於是就搭配 iptables 限制內部ip上網
iptables -I FORWARD 1 -s 192.10.20.0/24 -j DROP # 限制全部內網ip透過nat上網 iptables -I FORWARD 1 -s 192.10.20.101/32 -j ACCEPT # 讓101能上網
有時候常常要查詢一下當初docker container啟動的參數, 若使用docker-compose當然沒問題,可以直接查看yaml檔案,
若不是使用compose , 就比較麻煩了, 尤其是我常常使用指令的方式, 又常常沒有記錄下來指令, 就會出問題.
好險這些問題有解法
https://github.com/lavie/runlike
只要執行以下指令, 後面接 container name 就可以知道當初執行的相關設定了
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock assaflavie/runlike <container Name>
peertube是開源的串流影音平台, 很適合拿來管理私人影音檔案.
本文安裝的先決條件是:
已備有httpd反向代理, 以及lets encrypt ,
因此不使用peertube官方自帶的webserver與cerbot, 以免造成管理上的困擾
帳號密碼: guest/guest
https://docs.kafeiou.pw/iammis/技術文章/HowTo/10034_(docker)安裝peertube.txt
1.
sudo apt-get update
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg \
lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \
"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
##$(lsb release -cs) 試圖找出ubuntu對應版本 ,
##或是到這查https://download.docker.com/linux/ubuntu/dists/
sudo apt-get install docker-ce docker-ce-cli containerd.io
2. 自訂存放目錄
修改 /lib/systemd/system/docker.service
從
ExecStart=/usr/bin/docker daemon -H fd://
改成
ExecStart=/usr/bin/docker daemon --data-root <自訂目錄> -H fd://
重啟 docker
systemctl stop docker
systemctl daemon-reload
systemctl start docker
完成
例如 docker 安裝 mariadb service , 要記得不要開放到internet
iptables -I DOCKER 1 -i <對外網卡代號> -p tcp --dport 3306 -j DROP
我們不屎用微軟的MFA(Multi Factor Authentication), 原因如下:
Azure AD MFA 免費使用, 但是很貴, 哈哈, 於是就pass
multiOTP(https://github.com/multiOTP/multiotp/wiki) 是個開源免費的 MFA server & client 專案,
其實我們也只是要讓登入更安全, 目標就是手上多個驗證器, 可以輸入動態密碼, 多個保障.
不囉嗦, 直接寫下我的安裝方法
安裝開源的 MFA Server
修改Dockerfile這步驟以後不需要做, 下個版本會解決
4. 編譯images
docker build . -t mymultiotp:latest
5. 啟動server
docker run --mount source=multiotp-data,target=/etc/multiotp -p 8080:80 -p 8443:443 -p 1812:1812/udp -p 1813:1813/udp -d mymultiotp:latest
8080 與 8443 請依實際情況修改
6. 網頁輸入 http://<docker serverr ip>:8080
登入後, 新增測試帳號 administrator (請注意, 這個帳號是windows 10本機可登入帳號 , 不限定administrator)
手機安裝google authenticator
安裝google驗證器, 刷入帳號的QR code , 請選擇帳號後點選 Print
在windows安裝Credential Provider
https://download.multiotp.net/credential-provider/
https://download.multiotp.net/credential-provider/multiOTPCredentialProvider-5.8.1.0.exe
輸入windows的帳號與密碼, 還有google驗證器的密碼
遠端登入
此時遠端登入第一次登入不用otp密碼, 但是會出現第二是要求輸入otp密碼,
這是原本遠端桌面連線並無法一開始就支援otp的緣故,目前無法解結
MFA server 與 網域主控連線
docker 登入已安裝好的 mfa server 然後輸入以下指令
multiotp -config default-request-prefix-pin=0 multiotp -config default-request-ldap-pwd=1 multiotp -config ldap-server-type=1 multiotp -config ldap-cn-identifier="sAMAccountName" multiotp -config ldap-cn-identifier="sAMAccountName" multiotp -config ldap-group-attribute="memberOf" multiotp -config ldap-ssl=1 multiotp -config ldap-port=636 multiotp -config ldap-domain-controllers=ldaps://網域主控伺服器:636 multiotp -config ldap-base-dn="OU=xxxx,DC=test,DC=com" multiotp -config ldap-bind-dn="cn=ldap,cn=Users,dc=test,dc=com" multiotp -config ldap-server-password="password" multiotp -config ldap-network-timeout=10 multiotp -config ldap-time-limit=30 multiotp -config ldap-activated=1 multiotp -config ldap_default_algorithm=totp multiotp -debug -display-log -ldap-users-sync
multiotp -debug -display-log -ldap-users-sync
到 /usr/share/jitsi-meet 修改以下檔案
interface_config.js
APP_NAME: 'Jitsi Meet', NATIVE_APP_NAME: 'Jitsi Meet',
libs/app.bundle.min.js
若要改首頁標題, 找到 headerTitle 修改內容即可
drawio 相容m$ visio , 而且免費, 支援nextcloud, 達到線上繪製流程圖的功能.
雖說drawio還不是很穩定,但是一直在更新, 已經能上線讓公司同仁使用,
透過官方安裝drawio套件並且啟用後, 以下為注意事項:
複製設定檔cp resources/config/mimetypemapping.dist.json config/mimetypemapping.json
修改 config/mimetypemapping.json 加上以下設定
"drawio": ["application/x-drawio"]
然後執行更新指令
sudo -u www-data php occ maintenance:mimetype:update-js
sudo -u www-data php occ maintenance:mimetype:update-db
若是docker請執行
docker exec --user www-data nextcloud php occ maintenance:mimetype:update-js
docker exec --user www-data nextcloud php occ maintenance:mimetype:update-db
然後再到nextcloud的設定, 重新勾選drawio的相關設定
2. 若drawio檔案分享連結, 若想要讓大家直接開啟編輯畫面, 需要修改連結
https://xxx/s/YoJWBkg7EgiyXpPdd 改成 https://xxx/apps/drawio/s/YoJWBkg7EgiyXpPdd
需安裝外掛(block_quickmail)才能寄發通知, 但是官方的版本目前無法使用, 會出現”There are no users to whom you can send emails.” 或是 “There are no users you are capable of emailing“的錯誤,
請到 https://github.com/lsuits/lsu-block_quickmail 下載v2版本就能使用了.