分类 分享 下的文章

通常谈及 Linux 上的应用程序时,我们有很多选择,但有时候选择的余地却很小。

有一些读者要我们做一个合宜的图像管理软件列表,来代替 Linux 上已被弃用的 Picasa 应用。其实 Linux 平台上还是有很多很好的图像管理软件的,你可以根据你图片库的大小选择合适的应用。

这个列表和我们先前的 最佳图像程序应用 有些差别,上次我们介绍了图像编辑软件,绘图软件等,而这次的介绍主要集中在图像管理软件上。

好,下面我们开始介绍。我会详细说明在 Ubuntu 及其衍生版下的安装命令,我们只需要打开终端运行这些命令。

gThumb

gThumb 图像编辑器

gThumb 是在 GNOME 桌面环境下的一个轻量级的图像管理应用,它涵盖了基本图像管理功能,比如编辑图片以及更加高级的操作等,gThumb 主要功能如下:

  • 图片查看:支持所有主流的图片格式(包括 gif)和元数据(EXIF、 XMP 等)。
  • 图片浏览:所有基础的浏览操作(缩略图、移动、复制、删除等)以及书签支持。
  • 图片管理:使用标签、目录和库来组织图片。从数码相机导入图片,集成了网络相册(Picasa,Flickr,Facebook等)。
  • 图片编辑:基本图像编辑操作、滤镜、格式转换等。

更多功能请参考官方 gThumb 功能 列表。如果你使用的是 GNOME 或者基于 GNOME 的桌面环境(如 MATE),那么你一定要试用一下。

gThumb 安装

sudo apt-get install gthumb

digiKam

digiKam

digiKam 主要为 KDE 而设计,在其他桌面环境下也可以使用。它有很多很好的图像界面功能,主要功能如下所示:

  • 图片管理:相册、子相册、标签、评论、元数据、排序支持。
  • 图片导入:支持从数码相机、USB设备、网络相册(包括 Picasa 和 Facebook)导入,以及另外一些功能。
  • 图片输出:支持输出至很多网络在线平台,以及格式转换。
  • 图片编辑:支持很多图像编辑的操作。

毫无疑问,digiKam 如果不是最好的图像管理软件,也是之一。

digiKam 安装

sudo apt-get install digikam

Shotwell

Shotwell

Shotwell 图像管理也是为 GNOME 桌面环境设计,虽然功能不及 gThumb 多,但满足了基本需求。主要功能如下:

  • 从磁盘或数码相机导入图片。
  • 事件、标签和基于文件夹的图片管理方式。
  • 基本图片编辑功能和格式转换。
  • 支持上传至网络平台(Facebook,Flickr,Tumblr 等)。

如果你想要一款功能相对简单的应用,你可以尝试一下这个。

Shotwell 安装

sudo apt-get install shotwell

KPhotoAlbum

KPhotoAlbum

KPhotoAlbum 是一款在 KDE 桌面环境下的图像管理应用。它有一些独特的功能:分类和基于时间浏览。你可以基于人物、地点、时间分类;另外在用户图形界面底部会显示时间栏。

KPhotoAlbum 有很多图像管理和编辑功能,主要功能包括:

  • 高级图片操作(分类、子分类、标签、元数据、注释等等)。
  • 图片导入导出功能(包括主流图片分享平台)。
  • 众多编辑功能(包括批量处理)。

这些高级的功能有一些缺点,就是用户大多需要手工操作。但如果你是 KDE 爱好者,这是个好的选择。它完美适用 KDE,但是你也可以在非 KDE 桌面环境下使用 KPhotoAlbum。

KPhotoAlbum 安装

sudo apt-get install kphotoalbum

Darktable

Darktable

Darktable 与其说是图像管理工具,不如说是图像编辑软件。Darktable 有良好的用户图形界面,对桌面环境没有特殊的要求,这也不会影响到它的图像编辑功能。它的基本功能如下:

  • 基本图片管理。
  • 众多高级的图片编辑功能。
  • 支持导出至 Picasa 和 Flickr 和格式转换。

如果你喜欢照片编辑和润色,Darktable 是个好的选择。

推荐阅读:怎样在 Ubuntu 下通过 PPA 安装 Darktable 2.0

Darktable 安装

sudo add-apt-repository ppa:pmjdebruijn/darktable-release
sudo apt-get update
sudo apt-get install darktable

其它

如果你想要功能简单的应用,比如从便携设备(相机、手机、便携设备等)中导入照片并存入磁盘,毫无疑问该使用 Rapid Photo Downloader,它很适合从便携设备中导入和备份图片,而且安装配置过程简单。

在 Ubuntu 上安装 Rapid Photo Downloade,打开终端输入命令:

sudo apt-get install rapid-photo-downloader

如果你想尝试更多的选择:

  • GNOME Photos (GNOME 桌面环境下的图像查看器)
  • Gwenview (KDE 桌面环境下的图像查看器)
  • Picty (开源图像管理器)

那么,你正在使用,或者打算使用其中一款应用吗?在 Ubuntu 或其它 Linux 上你有其它更好的推荐吗?你有最喜欢的 Linux 图像管理软件吗?分享你的观点给我们。


via: http://itsfoss.com/linux-photo-management-software/

作者:Munif Tanjim 译者:sarishinohara 校对:wxy

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

生活充满了bug。

无论怎样小心计划,无论花多少时间去设计,在执行阶段实际执行时,任何工程都会有未知的问题。也无妨。也许对于任何一个组织的最佳弹性衡量不是他们如何一切都按计划运行地处理事情,而是,当出现磕磕碰碰时他们如何驾驭。

对任何一个项目管理流程来说,特别是在软件开发领域,都需要一个关键工具——问题跟踪管理系统。其基本功能很简单:可以对bug进行查看、追踪,并以协作的方式解决bug,有了它,我们更容易跟随整个过程的进展。除了基本功能,还有很多专注于满足特定需求的选项及功能,使用场景不仅限于软件开发。你可能已经熟悉某些托管版本的工具,像 GitHub Issues或者Launchpad,其中一些工具已经有了自己的开源社区。

接下来,这四个bug问题跟踪管理软件的极佳备选,全部开源、易于下载,自己就可以部署。先说好,我们可能没有办法在这里列出每一个问题跟踪工具;相反,我们列出这四个,原因基于是其丰富的功能和项目背后的社区规模。当然,肯定还有其他类似软件,如果你喜欢的没有列在这里,如果你有一个好的理由,一定要让我们知道,在下面的评论中使它脱颖而出吧。

Redmine

Redmine 是一个很流行的追踪管理工具,基于Ruby on Rails构建,可以追溯到2006年。很多方面类似于Trac(另一个我们的最爱),Redmine可以管理多个项目,整合了多种版本控制系统。除了基本问题追踪,Redmine也提供论坛,wiki,时间跟踪工具,同时,它还具有生成 甘特图表 Gantt charts 和日历的能力,用来跟踪项目的进展。

Redmine的设置相当灵活,支持多种数据库后端和几十种语言,还是可定制的,可以向 问题 issue 、用户、工程等添加自定义字段。通过社区创建的插件和主题它可以进一步定制。

如果你想试一试,一个在线演示可提供使用。Redmine采用GPL版本2许可证;开源代码可以在工程的svn仓库或在GitHub镜像上找到。

Bugzilla

Bugzilla是另一个流行的具备问题跟踪能力的开发工具。从名字您可能已经猜到了,Bugzilla最初是Mozilla基金会创建的,用来跟踪当时称为网景通信套件中的bug。为了更好的可读性,它从原来的Tcl移植到Perl,Bugzilla是一个比较老,但却广泛采用的问题跟踪系统,它被用在许多著名的开源项目如GNOME、KDE,以及Linux内核本身。

从通知到重复bug检测再到搜索共享,Bugzilla拥有许多高级工具,是一个功能更丰富的选项。Bugzilla拥有一套高级搜索系统以及全面的报表工具,具有生成图表和自动化按计划生成报告的能力。像Redmine一样,Bugzilla是可扩展和可定制的,除了字段本身,还能针对bug创建自定义工作流。它也支持多种后端数据库,和自带的多语言支持。

Bugzilla采用Mozilla公共许可证,你可以读取他们的未来路线图还有在官网尝试一个示例服务

Trac

Trac自称是基于web的极简主义软件工程管理软件,这里请不要混淆极简主义与缺乏功能。

由python编写的Trac,将其漏洞跟踪能力与它的wiki系统和版本控制系统轻度整合。项目管理能力突出,如生成里程碑和路线图,一个可定制的报表系统,大事记,支持多资源库,内置的垃圾邮件过滤,还可以使用很多通用语言。如其他我们已经看到的漏洞追踪软件,有很多插件可进一步扩展其基本特性。

Trac以改进的BSD许可协议开源,虽然更老的版本发布在GPL下。你可以在一个自托管仓库预览Trac的源码或者查看他们的路线图对未来的规划。

Mantis

Mantis是这次合集中我们将看到的最后一个工具,基于PHP,且有16年历史。作为另一个支持多种不同版本控制系统和事件驱动通知系统的bug跟踪管理软件,Mantis有一个与其他工具类似的功能设置。虽然它不本身包含wiki,但它整合了很多流行的wiki平台且本地化到多种语言。

Mantis使用GPL版本2开源许可证书;你可以在GitHub浏览他的源代码或查看自托管路线图对未来的规划。一个示例,你可以查看他们的内部漏洞跟踪

正如我们指出的,这四个不是唯一的选项。想要探索更多?Apache BloodhoundFossilThe Bug Genie,还有很多可替换品都有自己的忠实追随者,每个都有不同的优点和缺点。另外,一些工具在我们项目管理摘要有问题跟踪功能。所以,哪个是你首选的跟踪和碾压bug的工具?


via: https://opensource.com/business/16/2/top-issue-support-and-bug-tracking-tools

作者:Jason Baker 译者:wyangsun 校对:Mr小眼儿

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

TypeScript 是一种由微软开发的自由开源的编程语言。它是 JavaScript 的一个超集,而且实质上向这个语言添加了可选的静态类型和基于类的面向对象编程等等。

如果你使用 TypeScript 开发项目,那么现在有个新的软件可以帮助到你。

ALM 宣称它是“TypeScript 的下一代 IDE”,这款专为 TypeScript 设计的编辑器将会使得编程更快捷,JavaScript 开发者可以首先使用类似的 TypeScript 进行开发,然后再编译成浏览器所支持的 JavaScript 语言。

ALM 安装很简单

要运行 ALM 这个开发工具,开发者只需要做两件事:一个可以工作的 Node.js 5 及其以上版本,一个 Google Chrome 浏览器。不支持 Firefox、 Vivaldi 和 Edge 等等其它浏览器。

然后只需要如下命令即可:

npm install alm -g

然后在终端运行 alm 即可。

要在 ALM 中打开文件,只需要切换到你的项目文件夹,然后运行 alm .alm -o . 即可。第一个命令会在浏览器中打开一个可以访问你的项目的索引文件的 URL,然后就可以编辑了。第二个命令会自动在你的默认浏览器(chrome)中打开该 URL。

有许多非常酷的功能

ALM 的开发者 Basarat Ali Syed 给这个 IDE 中打包了很多功能,包括为 TypeScript 定制的格式高亮方案,支持选项卡、多面板、go-to 跳转功能、查找替换功能、实时文件格式化和实时项目格式化。

将来, ALM IDE 也会与内建的 AST 查看器、依赖查看器、命令搜索功能、光标历史、多监视器支持、错误面板、支持 错误提示 errors on hover 、集成 Git、自动 TypeScript 构建和编译、实时预览 TypeScript 所输出的 JavaScript 。

你可以看看 Syed 放到文档站的动画 Gif:

 title=

你可以在 GitHub 上找到该项目,别忘记了 star 它!

boxes 命令不仅是一个文本过滤器,同时是一个很少人知道的有趣工具,它可以在输入的文本或者代码周围框上各种ASCII 艺术画。你可以用它快速创建邮件签名,或者在各种编程语言中留下评论块。这个命令可以在 vim 文本编辑器中使用,但是也可以在各种支持过滤器的文本编辑器中使用,同时也可以在命令行中单独使用。

任务: 安装 boxes

使用 apt-get 命令 在 Debian / Ubuntu Linux 中安装 boxes:

$ sudo apt-get install boxes

输出示例:

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
  boxes
0 upgraded, 1 newly installed, 0 to remove and 6 not upgraded.
Need to get 0 B/59.8 kB of archives.
After this operation, 205 kB of additional disk space will be used.
Selecting previously deselected package boxes.
(Reading database ... 224284 files and directories currently installed.)
Unpacking boxes (from .../boxes_1.0.1a-2.3_amd64.deb) ...
Processing triggers for man-db ...
Setting up boxes (1.0.1a-2.3) ...

RHEL / CentOS / Fedora Linux 用户, 使用 yum 命令来安装 boxes,(请先启用 EPEL 软件仓库):

# yum install boxes

输出示例:

Loaded plugins: rhnplugin
Setting up Install Process
Resolving Dependencies
There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them.
--> Running transaction check
---> Package boxes.x86_64 0:1.1-8.el6 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
==========================================================================
 Package        Arch            Version               Repository     Size
==========================================================================
Installing:
 boxes          x86_64          1.1-8.el6             epel           64 k
Transaction Summary
==========================================================================
Install       1 Package(s)
Total download size: 64 k
Installed size: 151 k
Is this ok [y/N]: y
Downloading Packages:
boxes-1.1-8.el6.x86_64.rpm                         |  64 kB     00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : boxes-1.1-8.el6.x86_64                                 1/1
Installed:
  boxes.x86_64 0:1.1-8.el6
Complete!

FreeBSD 用户可以按如下使用:

cd /usr/ports/misc/boxes/ && make install clean

或者,使用 pkg\_add 命令来增加包:

# pkg_add -r boxes

在一些给定文本周围画出任何种类的包围框

输入下列命令:

echo "This is a test" | boxes

或者,指定要使用的图案的名字:

echo -e "\n\tVivek Gite\n\[email protected]\n\twww.cyberciti.biz" | boxes -d dog

输出示例 :

Unix / Linux: Boxes Command To Draw Various Designs

*图01: Unix / Linux: Boxes 命令来画出各式各样的图案 *

怎么样输出所有的图案

语法如下:

boxes option
pipe | boxes options
echo "text" | boxes -d foo
boxes -l

-d 选项用来设置要使用的图案的名字。语法如下:

echo "Text" | boxes -d design
pipe | boxes -d desig

-l 选项列出所有图案。它显示了在配置文件中的所有的框线设计图,同时也显示关于其创作者的信息。

boxes -l
boxes -l | more
boxes -l | less

输出示例:

43 Available Styles in "/etc/boxes/boxes-config":
-------------------------------------------------
ada-box (Neil Bird ):
    ---------------
    --           --
    --           --
    ---------------
ada-cmt (Neil Bird ):
    --
    -- regular Ada
    -- comments
    --
boy (Joan G. Stark ):
                    .-"""-.
                   / .===. \
                   \/ 6 6 \/
                   ( \___/ )
      _________ooo__\_____/______________
     /                                   \
    |   joan stark   [email protected]   |
    |     VISIT MY ASCII ART GALLERY:     |
    | http://www.geocities.com/SoHo/7373/ |
     \_______________________ooo_________/  jgs
                    |  |  |
                    |_ | _|
                    |  |  |
                    |__|__|
                    /-'Y'-\
                   (__/ \__)
....
...
output truncated
..

在使用 vi/vim 文本编辑器时如何通过 boxes 过滤文本?

你可以在 vi 或 vim 中使用任何外部命令,比如在这个例子中,插入当前日期和时间,输入:

!!date

或者

:r !date

你需要在 vim 中输入以上命令来读取 date 命令的输出,这将在当前行后面加入日期和时分秒:

Tue Jun 12 00:05:38 IST 2012

你可以用 boxes 命令做到同样的功能。如下创建一个作为示例的 shell 脚本或者c程序:

#!/bin/bash
Purpose: Backup mysql database to remote server.
Author: Vivek Gite
Last updated on: Tue Jun, 12 2012

现在输入如下(将光标移到第二行,也就是以“Purpose: ...”开头的行)

3!!boxes

瞧,你就会看到如下的输出 :

#!/bin/bash
/****************************************************/
/* Purpose: Backup mysql database to remote server. */
/* Author: Vivek Gite           */
/* Last updated on: Tue Jun, 12 2012                */
/****************************************************/

这个短片将会给你介绍boxes命令:

参见

  • boxes 帮助手册

via: http://www.cyberciti.biz/tips/unix-linux-draw-any-kind-of-boxes-around-text-editor.html

作者:Vivek Gite 译者:zky001 校对:wxy

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

Open365 是一个开源的 Office 365 替代品,可以让你在线创建和编辑文档,并将文件同步到云上。

目前该服务还处于 Beta 测试期间,不过已经可以在其官网注册使用了。你可以通过 Web 浏览器使用它,也可以下载 Windows、Mac 或 Linux 桌面的客户端,Android 客户端也已经有了,而 iOS 客户端将在不久后发布。

Open365 主要有两个用途,一个是它可以让你在你的设备和云服务之间同步;另外一个是可以让你通过开源的办公套件 LibreOffice Online 所提供的功能在云上查看、修改和创建文档。

Open365

open365

现在你就可以在其官网上注册使用,不过其开发者计划将它开源,到时候你就可以将它安装到你自己的服务器上了。

当你注册后,你会得到一个邮件地址,可以用它来登录网站服务及同步客户端,它同时也提供了邮件服务。

你会有 20G 的存储容量,这要远超现在的其它文件同步服务。不过并不清楚是不是这20G 容量仅可用于 Beta 测试期间。

登录该网站服务,会自动载入一个“Hub”视图,默认情况下,它会列出你自己所有的库和分享给你的库。

点击文件夹会在网站页面上打开该文件夹,而点击文件则视文件类型采取不同动作,如果是支持的格式会直接打开编辑器,否则会下载它。支持的格式包括典型的文档格式,如 docx、xls 或 pptx 等,也支持查看常见的图片格式,可以回放音频和视频。

库和文件可以在线分享或删除,你也可以通过网站页面直接上传新的文件。你可以在网站页面上直接创建新的库,并指定加密选项,只有输入正确的密码才能访问——这个密码不是账户密码。

库和文件可以分享给某个人和某个用户组,可以通过分享链接取得该文件的完全控制。

文档编辑与创建

open365 documents

该功能可以如预期的那样工作,你可以在网站页面中双击文档以载入,Open365 会以合适的编辑器打开它。然后你就可以浏览文档,或者打印和编辑它。如果你之前使用过 LibreOffice,无论是在线还是离线,你就会觉得非常熟悉,不过即使你没用过,也没有什么大的问题,你很快就会熟悉的。

Open365 会定期自动保存修改,不过你也可以手动保存。修改过的文档可以保存到线上,也可以保存到本地,也可以保存为原本的格式或者导出成其它兼容的格式。

载入文档的速度有点慢,在显示文档之前可能要等个几秒钟。

Open365 同步客户端

open365 sync

客户端能够如预期的工作起来。你可以拖放文件夹来增加你要同步到云上的文件夹,也可以使用客户端内建的文件夹浏览器来做这个。

当你将文件夹拖放到同步客户端时,它会自动转换成一个库。在你点击开始同步的按钮前,可以修改库的名字和启用加密。

open365 create

桌面客户端的选项提供了同步的配置,你随时可以在系统托盘区右键点击打开该菜单。在选项中你可以设置上传和下载的速度限制、禁用 http 同步,或者配置当你从本地删除一个库或在云上没有找到一个库时应该采取的操作。

结语

Open365 是一个 Office 365 和 Google Docs 的替代品,它是免费开源的,支持文件同步和在互联网上查看、编辑和创建文档。

将 Open365 安装到你自己的服务器可以让你完全控制你的文档,而 Office 365 和 Google Docs 则不能做到这一点。

本文是一篇关于 Debian 中安装和配置 tripewire 的文章。它是 Linux 环境下基于主机的入侵检测系统(IDS)。tripwire 的高级功能可以检测并报告任何 Linux 中未授权的(文件和目录)的更改。tripewire 安装之后,会先创建一个基本的数据库,tripewire 监控并检测新文件的创建修改和谁修改了它等等。如果修改是合法的,你可以接受修改并更新 tripwire 的数据库。

安装和配置

tripwire 在 Debian VM 中的安装如下。

# apt-get install tripwire

installation

安装中,tripwire 会有下面的配置提示。

站点密钥创建

tripwire 需要一个站点口令(site passphrase)来加密 tripwire 的配置文件 tw.cfg 和策略文件 tw.pol。tripewire 使用指定的密码加密两个文件。一个 tripewire 实例必须指定站点口令。

site key1

本地密钥口令

本地口令用来保护 tripwire 数据库和报告文件。本地密钥用于阻止非授权的 tripewire 数据库修改。

local key1

tripwire 配置路径

tripewire 配置存储在 /etc/tripwire/twcfg.txt。它用于生成加密的配置文件 tw.cfg。

configuration file

tripwire 策略路径

tripwire 在 /etc/tripwire/twpol.txt 中保存策略文件。它用于生成加密的策略文件 tw.pol。

tripwire policy

安装完成后如下图所示。

installed tripewire1

tripwire 配置文件 (twcfg.txt)

tripewire 配置文件(twcfg.txt)细节如下图所示。加密策略文件(tw.pol)、站点密钥(site.key)和本地密钥(hostname-local.key)在后面展示。

ROOT         =/usr/sbin

POLFILE       =/etc/tripwire/tw.pol

DBFILE       =/var/lib/tripwire/$(HOSTNAME).twd

REPORTFILE   =/var/lib/tripwire/report/$(HOSTNAME)-$(DATE).twr

SITEKEYFILE   =/etc/tripwire/site.key

LOCALKEYFILE =/etc/tripwire/$(HOSTNAME)-local.key

EDITOR       =/usr/bin/editor

LATEPROMPTING =false

LOOSEDIRECTORYCHECKING =false

MAILNOVIOLATIONS =true

EMAILREPORTLEVEL =3

REPORTLEVEL   =3

SYSLOGREPORTING =true

MAILMETHOD   =SMTP

SMTPHOST     =localhost

SMTPPORT     =25

TEMPDIRECTORY =/tmp

tripwire 策略配置

在生成基础数据库之前先配置 tripwire 配置。有必要经用一些策略如 /dev、 /proc 、/root/mail 等。详细的 twpol.txt 策略文件如下所示。

@@section GLOBAL
TWBIN = /usr/sbin;
TWETC = /etc/tripwire;
TWVAR = /var/lib/tripwire;

#
# File System Definitions
#
@@section FS

#
# First, some variables to make configuration easier
#
SEC_CRIT      = $(IgnoreNone)-SHa ; # Critical files that cannot change

SEC_BIN       = $(ReadOnly) ;        # Binaries that should not change

SEC_CONFIG    = $(Dynamic) ;         # Config files that are changed
# infrequently but accessed
# often

SEC_LOG       = $(Growing) ;         # Files that grow, but that
# should never change ownership

SEC_INVARIANT = +tpug ;              # Directories that should never
# change permission or ownership

SIG_LOW       = 33 ;                 # Non-critical files that are of
# minimal security impact

SIG_MED       = 66 ;                 # Non-critical files that are of
# significant security impact

SIG_HI        = 100 ;                # Critical files that are
# significant points of
# vulnerability

#
# tripwire Binaries
#
(
rulename = "tripwire Binaries",
severity = $(SIG_HI)
)
{
$(TWBIN)/siggen            -> $(SEC_BIN) ;
$(TWBIN)/tripwire        -> $(SEC_BIN) ;
$(TWBIN)/twadmin        -> $(SEC_BIN) ;
$(TWBIN)/twprint        -> $(SEC_BIN) ;
}
{
/boot            -> $(SEC_CRIT) ;
/lib/modules        -> $(SEC_CRIT) ;
}

(
rulename = "Boot Scripts",
severity = $(SIG_HI)
)
{
/etc/init.d        -> $(SEC_BIN) ;
#/etc/rc.boot        -> $(SEC_BIN) ;
/etc/rcS.d        -> $(SEC_BIN) ;
/etc/rc0.d        -> $(SEC_BIN) ;
/etc/rc1.d        -> $(SEC_BIN) ;
/etc/rc2.d        -> $(SEC_BIN) ;
/etc/rc3.d        -> $(SEC_BIN) ;
/etc/rc4.d        -> $(SEC_BIN) ;
/etc/rc5.d        -> $(SEC_BIN) ;
/etc/rc6.d        -> $(SEC_BIN) ;
}

(
rulename = "Root file-system executables",
severity = $(SIG_HI)
)
{
/bin            -> $(SEC_BIN) ;
/sbin            -> $(SEC_BIN) ;
}

#
# Critical Libraries
#
(
rulename = "Root file-system libraries",
severity = $(SIG_HI)
)
{
/lib            -> $(SEC_BIN) ;
}

#
# Login and Privilege Raising Programs
#
(
rulename = "Security Control",
severity = $(SIG_MED)
)
{
/etc/passwd        -> $(SEC_CONFIG) ;
/etc/shadow        -> $(SEC_CONFIG) ;
}
{
#/var/lock        -> $(SEC_CONFIG) ;
#/var/run        -> $(SEC_CONFIG) ; # daemon PIDs
/var/log        -> $(SEC_CONFIG) ;
}

# These files change the behavior of the root account
(
rulename = "Root config files",
severity = 100
)
{
/root                -> $(SEC_CRIT) ; # Catch all additions to /root
#/root/mail            -> $(SEC_CONFIG) ;
#/root/Mail            -> $(SEC_CONFIG) ;
/root/.xsession-errors        -> $(SEC_CONFIG) ;
#/root/.xauth            -> $(SEC_CONFIG) ;
#/root/.tcshrc            -> $(SEC_CONFIG) ;
#/root/.sawfish            -> $(SEC_CONFIG) ;
#/root/.pinerc            -> $(SEC_CONFIG) ;
#/root/.mc            -> $(SEC_CONFIG) ;
#/root/.gnome_private        -> $(SEC_CONFIG) ;
#/root/.gnome-desktop        -> $(SEC_CONFIG) ;
#/root/.gnome            -> $(SEC_CONFIG) ;
#/root/.esd_auth            -> $(SEC_CONFIG) ;
#    /root/.elm            -> $(SEC_CONFIG) ;
#/root/.cshrc                -> $(SEC_CONFIG) ;
#/root/.bashrc            -> $(SEC_CONFIG) ;
#/root/.bash_profile        -> $(SEC_CONFIG) ;
#    /root/.bash_logout        -> $(SEC_CONFIG) ;
#/root/.bash_history        -> $(SEC_CONFIG) ;
#/root/.amandahosts        -> $(SEC_CONFIG) ;
#/root/.addressbook.lu        -> $(SEC_CONFIG) ;
#/root/.addressbook        -> $(SEC_CONFIG) ;
#/root/.Xresources        -> $(SEC_CONFIG) ;
#/root/.Xauthority        -> $(SEC_CONFIG) -i ; # Changes Inode number on login
/root/.ICEauthority            -> $(SEC_CONFIG) ;
}

#
# Critical devices
#
(
rulename = "Devices & Kernel information",
severity = $(SIG_HI),
)
{
#/dev        -> $(Device) ;
#/proc        -> $(Device) ;
}

tripwire 报告

tripwire-check 命令检查 twpol.txt 文件并基于此文件生成 tripwire 报告如下。如果 twpol.txt 中有任何错误,tripwire 不会生成报告。

tripwire report

文本形式报告

root@VMdebian:/home/labadmin# tripwire --check

Parsing policy file: /etc/tripwire/tw.pol

*** Processing Unix File System ***

Performing integrity check...

Wrote report file: /var/lib/tripwire/report/VMdebian-20151024-122322.twr

Open Source tripwire(R) 2.4.2.2 Integrity Check Report

Report generated by:         root

Report created on:           Sat Oct 24 12:23:22 2015

Database last updated on:     Never

Report Summary:

=========================================================

Host name:                   VMdebian

Host IP address:             127.0.1.1

Host ID:                     None

Policy file used:             /etc/tripwire/tw.pol

Configuration file used:     /etc/tripwire/tw.cfg

Database file used:           /var/lib/tripwire/VMdebian.twd

Command line used:           tripwire --check

=========================================================

Rule Summary:

=========================================================

-------------------------------------------------------------------------------

Section: Unix File System

-------------------------------------------------------------------------------

Rule Name                       Severity Level   Added   Removed Modified

---------                       --------------   -----   ------- --------

Other binaries                 66               0       0       0      

tripwire Binaries               100               0       0       0      

Other libraries                 66               0       0       0      

Root file-system executables   100               0       0       0      

tripwire Data Files             100               0       0       0      

System boot changes             100               0       0       0      

(/var/log)

Root file-system libraries     100               0       0       0      

(/lib)

Critical system boot files     100               0       0       0      

Other configuration files       66               0       0       0      

(/etc)

Boot Scripts                   100               0       0       0      

Security Control               66               0       0       0      

Root config files               100               0       0       0      

Invariant Directories           66               0       0       0      

Total objects scanned: 25943

Total violations found: 0

=========================Object Summary:================================

-------------------------------------------------------------------------------

# Section: Unix File System

-------------------------------------------------------------------------------

No violations.

===========================Error Report:=====================================

No Errors

-------------------------------------------------------------------------------

*** End of report ***

Open Source tripwire 2.4 Portions copyright 2000 tripwire, Inc. tripwire is a registered

trademark of tripwire, Inc. This software comes with ABSOLUTELY NO WARRANTY;

for details use --version. This is free software which may be redistributed

or modified only under certain conditions; see COPYING for details.

All rights reserved.

Integrity check complete.

总结

本篇中,我们学习安装配置开源入侵检测软件 tripwire。首先生成基础数据库并通过比较检测出任何改动(文件/文件夹)。然而,tripwire 并不是实时监测的 IDS。


via: http://linoxide.com/security/configure-tripwire-ids-debian/

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

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