2015年4月

无论你是在网站托管业务,还是在自己的VPS上运行几个网站,你总会有需要显示访客统计信息,例如前几的访客、访问请求的文件(无论动态或者静态)、所用的带宽、客户端的浏览器,和访问的来源网站,等等。

GoAccess 是一款用于Apache或者Nginx的命令行日志分析器和交互式查看器。使用这款工具,你不仅可以浏览到之前提及的相关数据,还可以通过分析网站服务器日志来进一步挖掘数据 - 而且这一切都是在一个终端窗口实时输出的。由于今天的大多数web服务器都使用Debian的衍生版或者基于RedHat的发行版来作为底层操作系统,所以本文中我告诉你如何在Debian和CentOS中安装和使用GoAccess。

在Linux系统安装GoAccess

在Debian,Ubuntu及其衍生版本,运行以下命令来安装GoAccess:

# aptitude install goaccess 

在CentOS中,你将需要使你的EPEL 仓库可用然后执行以下命令:

# yum install goaccess

在Fedora,同样使用yum命令:

# yum install goaccess 

如果你想从源码安装GoAccess来使用更多功能(例如 GeoIP 定位功能),需要在你的操作系统安装必需的依赖包,然后按以下步骤进行:

# wget http://tar.goaccess.io/goaccess-0.8.5.tar.gz   
# tar -xzvf goaccess-0.8.5.tar.gz
# cd goaccess-0.8.5/
# ./configure --enable-geoip
# make
# make install 

以上安装的版本是 0.8.5,但是你也可以在该软件的网站下载页确认是否是最新版本。

由于GoAccess不需要后续的配置,一旦安装你就可以马上使用。

运行 GoAccess

开始使用GoAccess,只需要对它指定你的Apache访问日志。

对于Debian及其衍生版本:

# goaccess -f /var/log/apache2/access.log

基于红帽的发行版:

# goaccess -f /var/log/httpd/access_log 

当你第一次启动GoAccess,你将会看到如下的屏幕中选择日期和日志格式。正如前面所述,你可以按空格键进行选择,并按F10确认。至于日期和日志格式,你可能需要参考Apache 文档来刷新你的记忆。

在这个例子中,选择常见日志格式(Common Log Format(CLF)):

然后按F10 确认。你将会从屏幕上看到统计数据。为了简洁起见,这里只显示了首部,也就是日志文件的摘要,如下图所示:

通过 GoAccess来浏览网站服务器统计数据

你可以按向下的箭头滚动页面,你会发现以下区域,它们是按请求排序的。这里提及的目录顺序可能会根据你的发行版或者你所选的安装方式(从源和库)不同而不同:

  1. 每天唯一访客(来自同样IP、同一日期和同一浏览器的请求被认为是是唯一访问)

  1. 请求的文件(网页URL)

  1. 请求的静态文件(例如,.png文件,.js文件等等)
  2. 来源的URLs(每一个URL请求的出处)
  3. HTTP 404 未找到的响应代码

  1. 操作系统
  2. 浏览器
  3. 主机地址(客户端IP地址)

  1. HTTP 状态代码

  1. 前几位的来源站点
  2. 来自谷歌搜索引擎的前几位的关键字

如果你想要检查已经存档的日志,你可以通过管道将它们发送给GoAccess,如下:

在Debian及其衍生版本:

# zcat -f /var/log/apache2/access.log* | goaccess 

在基于红帽的发行版:

# cat /var/log/httpd/access* | goaccess 

如果你需要上述部分的详细报告(1至11项),直接按下其序号再按O(大写o),就可以显示出你需要的详细视图。下面的图像显示5-O的输出(先按5,再按O)

如果要显示GeoIP位置信息,打开主机部分的详细视图,如前面所述,你将会看到正在请求你的服务器的客户端IP地址所在的位置。

如果你的系统还不是很忙碌,以上提及的章节将不会显示大量的信息,但是这种情形可以通过在你网站服务器越来越多的请求发生改变。

保存用于离线分析的报告

有时候你不想每次都实时去检查你的系统状态,可以保存一份在线的分析文件或打印出来。要生成一个HTML报告,只需要通过之前提到GoAccess命令,将输出来重定向到一个HTML文件即可。然后,用web浏览器来将这份报告打开即可。

# zcat -f /var/log/apache2/access.log* | goaccess > /var/www/webserverstats.html

一旦报告生成,你将需要点击展开的链接来显示每个类别详细的视图信息:

可以查看youtube视频:https://youtu.be/UVbLuaOpYdg

正如我们通过这篇文章讨论,GoAccess是一个非常有价值的工具,它能给系统管理员实时提供可视的HTTP 统计分析。虽然GoAccess的默认输出是标准输出,但是你也可以将他们保存到JSON,HTML或者CSV文件。这种转换可以让 GoAccess在监控和显示网站服务器的统计数据时更有用。


via: http://xmodulo.com/interactive-apache-web-server-log-analyzer-linux.html

作者:Gabriel Cánepa 译者:disylee 校对:wxy

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

这是关于文件列表命令的第二篇文章,继续探讨‘ls’命令的其他方面。该系列的第一篇文章受到了社区的高度关注,如果你错过了该系列的第一部分,可以访问以下地址:

这篇文章通过样例来很好地展现‘ls’命令的深入应用,我们加倍小心地来写这篇文章来保持其简洁可理解性,同时又能提供最全面的服务。

10 Interview Questions on ls Command

10 ‘ls’ 命令面试的问题

16. 假如你想要以长列表的形式列出目录中的内容,但是不打印文件创建者名称以及文件所属组。看看输出有何不同之处。

a. ls 命令在与‘-l’选项一起使用时会将文件以长列表格式输出。

# ls -l

List Files in- Long List Format

以长格式列出文件

b. ls 命令在与‘-l’和‘--author’一起使用时,会将文件以长列表格式输出并带有文件创建者的名称信息。

# ls -l --author

List Files By Author

列出文件的创建者

c. ls 命令在与‘-g’选项 一起将会列出文件名但是不带属主名称。

# ls -g

List Files Without Printing Owner Name

列出文件但不列出属主

d. ls 命令在与'-G'和‘-l’选项一起将会使用长列表格式列出文件名称但是不带文件所属组名称。

# ls -Gl

List Files Without Printing Group

列出文件但是不列出所属组

17. 使用易读格式打印出当前目录中的文件以及文件夹的大小,你会如何做?

这里我们需要使用'-h'选项(人类可阅读的、易读的)同‘-l’或‘-s’选项与ls命令一起使用来得到想要的输出。

# ls -hl

List Files in Human Readable Format

以易读格式的长列表列出文件

# ls -hs

List File Sizes in Long List Format

以易读格式的短列表列出文件

注意: ‘-h’选项使用1024(计算机中的标准)的幂,文件或文件夹的大小分别以K,M和G作为输出单位。

18. 既然‘-h’选项是使用1024的幂作为标准来输出大小,那么ls命令是否还支持其他的幂值呢?

存在一个选项 ‘--si’与选项‘-h’相似,不同之处在于前者以使用1000的幂,后者使用1024的幂。

# ls --si

所以'--si'也可以与‘-l’选项一起使用来按照1000的幂来输出文件夹的大小,并且以长列表格式显示。

# ls --si -l

(LCTT 译注:此处原文参数有误,附图也不对,因此删除之。--si 参数是双连线参数,而且有的版本的 ls 并不支持该参数)

19. 假如要你使用逗号‘,’作为分隔符来打印一个目录中的内容,可以吗? 对于长列表形式也可行吗?

当然!linux的ls命令当与其选项‘-m’一起使用时可以在打印目录内容时以逗号‘,’分割。由于逗号分割的内容是水平填充的,ls命令不能在垂直列出内容时使用逗号来分割内容。

# ls -m

Print Contents of Directory by Comma

以逗号分隔显示内容

当使用长列表格式时,‘-m’选项就没有什么效果了。

# ls -ml

Listing Content Horizontally

长列表不能使用逗号分隔列表

20. 有办法将目录的内容逆序打印出来吗?

可以!上面的情形可以轻松地通过'-r'选项搞定,该选项将输出顺序倒置。这个选项也可以与‘-l’选项一起使用。

# ls -r

List Content in Reverse Order

逆序列出

# ls -rl

Long List Content in Reverse Order

逆序长列表

21. 如果你被分配一个任务,来递归地打印各个子目录,你会如何应付?注意,只针对子目录而不是文件哦。

小意思!使用“-R”选项就可以轻轻松松拿下,它也可以更进一步地与其他选项如‘-l’和‘-m’选项等组合使用。

# ls -R

Print Sub Directories in Recursively

递归列出子目录

22. 如何按照文件大小对其进行排序?

linux命令行选项'-S'赋予了ls命令这个超能力。按照文件大小从大到小的顺序排序:

# ls -S

Sort Files with ls Command 按文件大小排序

按照文件大小从小到大的顺序排序。

# ls -Sr

Sort Files in Descending Order

从小到大的排序

23. 按照一行一个文件列出目录中的内容,并且不带额外信息的方式

选项‘-1’在此可以解决这个问题,使用‘-1’选项来使用ls命令可以将目录中的内容按照一行一个文件并且不带额外信息的方式进行输出。

# ls -1

List Files Without Information

不带其他信息,一行一个列出文件

24. 现在委派给你一个任务,你必须将目录中的内容输出到终端而且需要使用双引号引起来,你会如何做?

有一个选项‘-Q’会将ls命令的输出内容用双引号引起来。

# ls -Q

Print Files with Double Quotes

输出的文件名用引号引起来

25. 想象一下你正在与一个包含有很多文件和文件夹的目录打交道,你需要使目录名显示在文件名之前,你如何做?

# ls --group-directories-first

Print Directories First

目录优先显示

先点到为止,我们会马上提供该系列文章的下一部分。别换频道,关注我们。 另外别忘了在下面的评论中提出你们宝贵的反馈信息,喜欢就分享,帮助我们得到更好的传播吧!


via: http://www.tecmint.com/ls-interview-questions/

作者:Ravi Saive 译者:theo-l 校对:wxy

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

12. 安装 Apache Tomcat

Tomcat 是由 Apache 设计的用来运行 Java HTTP web 服务器的 servlet 容器。按照下面的方法安装 tomcat,但需要指出的是安装 tomcat 之前必须先安装 Java。

# yum install tomcat

安装 Apache Tomcat

安装 Apache Tomcat

安装完 tomcat 之后,启动 tomcat 服务。

# systemctl start tomcat

查看 tomcat 版本。

# /usr/sbin/tomcat version

查看 tomcat 版本

查看 tomcat 版本

允许 tomcat 服务和默认端口(8080) 通过防火墙并重新加载设置。

# firewall-cmd –zone=public –add-port=8080/tcp --permanent
# firewall-cmd –reload

现在该保护 tomcat 服务器了,添加一个用于访问和管理的用户和密码。我们需要编辑文件 ‘/etc/tomcat/tomcat-users.xml’。查看类似下面的部分:

<tomcat-users>
....
</tomcat-users>


 <role rolename="manager-gui"/>
 <role rolename="manager-script"/>
 <role rolename="manager-jmx"/>
 <role rolename="manager-status"/>
 <role rolename="admin-gui"/>
 <role rolename="admin-script"/>
 <user username="tecmint" password="tecmint" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script"/>
</tomcat-users>

保护 Tomcat

保护 Tomcat

我们在这里添加用户 “tecmint” 到 tomcat 的管理员/管理组中,使用 “tecmint” 作为密码。先停止再启动 tomcat 服务以使更改生效,并添加 tomcat 服务到随系统启动。

# systemctl stop tomcat
# systemctl start tomcat
# systemctl enable tomcat.service

请阅读: 在 RHEL/CentOS 7.0/6.x 中安装和配置 Apache Tomcat 8.0.9

13. 安装 Nmap 监视开放端口

Nmap 网络映射器用来分析网络,通过运行它可以发现网络的映射关系。nmap 并没有默认安装,你需要从库中安装它。

# yum install nmap

安装 Nmap 监视工具

安装 Nmap 监视工具

列出主机中所有的开放端口以及对应使用它们的服务。

# namp 127.0.01

!监视开放端口](http://www.tecmint.com/wp-content/uploads/2015/04/Monitor-Open-Ports.jpeg)

监视开放端口

你也可以使用 firewall-cmd 列出所有端口,但我发现 nmap 更有用。

# firewall-cmd –list-ports

在防火墙中检查开放端口

在防火墙中检查开放端口

请阅读: Nmap 监视开放端口的 29 个有用命令

14. 配置 FirewallD

firewalld 是动态管理服务器的防火墙服务。在 CentOS 7 中 Firewalld 移除了 iptables 服务。在红帽企业版 Linux 和它的衍生版中默认安装了 Firewalld。如果有 iptables 的话为了使每个更改生效需要清空所有旧的规则然后创建新规则。

然而用firewalld,不需要清空并重新创建新规则就可以实现更改生效。

检查 Firewalld 是否运行。

# systemctl status firewalld
或
# firewall-cmd –state

检查 Firewalld 状态

检查 Firewalld 状态

获取所有的区域列表。

# firewall-cmd --get-zones

检查 Firewalld 区域

检查 Firewalld 区域

在切换之前先获取区域的详细信息。

# firewall-cmd --zone=work --list-all

检查区域详情

检查区域详情

获取默认区域。

# firewall-cmd --get-default-zone

Firewalld 默认区域

Firewalld 默认区域

切换到另一个区域,比如 ‘work’。

# firewall-cmd --set-default-zone=work

切换 Firewalld 区域

切换 Firewalld 区域

列出区域中的所有服务。

# firewall-cmd --list-services

列出 Firewalld 区域的服务

列出 Firewalld 区域的服务

添加临时服务,比如 http,然后重载 firewalld。

# firewall-cmd  --add-service=http
# firewall-cmd –reload

添加临时 http 服务

添加临时 http 服务

添加永久服务,比如 http,然后重载 firewalld。

# firewall-cmd --add-service=http --permanent
# firewall-cmd --reload

添加永久 http 服务

添加永久 http 服务

删除临时服务,比如 http。

# firewall-cmd  --remove-service=http
# firewall-cmd --reload

删除临时 Firewalld 服务

删除临时 Firewalld 服务

删除永久服务,比如 http

# firewall-cmd --zone=work --remove-service=http --permanent
# firewall-cmd --reload

删除永久服务

删除永久服务

允许一个临时端口(比如 331)。

# firewall-cmd --add-port=331/tcp
# firewall-cmd --reload

打开临时 Firewalld 端口

打开临时端口

允许一个永久端口(比如 331)。

# firewall-cmd --add-port=331/tcp --permanent
# firewall-cmd --reload

打开永久 Firewalld 端口

打开永久端口

阻塞/移除临时端口(比如 331)。

# firewall-cmd --remove-port=331/tcp
# firewall-cmd --reload

移除 Firewalld 临时端口

移除临时端口

阻塞/移除永久端口(比如 331)。

# firewall-cmd --remove-port=331/tcp --permanent
# firewall-cmd --reload

移除 Firewalld 永久端口

移除永久端口

停用 firewalld。

# systemctl stop firewalld
# systemctl disable firewalld
# firewall-cmd --state

在 CentOS 7 中停用 Firewalld

停用 Firewalld 服务

启用 firewalld。

# systemctl enable firewalld
# systemctl start firewalld
# firewall-cmd --state

在 CentOS 7 中取消 Firewalld

启用 Firewalld

15. 安装 Wget

Wget 是从 web 服务器获取(下载)内容的命令行工具。它是你使用 wget 命令获取 web 内容或下载任何文件必须要有的重要工具。

# yum install wget

安装 Wget 工具

安装 Wget 工具

关于在终端中如何使用 wget 命令下载文件的方法和实际例子,请阅读10 个 Wget 命令例子

16. 安装 Telnet 客户端

Telnet 是通过 TCP/IP 允许用户登录到相同网络上的另一台计算机的网络协议。和远程计算机的连接建立后,它就成为了一个允许你在自己的计算机上用所有提供给你的权限和远程主机交互的虚拟终端。(LCTT 译注:除非你真的需要,不要安装 telnet 服务,也不要用 telnet 客户端连接另外一个 telnet 服务,因为 telnet 是明文传输的。不过如下用 telnet 客户端检测另外一个服务的端口是否工作是常用的操作。)

Telnet 对于检查远程计算机或主机的监听端口也非常有用。

# yum install telnet
# telnet google.com 80

Telnet 端口检查

Telnet 端口检查


via: http://www.tecmint.com/things-to-do-after-minimal-rhel-centos-7-installation/3/

作者:Avishek Kumar 译者:ictlyh 校对:校对者ID

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

Unix或类Unix系统中的“文件列表”命令“ls”是最基础并且使用的最广泛的命令行中工具之一。它是一个POSIX兼容工具,在GNU基本工具集以及BSD各种变体上都可以使用。“ls”命令可以结合大量的选项来达到想要的结果。

这篇文章的目的在于通过相关的样例来深入讨论文件列表命令。

15 ls Command Questions

15个“ls”命令问题。

1. 如何列出目录中的文件?

答:linux文件列表命令“ls”就是干这个的。

# ls

List Files

列出文件

同时,我们也可以使用“echo(回显)”命令与一个通配符(*)参数来雷锤目录中的所有文件。

# echo *

List All Files

列出所有的文件。

2. 如何只使用echo命令来只列出所有目录?

# echo */

List All Directories

列出所有的目录

3. 怎样列出一个目录中的所有文件, 包括隐藏的以“.”开头的文件?

答:我们需要将“-a”选项与“ls”命令一起使用。

# ls -a

List All Hidden Files

列出所有的隐藏文件。

4. 如何列出目录中除了 “当前目录 .”和“父目录 ..”之外的所有文件,包括隐藏文件?

答: 我们需要将“-A”选项与“ls”命令一起使用

# ls -A

Do Not List Implied

别列出指代当前目录和父目录的文件

5. 如何使用长格式打印出当前目录内容?

答: 我们需要将“-l”选项与“ls”命令一起使用。

# ls -l

List Files Long

列出文件的长格式。

上面的样例中,其输出结果看起来向下面这样。

drwxr-xr-x  5 avi tecmint      4096 Sep 30 11:31 Binary

上面的drwxr-xr-x 是文件的权限,分别代表了文件所有者,所属组以及“整个世界”。 所有者具有读(r),写(w)以及执行(x)等权限。 该文件所属组具有读(r)和执行(x)但是没有写的权限,整个世界的其他可以访问到该文件的人也具有相同权限。

  • 开头的‘d’意味着这是一个目录
  • 数字'5'表示链接数为5
  • 文件 Binary归属于用户 “avi”以及用户组 "tecmint"
  • Sep 30 11:31 表示文件最后一次的访问日期与时间。

6. 假如让你来将目录中的内容以长格式列表打印,并且显示出隐藏的“点文件”,你会如何实现?

答: 我们需要同时将"-a"和"-l"选项与“ls”命令一起使用(LCTT 译注:单字符选项可以合并写)。

# ls -la

Print Content of Directory

打印目录内容

此外,如果我们不想列出“当前目录”和"父目录",可以将“-A”和“-l”选项同“ls”命令一起使用。

# ls -lA

7. 如何找到每个文件的创建者?

答: 我们需要结合 “--author”和 "-l"选项来打印出每个文件的创建者。

# ls --author -l

List Author Files

列出文件创建者。

8. 如何对用转义字符打印出非显示字符?

答:我们只需要使用“-b”选项来对非显示字符进行转义打印

# ls -b

Print Escape Character

9. 用指定特定的单位格式来列出文件和目录的大小,你会如何实现?

答: 在此可以同时使用选项“-block-size=scale”和“-l”,但是我们需要用特定的单位如M,K等来替换‘scale’参数。

# ls --block-size=M -l
# ls --block-size=K -l

List File Scale Format

列出文件大小单位格式。

10. 列出目录中的文件,但是不显示备份文件,即那些文件名以‘~’结尾的文件

答: 选项‘-B’赶来救驾。

# ls -B

List File Without Backup

列出非备份文件

11. 将目录中的所有文件按照名称进行排序,并显示其最后修改时间信息?

答: 为了实现这个需求,我们需要同时将“-c”和"-l"选项与命令一起使用。

# ls -cl

Sort Files

文件排序

12. 将目录中的文件按照修改时间进行排序,并显示相关联的信息。

答: 我们需要同时使用3个选项:'-l','-t','-c' 来对文件使用修改时间排序,最新的修改时间排在最前。

# ls -ltc

Sort Files by Modification

按照修改时间对文件排序。

13. 如何控制‘ls’命令的输出颜色的有无?

答: 需要使用选项‘--color=parameter’,参数具有三种不同值,“auto(自动)”,“always(一直)”,“never(无色)”。

# ls --color=never
# ls --color=auto
# ls --color=always

ls Colorful Output

ls的输出颜色

14. 假如只需要列出目录本身,而不是目录的内容,你会如何做?

答:在此“-d”选项就会显得很顺手。

# ls -d

List Directory Entries

列出目录本身

15. 为长格式列表命令"ls -l"创建一个别名“ll”,并将其结果输出到一个文件而不是标准输出中。

答:在上述的这个场景中,我们需要将别名添加到.bashrc文件中,然后使用重定向操作符将输出写入到文件而不是标准输出中。我们将会使用编辑器nano。

# ls -a
# nano .bashrc
# ll >> ll.txt
# nano ll.txt

Create Alias for ls command

为ls命令创建别名。

先到此为止,别忘了在下面的评论中提出你们的宝贵意见,我会再次带着另外的有趣的文章在此闪亮登场。

参考阅读:


via: http://www.tecmint.com/ls-command-interview-questions/

作者:Avishek Kumar 译者:theo-l 校对:校对者ID

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

Simon Schneegans 高兴地宣布他的 GNOME-Pie 0.6.1 已可供下载使用。GNOME-Pie 是一个可以在包括 GNOME 和 Unity 在内的多种桌面环境中作为应用启动器的小工具。

GNOME-Pie

GNOME-Pie 0.6.1 看起来是个主要版本更新,引入了许多新特性,比如支持半个或四分之一圆,可选择每个启动器想要的形状,也可以自动根据位置调整形状(圆形,半个或四分之一圆),以及多彩的动态图标。

此外,软件现在还适配若干类dock应用,包括elementary OS 的 Plank,Ubuntu 的 Unity,以及通用的 Docky。一些已有的 GNOME-Pie 主题也已更新,还引入了全新的为半圆启动器布局设计的主题 Simple。

“Gnome-Pie 新版本已发布,实际上已经发布了两个版本:0.6.0和之后的0.6.1,修复了issue #73,”Simon Schneegans 在发布声明上说道,“新版本修复了许多 bug,还带来了许多新特性!”

现在就可在Ubuntu上安装GNOME-Pie

Ubuntu 及其衍生版用户现在就可通过 Simon Schneegans 的PPA源安装 GNOME-Pie。只需打开终端,运行下列命令即可。GNOME-Pie 适用于 Ubuntu 14.04 LTS,14.10和15.04。

sudo add-apt-repository ppa:simonschneegans/testing
sudo apt-get update
sudo apt-get install gnome-pie

其他 GNU/Linux 发行版用户可以从官网下载 GNOME-Pie 0.6.1 的源代码,或者近期在系统的软件源中搜索新版GNOME-Pie。

GNOME-Pie

GNOME-Pie

GNOME-Pie

GNOME-Pie

GNOME-Pie

GNOME-Pie

GNOME-Pie

GNOME-Pie


via: http://news.softpedia.com/news/GNOME-Pie-0-6-Application-Launcher-Released-with-Many-New-Features-Video-478914.shtml

译者:alim0x 校对:wxy

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

7. 安装 PHP

PHP 是用于 web 基础服务的服务器端脚本语言。它也经常被用作通用编程语言。在最小化安装的 CentOS 中安装 PHP:

# yum install php

安装完 php 之后,确认重启 Apache 服务以便在 Web 浏览器中渲染 PHP。

# systemctl restart httpd.service

下一步,通过在 Apache 文档根目录下创建下面的 php 脚本验证 PHP。

# echo -e "<?php\nphpinfo();\n?>"  > /var/www/html/phpinfo.php

现在在 Linux 命令行中查看我们刚才创建的 PHP 文件(phpinfo.php)。

# php /var/www/html/phpinfo.php
或者
# links http://127.0.0.1/phpinfo.php

验证 PHP

验证 PHP

8. 安装 MariaDB 数据库

MariaDB 是 MySQL 的一个分支。RHEL 以及它的衍生版已经从 MySQL 迁移到 MariaDB。这是一个主流的数据库管理系统,也是一个你必须拥有的工具。不管你在配置怎样的服务器,或迟或早你都会需要它。在最小化安装的 CentOS 上安装 MariaDB,如下所示:

# yum install mariadb-server mariadb

安装 MariaDB 数据库

安装 MariaDB 数据库

启动 MariaDB 并配置它开机时自动启动。

# systemctl start mariadb.service
# systemctl enable mariadb.service

允许 mysql(mariadb) 服务通过防火墙(LCTT 译注:如果你的 MariaDB 只用在本机,则务必不要设置防火墙允许通过,使用 UNIX Socket 连接你的数据库;如果需要在别的服务器上连接数据库,则尽量使用内部网络,而不要将数据库服务暴露在公开的互联网上。)

# firewall-cmd –add-service=mysql

现在是时候确保 MariaDB 服务器安全了(LCTT 译注:这个步骤主要是设置 mysql 管理密码)。

# /usr/bin/mysql_secure_installation

保护 MariaDB 数据库

保护 MariaDB 数据库

请阅读:

9. 安装和配置 SSH 服务器

SSH 即 Secure Shell,是 Linux 远程管理的默认协议。 SSH 是随最小化 CentOS 服务器中安装运行的最重要的软件之一。

检查当前已安装的 SSH 版本。

# SSH -V

检查 SSH 版本

检查 SSH 版本

使用更安全的 SSH 协议,而不是默认的协议,并更改端口号进一步加强安全。编辑 SSH 的配置文件 ‘/etc/ssh/ssh\_config’。

去掉下面行的注释或者从协议行中删除 1,然后行看起来像这样(LCTT 译注: SSH v1 是过期废弃的不安全协议):

# Protocol 2,1 (原来)
Protocol 2 (现在)

这个改变强制 SSH 使用 协议 2,它被认为比协议 1 更安全,同时也确保在配置中更改端口号 22 为其它。

保护 SSH 登录

保护 SSH 登录

取消 SSH 中的‘root login’, 只允许通过普通用户账号登录后才能使用 su 切换到 root,以进一步加强安全。请打开并编辑配置文件 ‘/etc/ssh/sshd\_config’ 并更改 PermitRootLogin yes 为 PermitRootLogin no。

# PermitRootLogin yes (原来) 
PermitRootLogin no (现在)

取消 SSH Root 登录

取消 SSH Root 直接登录

最后,重启 SSH 服务启用更改。

# systemctl restart sshd.service

请查看:

10. 安装 GCC (GNU 编译器集)

GCC 即 GNU 编译器集,是一个 GNU 项目开发的支持多种编程语言的编译系统(LCTT 译注:在你需要自己编译构建软件时需要它)。在最小化安装的 CentOS 没有默认安装。运行下面的命令安装 gcc 编译器。

# yum install gcc

在 CentOS 上安装 GCC

在 CentOS 上安装 GCC

检查安装的 gcc 版本。

# gcc --version

检查 GCC 版本

检查 GCC 版本

11. 安装 Java

Java是一种通用的基于类的,面向对象的编程语言。在最小化 CentOS 服务器中没有默认安装(LCTT 译注:如果你没有任何 Java 应用,可以不用装它)。按照下面命令从库中安装 Java。

# yum install java

在 CentOS 上安装 Java

安装 Java

检查安装的 Java 版本。

# java -version

检查 Java 版本

检查 Java 版本


via: http://www.tecmint.com/things-to-do-after-minimal-rhel-centos-7-installation/2/

作者:Avishek Kumar 译者:ictlyh 校对:wxy

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