分类 技术 下的文章

GoTTY 是一个简单的基于 Go 语言的命令行工具,它可以将你的终端(TTY)作为 web 程序共享。它会将命令行工具转换为 web 程序。

它使用 Chrome OS 的终端仿真器(hterm)来在 Web 浏览器上执行基于 JavaScript 的终端。重要的是,GoTTY 运行了一个 Web 套接字服务器,它基本上是将 TTY 的输出传输给客户端,并从客户端接收输入(即允许客户端的输入),并将其转发给 TTY。

它的架构(hterm + web socket 的想法)灵感来自 Wetty 项目,它使终端能够通过 HTTP 和 HTTPS 使用。

先决条件

你需要在 Linux 中安装 GoLang (Go 编程语言) 环境来运行 GoTTY。

如何在 Linux 中安装 GoTTY

如果你已经有一个可以工作的 Go 语言环境,运行下面的 go get 命令来安装它:

# go get github.com/yudai/gotty

上面的命令会在你的 GOBIN 环境变量中安装 GOTTY 的二进制,尝试检查下是否如此:

# $GOPATH/bin/

Check GOBIN Environment

检查 GOBIN 环境

如何在 Linux 中使用 GoTTY

要运行它,你可以使用 GOBIN 环境变量并用命令补全:

# $GOBIN/gotty

另外,要不带完整命令路径运行 GoTTY 或其他 Go 程序,使用 export 命令将 GOBIN 变量添加到 ~/.profile 文件中的 PATH 环境变量中。

export PATH="$PATH:$GOBIN"

保存文件并关闭。接着运行 source 来使更改生效:

# source ~/.profile

运行 GoTTY 命令的常规语法是:

Usage: gotty [options] <Linux command here> [<arguments...>]

现在用 GoTTY 运行任意命令,如 df 来从 Web 浏览器中查看系统分区空间及使用率。

# gotty df -h

GoTTY 默认会在 8080 启动一个 Web 服务器。在浏览器中打开 URL:http://127.0.0.1:8080/,你会看到运行的命令仿佛运行在终端中一样:

Gotty Linux Disk Usage

Gotty 查看 Linux 磁盘使用率

如何在 Linux 中自定义 GoTTY

你可以在 ~/.gotty 配置文件中修改默认选项以及终端,如果该文件存在,它会在每次启动时加载这个文件。

这是由 getty 命令读取的主要自定义文件,因此,按如下方式创建:

# touch ~/.gotty

并为配置选项设置你自己的有效值(在此处查找所有配置选项)以自定义 GoTTY,例如:

// Listen at port 9000 by default
port = "9000"
// Enable TSL/SSL by default
enable_tls = true
// hterm preferences
// Smaller font and a little bit bluer background color
preferences {
font_size = 5,
background_color = "rgb(16, 16, 32)"
}

你可以使用命令行中的 --html 选项设置你自己的 index.html 文件:

# gotty --index /path/to/index.html uptime

如何在 GoTTY 中使用安全功能

由于 GoTTY 默认不提供可靠的安全保障,你需要手动使用下面说明的某些安全功能。

允许客户端在终端中运行命令

请注意,默认情况下,GoTTY 不允许客户端输入到TTY中,它只支持窗口缩放。

但是,你可以使用 -w--permit-write 选项来允许客户端写入 TTY,但是并不推荐这么做因为会有安全威胁。

以下命令会使用 vi 命令行编辑器在 Web 浏览器中打开文件 fossmint.txt 进行编辑:

# gotty -w vi fossmint.txt

以下是从 Web 浏览器看到的 vi 界面(像平常一样使用 vi 命令):

Gotty Web Vi Editor

Gotty Web Vi 编辑器

使用基本(用户名和密码)验证运行 GoTTY

尝试激活基本身份验证机制,这样客户端将需要输入指定的用户名和密码才能连接到 GoTTY 服务器。

以下命令使用 -c 选项限制客户端访问,以向用户询问指定的凭据(用户名:test 密码:@67890):

# gotty -w -p "9000" -c "test@67890" glances

Gotty with Basic Authentication

使用基本验证运行 GoTTY

Gotty 生成随机 URL

限制访问服务器的另一种方法是使用 -r 选项。GoTTY 会生成一个随机 URL,这样只有知道该 URL 的用户才可以访问该服务器。

还可以使用 -title-format "GoTTY – {{ .Command }} ({{ .Hostname }})" 选项来定义浏览器标题。glances 用于显示系统监控统计信息:

# gotty -r --title-format "GoTTY - {{ .Command }} ({{ .Hostname }})" glances

以下是从浏览器中看到的上面的命令的结果:

Gotty Random URL for Glances Linux Monitoring

使用 Gotty 随机 URL 用于 Glances 系统监控

带有 SSL/TLS 使用 GoTTY

因为默认情况下服务器和客户端之间的所有连接都不加密,当你通过 GoTTY 发送秘密信息(如用户凭据或任何其他信息)时,你需要使用 -t--tls 选项才能在会话中启用 TLS/SSL:

默认情况下,GoTTY 会读取证书文件 ~/.gotty.crt 和密钥文件 ~/.gotty.key,因此,首先使用下面的 openssl 命令创建一个自签名的证书以及密钥( 回答问题以生成证书和密钥文件):

# openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ~/.gotty.key -out ~/.gotty.crt

按如下所示,通过启用 SSL/TLS,以安全方式使用 GoTTY:

# gotty -tr --title-format "GoTTY - {{ .Command }} ({{ .Hostname }})" glances

与多个客户端分享你的终端

你可以使用终端复用程序来与多个客户端共享一个进程,以下命令会启动一个名为 gotty 的新 tmux 会话来运行 glances(确保你安装了 tmux):

# gotty tmux new -A -s gotty glances 

要读取不同的配置文件,像下面那样使用 –config "/path/to/file" 选项:

# gotty -tr --config "~/gotty_new_config" --title-format "GoTTY - {{ .Command }} ({{ .Hostname }})" glances

要显示 GoTTY 版本,运行命令:

# gotty -v 

访问 GoTTY GitHub 仓库以查找更多使用示例:https://github.com/yudai/gotty

就这样了!你有尝试过了吗?如何知道 GoTTY 的?通过下面的反馈栏与我们分享你的想法。


作者简介:

Aaron Kili 是 Linux 和 F.O.S.S 爱好者,即将成为 Linux SysAdmin 和网络开发人员,目前是 TecMint 的内容创作者,他喜欢在电脑上工作,并坚信分享知识。


via: http://www.tecmint.com/gotty-share-linux-terminal-in-web-browser/

作者:Aaron Kili 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

了解 Fedora 第一个官方支持树莓派的版本

 title=

2016 年 10 月,Fedora 25 Beta 发布了,随之而来的还有对 树莓派 2 和 3 的初步支持。Fedora 25 的最终“通用”版在一个月后发布,从那时起,我一直在树莓派上尝试不同的 Fedora spins。

这篇文章不仅是一篇 树莓派 Raspberry Pi 3 上的 Fedora 25 的点评,还集合了技巧、截图以及我对 Fedora 第一个官方支持 Pi 的这个版本的一些个人看法。

在我开始之前,需要说一下的是,为写这篇文章所做的所有工作都是在我的运行 Fedora 25 的个人笔记本电脑上完成的。我使用一张 microSD 插到 SD 适配器中,复制和编辑所有的 Fedora 镜像到 32GB 的 microSD 卡中,然后用它在一台三星电视上启动了树莓派 3。 因为 Fedora 25 尚不支持内置 Wi-Fi,所以树莓派 3 使用了以太网线缆进行网络连接。最后,我使用了 Logitech K410 无线键盘和触摸板进行输入。

如果你没有条件使用以太网线连接在你的树莓派上玩 Fedora 25,我曾经用过一个 Edimax Wi-Fi USB 适配器,它也可以在 Fedora 25 上工作,但在本文中,我只使用了以太网连接。

在树莓派上安装 Fedora 25 之前

阅读 Fedora 项目 wiki 上的树莓派支持文档。你可以从 wiki 下载 Fedora 25 安装所需的镜像,那里还列出了所有支持和不支持的内容。

此外,请注意,这是初始支持版本,还有许多新的工作和支持将随着 Fedora 26 的发布而出现,所以请随时报告 bug,并通过 Bugzilla、Fedora 的 ARM 邮件列表、或者 Freenode IRC 频道#fedora-arm,分享你在树莓派上使用 Fedora 25 的体验反馈。

安装

我下载并安装了五个不同的 Fedora 25 spin:GNOME(默认工作站)、KDE、Minimal、LXDE 和 Xfce。在多数情况下,它们都有一致和易于遵循的步骤,以确保我的树莓派 3 上启动正常。有的 spin 有已知 bug 的正在解决之中,而有的按照 Fedora wik 遵循标准操作程序即可。

 title=

树莓派 3 上的 Fedora 25 workstation、 GNOME 版本

安装步骤

1、 在你的笔记本上,从支持文档页面的链接下载一个树莓派的 Fedora 25 镜像。

2、 在笔记本上,使用 fedora-arm-installer 或下述命令行将镜像复制到 microSD:

xzcat Fedora-Workstation-armhfp-25-1.3-sda.raw.xz | dd bs=4M status=progress of=/dev/mmcblk0

注意:/dev/mmclk0 是我的 microSD 插到 SD 适配器后,在我的笔记本电脑上挂载的设备名。虽然我在笔记本上使用 Fedora,可以使用 fedora-arm-installer,但我还是喜欢命令行。

3、 复制完镜像后,先不要启动你的系统。我知道你很想这么做,但你仍然需要进行几个调整。

4、 为了使镜像文件尽可能小以便下载,镜像上的根文件系统是很小的,因此你必须增加根文件系统的大小。如果你不这么做,你仍然可以启动你的派,但如果你一旦运行 dnf update 来升级你的系统,它就会填满文件系统,导致糟糕的事情发生,所以趁着 microSD 还在你的笔记本上进行分区:

growpart /dev/mmcblk0 4
resize2fs /dev/mmcblk0p4

注意:在 Fedora 中,growpart 命令由 cloud-utils-growpart.noarch 这个 RPM 提供的。

5、文件系统更新后,您需要将 vc4 模块列入黑名单。更多有关此 bug 的信息在此。

我建议在启动树莓派之前这样做,因为不同的 spin 有不同表现方式。例如,(至少对我来说)在没有黑名单 vc4 的情况下,GNOME 在我启动后首先出现,但在系统更新后,它不再出现。 KDE spin 则在第一次启动时根本不会出现 KDE。因此我们可能需要在我们的第一次启动之前将 vc4 加入黑名单,直到这个错误以后解决了。

黑名单应该出现在两个不同的地方。首先,在你的 microSD 根分区上,在 etc/modprode.d/ 下创建一个 vc4.conf,内容是:blacklist vc4。第二,在你的 microSD 启动分区,添加 rd.driver.blacklist=vc4extlinux/extlinux.conf 文件的末尾。

6、 现在,你可以启动你的树莓派了。

启动

你要有耐心,特别是对于 GNOME 和 KDE 发行版来说。在 SSD(固态驱动器)几乎即时启动的时代,你很容易就对派的启动速度感到不耐烦,特别是第一次启动时。在第一次启动 Window Manager 之前,会先弹出一个初始配置页面,可以配置 root 密码、常规用户、时区和网络。配置完毕后,你就应该能够 SSH 到你的树莓派上,方便地调试显示问题了。

系统更新

在树莓派上运行 Fedora 25 后,你最终(或立即)会想要更新系统。

首先,进行内核升级时,先熟悉你的 /boot/extlinux/extlinux.conf 文件。如果升级内核,下次启动时,除非手动选择正确的内核,否则很可能会启动进入救援( Rescue )模式。避免这种情况发生最好的方法是,在你的 extlinux.conf 中将定义 Rescue 镜像的那五行移动到文件的底部,这样最新的内核将在下次自动启动。你可以直接在派上或通过在笔记本挂载来编辑 /boot/extlinux/extlinux.conf

label Fedora 25 Rescue fdcb76d0032447209f782a184f35eebc (4.9.9-200.fc25.armv7hl)
            kernel /vmlinuz-0-rescue-fdcb76d0032447209f782a184f35eebc
            append ro root=UUID=c19816a7-cbb8-4cbb-8608-7fec6d4994d0 rd.driver.blacklist=vc4
            fdtdir /dtb-4.9.9-200.fc25.armv7hl/
            initrd /initramfs-0-rescue-fdcb76d0032447209f782a184f35eebc.img

第二点,如果无论什么原因,如果你的显示器在升级后再次变暗,并且你确定已经将 vc4 加入黑名单,请运行 lsmod | grep vc4。你可以先启动到多用户模式而不是图形模式,并从命令行中运行 startx。 请阅读 /etc/inittab 中的内容,了解如何切换 target 的说明。

 title=

树莓派 3 上的 Fedora 25 workstation、 KDE 版本

Fedora Spin

在我尝试过的所有 Fedora Spin 中,唯一有问题的是 XFCE spin,我相信这是由于这个已知的 bug 导致的。

按照我在这里分享的步骤操作,GNOME、KDE、LXDE 和 minimal 都运行得很好。考虑到 KDE 和 GNOME 会占用更多资源,我会推荐想要在树莓派上使用 Fedora 25 的人使用 LXDE 和 Minimal。如果你是一位系统管理员,想要一台廉价的 SELinux 支持的服务器来满足你的安全考虑,而且只是想要使用树莓派作为你的服务器,开放 22 端口以及 vi 可用,那就用 Minimal 版本。对于开发人员或刚开始学习 Linux 的人来说,LXDE 可能是更好的方式,因为它可以快速方便地访问所有基于 GUI 的工具,如浏览器、IDE 和你可能需要的客户端。

 title=

树莓派 3 上的 Fedora 25 workstation、LXDE。

看到越来越多的 Linux 发行版在基于 ARM 的树莓派上可用,那真是太棒了。对于其第一个支持的版本,Fedora 团队为日常 Linux 用户提供了更好的体验。我很期待 Fedora 26 的改进和 bug 修复。

(题图: opensource.com)


作者简介:

Anderson Silva - Anderson 于 1996 年开始使用 Linux。更精确地说是 Red Hat Linux。 2007 年,他作为 IT 部门的发布工程师时加入红帽,他的职业梦想成为了现实。此后,他在红帽担任过多个不同角色,从发布工程师到系统管理员、高级经理和信息系统工程师。他是一名 RHCE 和 RHCA 以及一名活跃的 Fedora 包维护者。


via: https://opensource.com/article/17/3/how-install-fedora-on-raspberry-pi

作者:Anderson Silva 译者:geekpi 校对:jasminepeng

本文由 LCTT 原创编译,Linux中国 荣誉推出

本教程将介绍在 Kali Linux 中安装 OpenVAS 8.0 的过程。 OpenVAS 是一个可以自动执行网络安全审核和漏洞评估的开源漏洞评估程序。请注意, 漏洞评估 Vulnerability Assessment 也称为 VA 并不是 渗透测试 penetration test ,渗透测试会进一步验证是否存在发现的漏洞,请参阅什么是渗透测试来对渗透测试的构成以及不同类型的安全测试有一个了解。

什么是 Kali Linux?

Kali Linux 是 Linux 渗透测试分发版。它基于 Debian,并且预安装了许多常用的渗透测试工具,例如 Metasploit Framework (MSF)和其他通常在安全评估期间由渗透测试人员使用的命令行工具。

在大多数使用情况下,Kali 运行在虚拟机中,你可以在这里获取最新的 VMWare 或 Vbox 镜像:https://www.offensive-security.com/kali-linux-vmware-virtualbox-image-download/

除非你有特殊的原因想要一个更小的虚拟机占用空间,否则请下载完整版本而不是 Kali light。 下载完成后,你需要解压文件并打开 vbox 或者 VMWare .vmx 文件,虚拟机启动后,默认帐号是 root/toor。请将 root 密码更改为安全的密码。

或者,你可以下载 ISO 版本,并在裸机上执行 Kali 的安装。

升级 Kali Linux

完成安装后,为 Kail Linux 执行一次完整的升级。

升级 Kali:

apt-get update && apt-get dist-upgrade -y

Updating Kali Linux

更新过程可能需要一些时间才能完成。Kali 目前是滚动更新,这意味着你可以从任何版本的 Kali 滚动更新到当前版本。然而它仍有发布号,但这些是针对特定 Kali 时间点版本的 VMWare 快照。你可以从任何 VMWare 镜像更新到当前的稳定版本。

更新完成后重新启动。

安装 OpenVAS 8

Installing OpenVAS 8

apt-get install openvas

openvas-setup

在安装中,你会被询问关于 redis 的问题,选择默认选项来以 UNIX 套接字运行。

Configure OpenVAS Scanner

即使是有快速的网络连接,openvas-setup 仍需要很长时间来下载和更新所有所需的 CVE、SCAP 定义。

Update all the required CVE, SCAP definitions

请注意 openvas-setup 的命令输出,密码会在安装过程中生成,并在安装的最后在控制台中打印出来。

Command output during install

验证 openvas 正在运行:

netstat -tulpn

Check OpenVAS Status

在 Kali 中运行 OpenVAS

要在 Kali 中启动 OpenVAS:

openvas-start

安装后,你应该可以通过 https://127.0.0.1:9392 访问 OpenVAS 的 web 程序了。

OpenVAS started

接受自签名证书,并使用 openvas-setup 输出的 admin 凭证和密码登录程序。

Accept the self-signed SSL cert

接受自签名证书后,你应该可以看到登录界面了。

OpenVAS Login

登录后,你应该可以看到下面的页面:

OpenVAS Dashboard

从此,你应该可以使用向导配置自己的漏洞扫描了。

我建议阅读文档。请注意漏洞评估导向(取决于 OpenVAS 可能尝试利用的配置)及其在网络上生成的流量以及网络上可能对服务/服务器和主机/设备产生的 DOS 影响。

(题图:pixabay.com, CC0)


via: https://www.howtoforge.com/tutorial/openvas-vulnerability-assessment-install-on-kali-linux/

作者:KJS 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

Drupal 是一个开源,灵活,高度可拓展和安全的 内容管理系统 Content Management System (CMS),使用户轻松的创建网站。

它可以使用模块拓展,使用户将内容管理转换为强大的数字解决方案。

Drupal 运行在诸如 Apache、IIS、Lighttpd、Cherokee、Nginx 的 Web 服务器上,后端数据库可以使用 MySQL、MongoDB、MariaDB、PostgreSQL、MSSQL Server。

在这篇文章中, 我们会展示在 RHEL 7/6、CentOS 7/6 和 Fedora 20-25 发行版上使用 LAMP 架构,如何手动安装和配置 Drupal 8。

Drupal 需求:

  1. Apache 2.x (推荐)
  2. PHP 5.5.9 或 更高 (推荐 PHP 5.5)
  3. MySQL 5.5.3MariaDB 5.5.20 与 PHP 数据对象(PDO) 支持

安装过程中,我使用 drupal.tecmint.com 作为网站主机名,IP 地址为 192.168.0.104。你的环境也许与这些设置不同,因此请适当做出更改。

步骤 1:安装 Apache Web 服务器

1、 首先我们从官方仓库开始安装 Apache Web 服务器。

# yum install httpd

2、 安装完成后,服务开始是被禁用的,因此我们需要手动启动它,同时让它下次系统启动时自动启动,如下:

-------------  通过 SystemD - CentOS/RHEL 7 和 Fedora 22+ -------------------
# systemctl start httpd 
# systemctl enable httpd

-------------  通过 SysVInit - CentOS/RHEL 6 和 Fedora ----------------------
# service httpd start
# chkconfig --level 35 httpd on

3、 接下来,为了允许通过 HTTPHTTPS 访问 Apache 服务,我们必须打开 HTTPD 守护进程正在监听的 80443 端口,如下所示:

------------ 通过 Firewalld - CentOS/RHEL 7 and Fedora 22+ ------------- 
# firewall-cmd --permanent --zone=public --add-service=http
# firewall-cmd --permanent --zone=public --add-service=https
# firewall-cmd --reload

------------ 通过 IPtables - CentOS/RHEL 6 and Fedora 22+ ------------- 
# iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
# iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
# service iptables save
# service iptables restart

4、 现在验证 Apache 是否正常工作, 打开浏览器在地址栏中输入 http://server_IP, 输入你的服务器 IP 地址, 默认 Apache2 页面应出现,如下面截图所示:

Apache 默认页面

Apache 默认页面

步骤 2: 安装 Apache PHP 支持

5、 接下来,安装 PHP 和 PHP 所需模块。

# yum install php php-mbstring php-gd php-xml php-pear php-fpm php-mysql php-pdo php-opcache

重要: 假如你想要安装 PHP7, 你需要增加以下仓库:EPELWebtactic 才可以使用 yum 安装 PHP7.0:

------------- Install PHP 7 in CentOS/RHEL and Fedora ------------- 
# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
# yum install php70w php70w-opcache php70w-mbstring php70w-gd php70w-xml php70w-pear php70w-fpm php70w-mysql php70w-pdo

6、 接下来,要从浏览器得到关于 PHP 安装和配置完整信息,使用下面命令在 Apache 文档根目录 (/var/www/html) 创建一个 info.php 文件。

# echo "<?php  phpinfo(); ?>" > /var/www/html/info.php

然后重启 HTTPD 服务器 ,在浏览器地址栏输入 http://server_IP/info.php

# systemctl restart httpd
或
# service httpd restart

验证 PHP 信息

验证 PHP 信息

步骤 3: 安装和配置 MariaDB 数据库

7、 请知晓, Red Hat Enterprise Linux/CentOS 7.0 从支持 MySQL 转为了 MariaDB 作为默认数据库管理系统。

要安装 MariaDB 数据库, 你需要添加 官方 MariaDB 库/etc/yum.repos.d/MariaDB.repo 中,如下所示。

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

当仓库文件准备好后,你可以像这样安装 MariaDB:

# yum install mariadb-server mariadb

8、 当 MariaDB 数据库安装完成,启动数据库的守护进程,同时使它能够在下次启动后自动启动。

------------- 通过 SystemD - CentOS/RHEL 7 and Fedora 22+ ------------- 
# systemctl start mariadb
# systemctl enable mariadb
------------- 通过 SysVInit - CentOS/RHEL 6 and Fedora ------------- 
# service mysqld start
# chkconfig --level 35 mysqld on

9、 然后运行 mysql_secure_installation 脚本去保护数据库(设置 root 密码, 禁用远程登录,移除测试数据库并移除匿名用户),如下所示:

# mysql_secure_installation

Mysql安全安装

MySQL 安全安装

步骤 4: 在 CentOS 中安装和配置 Drupal 8

10、 这里我们使用 wget 命令 下载最新版本 Drupal(例如 8.2.6),如果你没有安装 wget 和 gzip 包 ,请使用下面命令安装它们:

# yum install wget gzip
# wget -c https://ftp.drupal.org/files/projects/drupal-8.2.6.tar.gz

11、 之后,解压 tar 文件 并移动 Drupal 目录到 Apache 文档根目录(/var/www/html)。

# tar -zxvf drupal-8.2.6.tar.gz
# mv drupal-8.2.6 /var/www/html/drupal

12、 然后,依据 /var/www/html/drupal/sites/default 目录下的示例设置文件 default.settings.php,创建设置文件 settings.php,然后给 Drupal 站点目录设置适当权限,包括子目录和文件,如下所示:

# cd /var/www/html/drupal/sites/default/
# cp default.settings.php settings.php
# chown -R apache:apache /var/www/html/drupal/

13、 更重要的是在 /var/www/html/drupal/sites/ 目录设置 SElinux 规则,如下:

# chcon -R -t httpd_sys_content_rw_t /var/www/html/drupal/sites/

14、 现在我们必须为 Drupal 站点去创建一个用于管理的数据库和用户。

# mysql -u root -p
Enter password: 
MySQL Shell
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MySQL connection id is 12
Server version: 5.1.73 Source distribution
Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
**MySQL [(none)]> create database drupal;**
Query OK, 1 row affected (0.00 sec)
**MySQL [(none)]> create user ravi@localhost identified by 'tecmint123';**
Query OK, 0 rows affected (0.00 sec)
**MySQL [(none)]> grant all on drupal.* to ravi@localhost;**
Query OK, 0 rows affected (0.00 sec)
**MySQL [(none)]> flush privileges;**
Query OK, 0 rows affected (0.00 sec)
**MySQL [(none)]> exit**
Bye

15、 最后,打开地址: http://server_IP/drupal/ 开始网站的安装,选择你首选的安装语言然后点击保存以继续。

Drupal 安装语言

Drupal 安装语言

16、 下一步,选择安装配置文件,选择 Standard(标准),点击保存继续。

Drupal 安装配置文件

Drupal 安装配置文件

17、 在进行下一步之前查看并通过需求审查并启用 Clean URL

验证 Drupal 需求

验证 Drupal 需求

现在在你的 Apache 配置下启用 Clean URL 的 Drupal。

# vi /etc/httpd/conf/httpd.conf

确保为默认根文档目录 /var/www/html 设置 AllowOverride All,如下图所示:

在 Drupal 中启用 Clean URL

在 Drupal 中启用 Clean URL

18、 当你为 Drupal 启用 Clean URL,刷新页面从下面界面执行数据库配置,输入 Drupal 站点数据库名,数据库用户和数据库密码。

当填写完所有信息点击保存并继续

Drupal 数据库配置

Drupal 数据库配置

若上述设置正确,Drupal 站点安装应该完成了,如下图界面。

Drupal 安装

Drupal 安装

19、 接下来配置站点为下面的设置(使用适用你的情况的值):

  • 站点名称 – TecMint Drupal Site
  • 站点邮箱地址[email protected]
  • 用户名 – admin
  • 密码 – ##########
  • 用户的邮箱地址[email protected]
  • 默认国家 – India
  • 默认时区 – UTC

设置适当的值后,点击保存并继续完成站点安装过程。

Drupal 站点配置

Drupal 站点配置

20、下图显示的是通过 LAMP 成功安装的 Drupal 8 站点。

Drupal站点面板

Drupal 站点面板

现在你可以点击增加内容,创建示例网页内容。

选项: 有些人使用 MySQL 命令行管理数据库不舒服,可以从浏览器界面 安装 PHPMYAdmin 管理数据库

浏览 Drupal 文档 : https://www.drupal.org/docs/8

就这样! 在这个文章, 我们展示了在 CentOS 7 上如何去下载、安装和使用基本配置来设置 LAMP 以及 Drupal 8。 欢迎就这个教程提供反馈,或提供给我们一些相关信息。


作者简介:

Aaron Kili 是 linux 和 F.O.S.S 爱好者,将成为 Linux 系统管理员,Web 开发者,目前是 TecMint 的原创作者,热爱计算机工作,并且坚信知识共享。


via: http://www.tecmint.com/install-drupal-in-centos-rhel-fedora/

作者:Aaron Kili 译者:imxieke 校对:jasminepeng

本文由 LCTT 原创编译,Linux中国 荣誉推出

 title=

Mike Guthrie 最近在 Linux 基金会的网络研讨会上回答了一些安全相关的问题。

这个系列的第一篇第二篇文章覆盖了 5 个让你的 Linux 远离黑客的最简单方法,并且知道他们是否已经进入。这一次,我将回答一些我最近在 Linux 基金会网络研讨会上收到的很好的安全性问题。

如果系统自动使用私钥认证,如何存储密钥密码?

这个很难。这是我们一直在斗争的事情,特别是我们在做 “Red Team” 的时候,因为我们有些需要自动调用的东西。我使用 Expect,但我倾向于在这上面使用老方法。你需要编写脚本,是的,将密码存储在系统上不是那么简单的一件事,当你这么做时你需要加密它。

我的 Expect 脚本加密了存储的密码,然后解密,发送密码,并在完成后重新加密。我知道到这有一些缺陷,但它比使用无密码的密钥更好。

如果你有一个无密码的密钥,并且你确实需要使用它。我建议你尽量限制需要用它的用户。例如,如果你正在进行一些自动日志传输或自动化软件安装,则只给那些需要执行这些功能的程序权限。

你可以通过 SSH 运行命令,所以不要给它们一个 shell,使它只能运行那个命令就行,这样就能防止某人窃取了这个密钥并做其他事情。

你对密码管理器如 KeePass2 怎么看?

对我而言,密码管理器是一个非常好的目标。随着 GPU 破解的出现和 EC2 的一些破解能力,这些东西很容易就变成过去时。我一直在窃取这些密码库。

现在,我们在破解这些库的成功率是另外一件事。我们差不多有 10% 左右的破解成功率。如果人们不能为他们的密码库用一个安全的密码,那么我们就会进入并会获得丰硕成果。比不用要强,但是你仍需要保护好这些资产。如你保护其他密码一样保护好密码库。

你认为从安全的角度来看,除了创建具有更高密钥长度的主机密钥之外,创建一个新的 “Diffie-Hellman” 模数并限制 2048 位或更高值得么?

值得的。以前在 SSH 产品中存在弱点,你可以做到解密数据包流。有了它,你可以传递各种数据。作为一种加密机制,人们不假思索使用这种方式来传输文件和密码。使用健壮的加密并且改变你的密钥是很重要的。 我会轮换我的 SSH 密钥 - 这不像我的密码那么频繁,但是我每年会轮换一次。是的,这是一个麻烦,但它让我安心。我建议尽可能地使你的加密技术健壮。

使用完全随机的英语单词(大概 10 万个)作为密码合适么?

当然。我的密码实际上是一个完整的短语。它是带标点符号和大小写一句话。除此以外,我不再使用其他任何东西。

我是一个“你可以记住而不用写下来或者放在密码库的密码”的大大的支持者。一个你可以记住不必写下来的密码比你需要写下来的密码更安全。

使用短语或使用你可以记住的四个随机单词比那些需要经过几次转换的一串数字和字符的字符串更安全。我目前的密码长度大约是 200 个字符。这是我可以快速打出来并且记住的。

在物联网情景下对保护基于 Linux 的嵌入式系统有什么建议么?

物联网是一个新的领域,它是系统和安全的前沿,日新月异。现在,我尽量都保持离线。我不喜欢人们把我的灯光和冰箱搞乱。我故意不去购买支持联网的冰箱,因为我有朋友是黑客,我可不想我每天早上醒来都会看到那些不雅图片。封住它,锁住它,隔离它。

目前物联网设备的恶意软件取决于默认密码和后门,所以只需要对你所使用的设备进行一些研究,并确保没有其他人可以默认访问。然后确保这些设备的管理接口受到防火墙或其他此类设备的良好保护。

你可以提一个可以在 SMB 和大型环境中使用的防火墙/UTM(OS 或应用程序)么?

我使用 pfSense,它是 BSD 的衍生产品。我很喜欢它。它有很多模块,实际上现在它有商业支持,这对于小企业来说这是非常棒的。对于更大的设备、更大的环境,这取决于你有哪些管理员。

我一直都是 CheckPoint 管理员,但是 Palo Alto 也越来越受欢迎了。这些设备与小型企业或家庭使用很不同。我在各种小型网络中都使用 pfSense。

云服务有什么内在问题么?

并没有云,那只不过是其他人的电脑而已。云服务存在内在的问题。只知道谁访问了你的数据,你在上面放了什么。要知道当你向 Amazon 或 Google 或 Microsoft 上传某些东西时,你将不再完全控制它,并且该数据的隐私是有问题的。

要获得 OSCP 你建议需要准备些什么?

我现在准备通过这个认证。我的整个团队是这样。阅读他们的材料。记住, OSCP 将成为令人反感的安全基准。你一切都要使用 Kali。如果不这样做 - 如果你决定不使用 Kali,请确保仿照 Kali 实例安装所有的工具。

这将是一个基于工具的重要认证。这是一个很好的方式。看看一些名为“渗透测试框架”的内容,因为这将为你提供一个很好的测试流程,他们的实验室似乎是很棒的。这与我家里的实验室非常相似。

随时免费观看完整的网络研讨会。查看这个系列的第一篇第二篇文章获得 5 个简单的贴士来让你的 Linux 机器安全。

Mike Guthrie 为能源部工作,负责 “Red Team” 的工作和渗透测试。


via: https://www.linux.com/news/webinar/2017/how-keep-hackers-out-your-linux-machine-part-3-your-questions-answered

作者:MIKE GUTHRIE 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

Anbox 以基于容器的方式,在像 Ubuntu 这样的常规的 GNU Linux 系统上启动一个完整的 Android 系统。

概述

Anbox 使用 Linux 命名空间(user、pid、uts、net、mount、ipc)来在容器中运行完整的 Android 系统,并在任何基于 GNU Linux 平台上提供 Android 应用。

容器内的 Android 无法直接访问任何硬件。所有硬件访问都通过主机上的 anbox 守护进程进行。我们重用基于 QEMU 的模拟器实现的 Android 中的 GL、ES 加速渲染。容器内的 Android 系统使用不同的管道与主机系统通信,并通过它发送所有硬件访问命令。

有关更多详细信息,请参考下文档:

Anbox 目前适合桌面使用,但也用在移动操作系统上,如 Ubuntu Touch、Sailfish OS 或 Lune OS。然而,由于 Android 程序的映射目前只针对桌面环境,因此还需要额外的工作来支持其他的用户界面。

Android 运行时环境带有一个基于 Android 开源项目镜像的最小自定义 Android 系统。所使用的镜像目前基于 Android 7.1.1。

安装

目前,安装过程包括一些添加额外组件到系统的步骤。包括:

  • 启用用于 binder 和 ashmen 的非发行的树外内核模块。
  • 使用 udev 规则为 /dev/binder 和 /dev/ashmem 设置正确权限。
  • 能够启动 Anbox 会话管理器作为用户会话的一个启动任务。

为了使这个过程尽可能简单,我们将必要的步骤绑定在一个 snap(见 https://snapcraft.io ) 中,称之为 “anbox-installer”。这个安装程序会执行所有必要的步骤。你可以在所有支持 snap 的系统运行下面的命令安装它。

$ snap install --classic anbox-installer

另外你可以通过下面的命令下载安装脚本。

$ wget https://raw.githubusercontent.com/anbox/anbox-installer/master/installer.sh -O anbox-installer

请注意,我们还不支持除所有 Linux 发行版。请查看下面的章节了解支持的发行版。

运行下面的命令进行安装。

$ anbox-installer

它会引导你完成安装过程。

注意: Anbox 目前处于 pre-alpha 开发状态。不要指望它具有生产环境你需要的所有功能。你肯定会遇到错误和崩溃。如果你遇到了,请不要犹豫并报告它们!

注意: Anbox snap 目前 完全没有约束,因此它只能从边缘渠道获取。正确的约束是我们想要在未来实现的,但由于 Anbox 的性质和复杂性,这不是一个简单的任务。

已支持的 Linux 发行版

目前我们官方支持下面的 Linux 发行版:

  • Ubuntu 16.04 (xenial)

未测试但可能支持的:

  • Ubuntu 14.04 (trusty)
  • Ubuntu 16.10 (yakkety)
  • Ubuntu 17.04 (zesty)

安装并运行 Android 程序

从源码构建

要构建 Anbox 运行时不需要特别了解什么,我们使用 cmake 作为构建系统。你的主机系统中应已有下面这些构建依赖:

  • libdbus
  • google-mock
  • google-test
  • libboost
  • libboost-filesystem
  • libboost-log
  • libboost-iostreams
  • libboost-program-options
  • libboost-system
  • libboost-test
  • libboost-thread
  • libcap
  • libdbus-cpp
  • mesa (libegl1, libgles2)
  • glib-2.0
  • libsdl2
  • libprotobuf
  • protobuf-compiler
  • lxc

在 Ubuntu 系统中你可以用下面的命令安装所有的依赖:

$ sudo apt install build-essential cmake cmake-data debhelper dbus \  
    google-mock libboost-dev libboost-filesystem-dev libboost-log-dev \  
    libboost-iostreams-dev libboost-program-options-dev libboost-system-dev \  
    libboost-test-dev libboost-thread-dev libcap-dev libdbus-1-dev \  
    libdbus-cpp-dev libegl1-mesa-dev libgles2-mesa-dev libglib2.0-dev \  
    libglm-dev libgtest-dev liblxc1 libproperties-cpp-dev libprotobuf-dev \  
    libsdl2-dev lxc-dev pkg-config protobuf-compiler

之后用下面的命令构建 Anbox:

$ mkdir build
$ cd build
$ cmake ..
$ make

一个简单的命令会将必要的二进制安装到你的系统中,如下。

$ make install

如果你想要构建 anbox snap,你可以按照下面的步骤:

$ mkdir android-images
$ cp /path/to/android.img android-images/android.img
$ snapcraft

结果会有一个 .snap 文件,你可以在支持 snap 的系统上安装。

$ snap install --dangerous --devmode anbox_1_amd64.snap

运行 Anbox

要从本地构建运行 Anbox ,你需要了解更多一点。请参考“运行时步骤”文档。

文档

在项目源代码的子目录下,你可以找到额外的关于 Anbox 的文档。

有兴趣可以看下:

报告 bug

如果你发现了一个 Anbox 问题,请提交 bug

取得联系

如果你想要与开发者联系,你可以在 FreeNode 中加入 #anbox 的 IRC 频道。

版权与许可

Anbox 重用了像 Android QEMU 模拟器这样的其他项目的代码。这些项目可在外部/带有许可声明的子目录中得到。

anbox 源码本身,如果没有在相关源码中声明其他的许可,默认是 GPLv3 许可。


via: https://github.com/anbox/anbox/blob/master/README.md

作者:Anbox 译者:geekpi 校对:jasminepeng

本文由 LCTT 原创编译,Linux中国 荣誉推出