采购 $HOME/.bashrc 的安全性如何?

采购 $HOME/.bashrc 的安全性如何?

我是 linux/bash 的新手,花了很多周时间尝试解决如何启用虚拟设备(基于 linux/bash)来自动验证并在网络目标上执行命令。

我让它工作了,但我是 Linux 新手,不明白我写的内容的安全含义。它是一个家庭实验室,但我希望它能够模仿设备安全的良好原则。

我的脚本作为“scriptX”存储在 /home/userX/bin/ 中,并包含以下内容:

#! /bin/bash
source $HOME/.bashrc
source *commands to authenticate to target*
source *command to scan adapters*

当我登录 SSH 并执行 ./ 在交互式环境中运行时,此方法有效。然而,作为一个 cron 作业,除非我在其他一些东西中找到了 $HOME 的来源,否则它不会工作。我有一个 cron 作业设置,如下所示:

sudo crontab -e

然后在 cron 作业中

@reboot . /etc/skel/.bashrc ; bash -l -c '/home/UserX/bin/scriptX'

所以它按预期工作,但我混淆了我在网上找到的部分脚本,直到它工作为止。

除了将帐户从 root 更改为特权较低的用户之外,对于如何处理此操作,还有什么可以改进的地方吗?

答案1

获取任何文件(例如$HOME/.bashrc)与该文件中写入的内容一样安全。

举个极端的例子,如果你的.bashrc包含/bin/rm -rf $HOME它是非常不安全。

请注意,采购不会影响任何家长壳。

也许您需要了解有关 SSH 以及如何将其与公钥/私钥一起使用的更多信息;阅读一些 SSH 教程。

相关内容