黑客也有他们想要定期运行的任务、脚本或其他任务。你可能希望设置一个自动文件备份,或者转存日志文件。这些都是调度自动化作业的例子。
系统管理员,黑客都可能希望在系统启动时自动启动特定的脚本或任务。
本章中,将学到如何使用cron守护进程和crontab设置一个脚本,让其甚至在系统无人操作时自动运行。
任务调度或使其自动运行
cron守护程序和crontab时用于调度常规任务的最有用的工具。
cron守护程序检查cron列表以在指定时间运行哪些命令。可以更改cron列表,安排任务或工作在特定日期或时间,每天特定时间或每隔多周或几个月定期执行。
要调度一个任何或作业,需要在/etc/crontab目录下的crontab文件里输入它们。
crontab列表有7个字段,前五个用于计划运行任务的时间,第6个字段指定用户,第7个字段用于要执行的命令的绝对路径。
如果我们编写一个扫描全球易受攻击的开放端口的脚本,并希望它在周一到周五凌晨2:30运行,我们可以在crontab文件中调度它。
如果你希望在非连续的周执行脚本,可以用逗号将值分开。例如周二和周四就是2,4
编辑crontab
crontab -e
第一次运行此命令时,询问你要使用哪个编辑器。默认为/bin/nano,选项1.
另一个选择是用自己喜欢的文本编辑器打开crontab。
leafpad /etc/crontab
设置一个备份计划任务
使用crontab计划执行MySQLscanner
计划MySQLscanner.sh脚本
crontab快捷方式
使用RC脚本开机运行任务
每当你启动linux系统时,都会运行一些脚本来为你配置环境。这些脚本就是rc脚本。在内核初始化并加载了所有模块之后,内核将启动一个守护进程叫做init或init.d。这个守护进程开始运行/etc/init.d/rc中的一些脚本。这些脚本包括一些命令,用于启动运行linux系统所需的服务。
linux运行级别
将服务添加到rc.d
添加启动时要运行的服务。
update-rc.d 【name of the script or service】【remove | defaults | disable | enable】
希望PostgreSQL数据库在系统启动时运行。
先检查PostgreSQL是否已经在系统中运行了。
ps aux | grep postgresql
更新rc.d来让PostgreSQL启动时自动运行
update-rc.d postgresql defaults
这会添加一行到rc.d文件。你需要重启系统来让更改生效。
做完后,再使用ps命令和grep查询PostgreSQL进程
ps aux | grep postgresql
可以看到,再系统启动时自动运行了,等待你使用metasploit
通过GUI添加开机启动服务
可以从kali源下载基于GUI的工具rcconf
apt-get install rcconf
安装完成后,启动
rcconf
TAB键,ENTER键,选择和确认。PostgreSQL将会自动启动。