如果有人可以物理访问计算机,则无法保护它。将其放在带锁的盒子里

如果有人可以物理访问计算机,则无法保护它。将其放在带锁的盒子里

我使用Ubuntu搭建了一个Wifi热点,可以连接Wifi上网,在非洲、岛屿、格陵兰等没有太多网络的地方使用。

由于我们要负责很多法律事务(我不详细说明),我必须确保 Wifi 热点没有被黑客入侵或盗窃。 我用 LUKS 加密了所有内容,我将密钥文件放在 USB 闪存盘上。但有人仍然可以带着屏幕键盘鼠标之类的东西进入 FS。

所以,我的目标是避免任何人访问桌面,但是我该怎么做呢?

注意:由于系统必须在启动时自动运行,因此我无法在启动时要求输入用户密码,因此我禁用了它(您立即获得了桌面)。

谢谢 -

编辑仅供参考,我的系统在一个盒子里。

答案1

如果有人可以物理访问计算机,则无法保护它。将其放在带锁的盒子里

对于这种用途,最好不要使用 Ubuntu 桌面。使用没有桌面的 Ubuntu 服务器版本。将 WiFi 热点设置为服务。服务(也称为守护程序)在计算机启动时启动,不需要任何人登录。请参阅如何设置接入点模式 WiFi 热点?如何将hostapdWiFi 热点设置为服务。

对管理员(sudo)帐户使用强密码。

如果您无法做到这一点,请尝试向所有用户提供的 WiFi 热点。请参阅:

在此处输入图片描述

笔记,所有用户均可连接到此网络复选框已选中。这意味着此网络在任何人登录之前都将处于在线状态。因此,您无需登录桌面即可使其工作。

其次,设置锁屏,这样当没人使用时屏幕就会被锁定。

在此处输入图片描述

被设定为。您也可以在离开计算机前按Ctrl++Alt手动锁定屏幕。L

记住:如果有人可以物理进入计算机并将其重新启动到恢复模式并重置您的密码,那么所有这些都是无用的。

希望这可以帮助

答案2

将所有(可能另外)连接的屏幕的桌面变黑

不确定下面的解决方案是否适合您,但作为(附加?)措施,它应该有助于至少使访问系统变得更加困难。

像往常一样,主要是组合采取措施使偶然访问变得更加困难。例如,可以通过以下方式使访问变得更加困难:

  • 添加密码以“取消”黑屏
  • 用于跟踪屏幕亮度变化的日志文件
  • 更改打开终端的默认快捷键,因此“盲目”输入命令的可能性不大。

与此同时,我很确定有人真实的如果时间充足,知识总会找到出路,除非你通过(例如)在某种盒子内构建系统来完全阻止所有连接选项。只需考虑从外部介质重新启动即可。

最重要的是你必须决定它是否对你有用

解决方案

存在每秒一次的后台脚本:

  • 检查所有已连接的屏幕(包括新连接的屏幕)
  • 检查所有屏幕是否都设置为亮度0.0(或1.0,见下文)
  • 0.0如果没有,则将所有屏幕设置为亮度。

此外:

  • 该脚本从主目录中的隐藏文件中读取所需的亮度值
  • 解决方案包括两个快捷键组合,用于将文件中的该值设置为1.0(正常使用)或0.0(黑屏)。

如上所述,快捷键可以使用密码(纯文本)。如果您觉得有用,请提及。

剧本

#!/usr/bin/env python3
import subprocess
import time
import os

screen_brightness = os.environ["HOME"]+"/.screenset.txt"
if not os.path.exists(screen_brightness):
    open(screen_brightness, "wt").write("0.0")

def read_set():
    return open(screen_brightness).read()

def get(command):
    return subprocess.check_output(["/bin/bash", "-c", command]).decode("utf-8")

def find_screens(screendata):
    return [l.split()[0] for l in screendata.splitlines() if " connected" in l]

while True:
    time.sleep(1)
    curr_set = read_set()
    screendata = get("xrandr --verbose")
    n_screens = screendata.count(" connected")
    n_dimmed = screendata.count("Brightness: "+curr_set)
    if n_dimmed != n_screens:
        screens = find_screens(screendata)
        for scr in screens:
            subprocess.Popen(["xrandr", "--output", scr, "--brightness", curr_set])

如何设置

  1. 将脚本复制到一个空文件中,另存为black_screen.py
  2. 创建两个快捷键(命令):

    echo 1.0 > ~/.screenset.txt
    

    和:

    echo 0.0 > ~/.screenset.txt
    

    选择:系统设置 > “键盘” > “快捷键” > “自定义快捷键”。点击“+”,将命令添加到两个不同的快捷键上。

  3. 使用以下命令测试运行脚本:

    python3 /path/to/black_screen.py
    
  4. 如果一切正常,请将其添加到您的启动应用程序中:Dash>启动应用程序>添加命令:

    python3 /path/to/black_screen.py
    

笔记

如上所述,可以使用(纯文本)密码和/或日志文件使脚本/设置更加安全。请查看这是否有用。

相关内容