草庐IT

dereference_root

全部标签

linux - 从脚本更改 root 密码

我正在寻找一种无需启动系统即可通过bash脚本在Linux系统上更改root用户密码的方法。到目前为止我发现的唯一事情是删除密码,或者使用我不想使用的chroot。我知道如何清空root密码,但我需要将其更改为之前在脚本中定义的不同密码。我拥有整个文件系统的根访问权限。系统正在使用影子密码,有没有办法在不登录/chrooting的情况下生成加密的影子密码?从脚本更改root密码的任何其他方法? 最佳答案 密码散列在/etc/shadow中。您可以简单地用生成的(加盐的)哈希替换它。crypt(3)中描述了密码哈希的格式。默认是DES

linux - 如何在 home 'not root' 安装 python3.4?确保点失败

我在安装python3.4的RedHatLinux机器上没有root权限。已下载Python-3.4.1.tgztar-xzfPython-3.4.1.tgz./configuremakealtinstall--with-ensurepip=installprefix=~exec-prefix=~Python3确实安装了,但我没有pip。我收到以下错误:Ignoringensurepipfailure:pip1.5.6requiresSSL/TLS我没有root访问权限,所以我无法通过以下方式安装:sudoapt-getinstalllibssl-devopenssl我有一个可用的op

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 - 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/