草庐IT

enable-welcome-root

全部标签

java - 在 Linux 上,人们是 chroot Java Web 应用程序还是使用 IPTables 并以非 root 身份运行?

当您运行一个JavaServlet容器并希望在端口80上同时提供静态和动态内容时,您会遇到一个经典问题,即是否将服务器运行为:如果可以的话,希望以root身份进入chrootjail(还没有开始工作)作为非root用户,然后使用IPTables将端口80转发到容器正在运行的其他端口(>1024)两者:作为非root用户、IPTables和chrootjail。opt的问题。1是chrooting的复杂性,仍然是运行root的安全问题。opt的问题。2是每个Linux发行版都有不同的持久化IPTables的方式。选项3当然可能是个好主意,但很难设置。最后,每个发行版在守护程序脚本方面都有

linux - 我是否需要 "enable"Linux 3.12 驱动程序中的 PCIe 内存区域?

我有代码,从我的PCIe驱动程序的probe()函数调用(大致基于此post):编辑:基于AndreasBombe's响应,我更改了代码以使用pci_iomap(),但我仍然遇到系统挂起staticmy_pci_devpci_dev;/*localstructure*/staticintpci_setup_region(structpci_dev*dev){intbar=0;pci_dev.physical.addr=pci_resource_start(dev,bar);pci_dev.physical.size=pci_resource_len(dev,bar);pci_dev.v

linux - Bash PS1 为 root 显示 $ 而不是 #

root登录时,回显时默认提示符为\s-\v\$,显示为bash-4.2#。我正在尝试使用bash提示符来显示工作目录。导出PS1="\w\$"。提示正确显示,但是,符号\$没有转换成#,即使我的$UID是0,这违背了省略用户符号\u的目的。是否有我必须添加的额外内容,或者如果我导出该符号是否不起作用? 最佳答案 exportPS1="\w\$"这不会将$PS1设置为\w\$,而是将其设置为\w$,如您所见你输入:echo"$PS1"使用单引号:exportPS1='\w\$' 关于li

c - 无需 root 即可将 Web 服务器绑定(bind)到端口 80

我已经用C语言编写了自己的Web服务器。我如何才能将它绑定(bind)到端口80而不是root,这样安全性就不会受到损害(缓冲区溢出等)?我是否应该简单地转发来自另一个运行在端口80上的“稳定”服务器的任何流量? 最佳答案 使用正向代理确实是最简单也是最推荐的解决方案。它还具有在非常无效的请求到达您自己编写的服务器之前过滤掉它们的优势。如果您的应用程序将用户的IP地址用于某些用途,请记住从您的Web服务器使用的任何header(X-Client-IP等)中检索它。但是,只对真正来自您的网络服务器的请求这样做,否则用户可以欺骗他们的I

linux - Jetty bash 脚本仅适用于 root 用户

我已经通过提取/opt/jetty中的存档安装了Jetty9(最新版本)。start.jar运行良好,但我希望bash服务bin/jetty.sh由非根用户运行。我在使用bash脚本时遇到的问题是:当我没有在/etc/default/jetty中为$JETTY_USER指定值时(它使用root用户),Jetty工作。但是当我为其分配一个值时,Jetty失败并显示消息:StartingJetty:FAILED,并且没有日志。那么,如何创建可以运行jetty的用户? 最佳答案 我知道这个问题很老了,但由于这种行为最近也困扰着我,所以这是

c++ - 我的 C/C++ 应用程序如何确定 root 用户是否正在执行命令?

我正在编写一个需要root用户权限才能执行的应用程序。如果由非root用户执行,它会退出并终止并显示一条错误消息,例如:pthread_getschedparam:Operationnotpermitted我想让应用程序更加用户友好。作为其早期初始化的一部分,我希望它检查它是否由root执行。如果不是root,它会显示一条消息,表明它只能由root运行,然后终止。 最佳答案 getuid或geteuid是显而易见的选择。getuid检查实际用户的凭据。geteuid中添加的e代表effective。它检查有效凭据。举个例子,如果你使

python - 检查非 root 用户是否可以访问路径

我有一个用Python(在Linux中)编写的安装脚本,它以root身份运行,需要检查非root用户是否可以读取某些文件。出于这个原因,我不能使用os.path.exists()或open(filename)(并捕获任何异常)。目前我正在考虑检查每个文件的权限位,但唯一的问题是我还必须检查通向文件名的路径上的权限位(目录需要r+x位设置),如果我有数千个文件,这可能是一个非常缓慢的过程。我的解决方案是最好的,还是有更好的选择?编辑:我需要在检查文件后以root身份运行脚本,因此不幸的是,放弃root权限不是一个选项。 最佳答案 你可

linux - 以非 root 用户身份访问带有 libusb-1.0 的 USB 设备

我正在尝试以RHEL5上的非根用户身份连接USB设备。该设备是一个使用libusb-1.0的GPIO接口(interface)(其文档可以在http://www.xdimax.com/sub20/sub20.html找到)。使用其API打开设备的过程是:sub_deviced;d=sub_find_devices(0);sub_handleh=sub_open(d);当我这样做时,sub_find_devices()调用有效,但在sub_open()调用中,我收到libusb错误-3,这表明我这样做了没有权限打开设备进行写入。我对这个问题做了一些研究,发现我应该创建一个udev规则。在

linux - 没有root的Datastax Cassandra

我正在尝试在RedhatLinux上安装和运行Datastaxcassandra社区版,但我没有root权限。我在我的主目录中提取了tar,但我无法执行./cassandra我正在HPC集群上执行此操作,我想我会在我的主目录中安装Cassandra并将数据保存在我们提供的暂存空间中(主目录没有足够的空间来容纳整个数据)如有任何帮助,我将不胜感激!谢谢! 最佳答案 来自installationdocsforDataStaxcommunityedition,您唯一需要的其他步骤是创建数据和日志目录:$sudomkdir/var/lib/

linux - 如何在一行命令中将密码应用于 sudo 并执行 su root?

我创建了一个名为samX的用户,具有root权限(在visudo中附加了“samXALL=(ALL:ALL)ALL”)。我正在尝试将密码应用到sudo,然后是suroot并在一行命令中依次执行whoami。我当前的命令有点如下,但它提示错误:sudo:suroot;whoami:找不到命令echo'CbEYKFKt'|sudo-S'suroot;whoami'其中'CbEYKFKt'为用户samX的密码。有什么办法可以解决这个问题吗?非常感谢。 最佳答案 echo'CbEYKFKt'|sudo-Ssu-cwhoami应该工作--c为