如何在Ubuntu 18上安装GRR?
学习如何在Ubuntu上安装GRR(Google Rapid Response)服务器和客户端,以进行调查。
介绍
GRR(Google Rapid Response)是一个基于Python的事件响应框架,可用于实时forensics and investigations。它允许您远程检查和分析攻击。
GRR可以部署在服务器-客户端架构中。它配有基于Web的用户界面,可让您分析从客户端收集的数据。它支持Linux、Mac OS X和Windows操作系统。
要求
- 运行Ubuntu 18.xx的服务器
- 在服务器上设置了root密码
入门
在开始之前,您需要使用最新版本更新系统。您可以通过运行以下命令来执行:
apt-get update -y
系统更新后,重新启动系统以应用所有更改。
安装和配置数据库
首先,您需要将MariaDB数据库服务器安装到您的系统中。您可以使用以下命令进行安装:
apt-get install mariadb-server -y
安装完成后,通过运行以下命令来保护MariaDB安装:
mysql_secure_installation
按照以下示例回答所有问题:
Enter current password for root (enter for none):
Set root password? [Y/n]: N
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y
安全设置完成后,使用以下命令登录到MariaDB shell:
mysql -u root -p
输入您的root密码。然后,使用以下命令为GRR创建数据库和用户:
MariaDB [(none)]> CREATE DATABASE grr;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON grr.* TO 'grr'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
接下来,使用以下命令刷新权限并退出MariaDB shell:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
然后,使用以下命令重新启动MariaDB服务:
systemctl restart mariadb
您可以使用以下命令检查MariaDB服务的状态:
systemctl status mariadb
您应该看到以下输出:
mariadb.service – MariaDB 10.1.38数据库服务器
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2019-04-12 15:11:14 UTC; 54min ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
Main PID: 1050 (mysqld)
Status: “正在处理SQL请求…”
Tasks: 46 (limit: 1113)
CGroup: /system.slice/mariadb.service
└─1050 /usr/sbin/mysqld
Apr 12 15:10:53 ubuntu1804 systemd[1]: 正在启动MariaDB 10.1.38数据库服务器…
Apr 12 15:11:07 ubuntu1804 mysqld[1050]: 2019-04-12 15:11:07 140152311749760 [注意] /usr/sbin/mysqld (mysqld 10.1.38-MariaDB-0ubuntu0.18.04.1)
Apr 12 15:11:14 ubuntu1804 systemd[1]: 已启动MariaDB 10.1.38数据库服务器。
Apr 12 15:11:14 ubuntu1804 /etc/mysql/debian-start[1251]: 如有必要,升级MySQL表。
Apr 12 15:11:15 ubuntu1804 /etc/mysql/debian-start[1265]: /usr/bin/mysql_upgrade: ‘–basedir'选项始终被忽略
Apr 12 15:11:15 ubuntu1804 /etc/mysql/debian-start[1265]: 寻找'mysql':/usr/bin/mysql
Apr 12 15:11:15 ubuntu1804 /etc/mysql/debian-start[1265]: 寻找'mysqlcheck':/usr/bin/mysqlcheck
Apr 12 15:11:15 ubuntu1804 /etc/mysql/debian-start[1265]: MySQL的此安装已升级到10.1.38-MariaDB,如果需要,使用–force
Apr 12 15:11:15 ubuntu1804 /etc/mysql/debian-start[1306]: 检查不安全的root账户。
Apr 12 15:11:15 ubuntu1804 /etc/mysql/debian-start[1311]: 对所有MyISAM表触发myisam-recover,对所有Aria表触发aria-recover
lines 1-21/21 (END)
完成后,您可以继续下一步。
安装GRR服务器
首先,您需要从它们的official GitHub repository下载GRR软件包。
您可以使用以下命令下载GRR 3.2.4.6版本。
wget https://storage.googleapis.com/releases.grr-response.com/grr-server_3.2.4-6_amd64.deb
下载完成后,您可以使用以下命令安装下载的文件:
dpkg -i grr-server_3.2.4-6_amd64.deb
接下来,使用以下命令安装所需的依赖项:
apt-get install -f
在安装过程中,您需要提供一些详细信息,例如数据库主机、用户名、密码、GRR URL和管理员密码,如下所示:
运行grr_config_updater initialize
要避免提示,请设置DEBIAN_FRONTEND=noninteractive
#################################################################
检查对配置/etc/grr//server.local.yaml的写入权限
步骤0:导入上一次安装的配置。
找不到旧的配置文件。
步骤1:设置基本配置参数
现在我们将使用一系列问题来配置服务器。-=GRR数据存储=-为了使GRR工作,每个GRR服务器都必须能够与数据存储进行通信。为此,我们需要配置一个数据存储。GRR将使用MySQL作为其数据库后端。输入连接详细信息:MySQL主机[localhost]:MySQL端口(对于本地套接字为0)[0]:MySQL数据库[grr]:MySQL用户名[root]:grr请输入数据库用户grr的密码:成功使用提供的详细信息连接到MySQL。-=GRR网址=-为了使每个客户端能够与服务器通信,我们通常需要一个公共的DNS名称或IP地址来通信。在标准配置中,这将用于托管客户端面向的服务器和管理员用户界面。请输入您的主机名,例如grr.example.com [ubuntu1804]:192.168.0.104-=服务器URL=-服务器URL指定客户端将连接到与服务器通信的URL。为了获得最佳结果,这应该是公开访问的。默认情况下,这将是端口8080,URL以/control结尾。前端URL[http://192.168.0.104:8080/]:-=AdminUI URL=-:UI URL指定可以找到管理Web界面的位置。AdminUI URL[http://192.168.0.104:8000]:-=GRR电子邮件=-GRR需要能够发送电子邮件以进行各种日志记录和警报功能。发送电子邮件给用户时,将附加电子邮件域到GRR用户名。-=监视/电子邮件域=-必须将有关警报或更新的电子邮件发送到此域。电子邮件域例如example.com [localhost]:-=警报电子邮件地址=-发送监视事件的地址,例如崩溃的客户端,损坏的服务器等。警报电子邮件地址[grr-monitoring@localhost]:-=紧急邮件地址=-发送高优先级事件(如紧急ACL绕过)的地址。紧急访问电子邮件地址[grr-emergency@localhost]:Rekall不再得到积极支持。仍然启用?[yN]:[N]:步骤2:密钥生成所有密钥的位长度将为2048。生成可执行签名密钥生成CA密钥生成服务器密钥生成用于csrf保护的密钥。重新打包为/usr/share/grr-server/executables/installers/grr_3.2.4.6_amd64.debGRR初始化完成!您可以在/etc/grr//server.local.yaml中编辑新配置。请重新启动服务以使新配置生效。#################################################################安装完成。
现在,重新启动GRR服务以应用所有更改:
systemctl restart grr-server
您现在可以使用以下命令检查GRR的状态:
systemctl status grr-server
您应该看到以下输出:
grr-server.service - GRR服务
已加载:已加载(/lib/systemd/system/grr-server.service;已启用;供应商预设:已启用)
活动:自从2019-04-12 15:57:09 UTC以来处于活动状态;6秒前
文档:https://github.com/google/grr
进程:7178 ExecStop=/bin/systemctl --no-block stop grr-server@admin_ui.service [email protected] [email protected] grr-s
进程:7215 ExecStart=/bin/systemctl --no-block start grr-server@admin_ui.service [email protected] [email protected] grr
主PID:7215(代码=已退出,状态=0/成功)
Apr 12 15:57:09 ubuntu1804 systemd[1]:正在启动GRR服务......
Apr 12 15:57:09 ubuntu1804 systemd[1]:已启动GRR服务。
访问GRR Web界面
GRR现已安装并在端口8000(管理员)和8080(前端)上侦听。
要访问GRR管理界面,请打开您的网络浏览器并输入URL http://192.168.0.104:8000。
您将被要求提供管理员用户名和密码,使用admin作为用户,并使用安装期间设置的密码。然后,点击“确定”按钮。您将被重定向到以下页面:
安装GRR客户端
首先,登录到GRR服务器的Web界面,并导航到左侧窗格上的“管理二进制文件”选项卡。您应该在以下页面中看到各种客户端版本,如RHEL、Debian和BSD:
现在,您的发行版是Ubuntu 18.04。因此,点击“grr_3.2.4.6_amd64.deb”以下载Ubuntu的GRR客户端。
下载完成后,使用以下命令安装下载的文件:
dpkg -i grr_3.2.4.6_amd64.deb
上述命令将在您的系统上安装GRR客户端,并自动注册到GRR服务器。
您还可以使用以下命令检查GRR的状态:
systemctl status grr
您应该看到以下输出:
grr.service – grr linux amd64
Loaded: loaded (/lib/systemd/system/grr.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2019-04-12 16:24:39 UTC; 16s ago
Main PID: 3305 (grrd)
Tasks: 6 (limit: 847)
CGroup: /system.slice/grr.service
├─3305 /usr/sbin/grrd –config=/usr/lib/grr/grr_3.2.4.6_amd64/grrd.yaml
└─3306 /usr/sbin/grrd –config=/usr/lib/grr/grr_3.2.4.6_amd64/grrd.yaml
Apr 12 16:24:39 ubuntu1804 systemd[1]: Started grr linux amd64.
进行调查
现在,转到GRR服务器的Web界面,点击“搜索框”,然后按Enter键。您应该在以下页面中看到您的客户端:
现在,点击您的客户端以查看更多详细信息,如以下页面所示:
接下来,我们将列出正在运行的客户端进程。
要这样做,请点击“启动新流程 > 进程 > 列出进程”,在“连接状态”下选择“已建立”,然后点击“启动”以启动流程。您应该看到以下页面:
接下来,点击“管理已启动流程 > 列出进程 > 结果”以查看“列出进程”流程的结果,如以下页面所示:
恭喜!您已成功安装了GRR服务器和客户端。继续使用该工具玩耍吧。