Wine
如何在不授予任何 Internet 訪問權限的情況下執行 Windows 程序?
所以我在 Linux 上有 CrossOver,但由於這基本上是我也幫助 Wine 人員的項目,並且幾乎所有基礎知識都適用於兩者,所以我在wine下詢問。
是否可以在 Wine 下啟動 Windows 程序,使其完全無法訪問 Internet?
到目前為止,當談到這一點時,我空手而歸。我正在考慮編寫我自己的共享對像以便修補,
LD_PRELOAD
但這種事情無論如何都是題外話。從純粹的使用者角度來看,有什麼方法可以實現我想要的嗎?核心名稱空間可以以任何方式用於此目的嗎?
您可以取消共享網路命名空間:
sudo unshare -n -- su your_user -c your_command
我可以想到這種複雜的方式:創建一個單獨的使用者帳戶,例如 wineuser 並在其下執行您的 Windows 應用程序。您可能希望在您的使用者帳戶下執行此命令:(
xhost +SI:localuser:wineuser
以允許 wine 使用者訪問您的圖形會話)並在 wine 帳戶下導出 DISPLAY 變數,例如export DISPLAY=:0
要限制此使用者訪問 Internet,請執行此命令/添加此 iptables 規則:
iptables -I OUTPUT -m owner --uid-owner wineuser -j DROP
(或者您可以使用 REJECT 而不是 DROP)。
您也可以嘗試 OpenSnitch:https ://itsfoss.com/opensnitch-firewall-linux/或 LAF(Linux 應用程序防火牆):https ://github.com/matrix-ac/LAF