一些Linux下系统安全软件的最小可用知识(目前3个软件)
ClamAV使用
概述
ClamAV 杀毒是Linux平台最受欢迎的杀毒软件,ClamAV属于免费开源产品,支持多种平台。
ClamAV是基于病毒扫描的命令行工具,但同时也有支持图形界面的ClamTK工具。
ClamAV主要用于邮件服务器扫描邮件。它有多种接口从邮件服务器扫描邮件,支持文件格式有如:ZIP、RAR、TAR、GZIP、BZIP2、HTML、DOC、PDF,、SIS CHM、RTF等等。
ClamAV可以自动升级病毒库,还可以从共享库中运行。命令行的界面让ClamAV运行流畅。
默认 只能查出您计算机内的病毒,但是无法清除
软件获取:
Linux下命令sudo apt-get update sudo apt-get install clamav
最小可用知识
sudo freshclam
这条命令用来更新病毒库,以便能获取最新的病毒情况。某些情况下有可能报错,此步非必须。clamscan -r /path_to_scan
扫描某一路径上的文件,path_to_scan需要被替换成你想扫描的路径。
Netcat
概述
Netcat是一个网络工具,通常用于在计算机之间传输数据。它可以在终端中运行,充当一个轻量级的网络工具。Netcat有很多用途,包括创建简单的网络连接、进行端口扫描、传输文件等。它被广泛用于网络调试和安全测试。
软件获取:
Linux下命令sudo apt-get update sudo apt-get install netcat
最小可用知识
nc [options] host port
基本语法。其中,host是目标主机的地址,port是目标主机的端口号。nc -l -p 8888
在一个终端窗口中,输入以下命令来创建一个简单的服务器,监听某个端口(假设端口号为8888)
如果无法看到输出,使用-v参数例如nc -l -p 8888 -v
来显示详细信息。
该命令会一直运行,监听端口并等待连接。在此模式下,终端处于"监听"状态,不能再次输入命令。
由于无法输入新命令,我们可以使用快捷键**Ctrl + Shift + T **在大多数终端中打开一个新的标签页,进行新操作;
或者直接使用GUI来操作,即点击终端左上方‘+’字符(如下图)。
nc localhost 8888 -v
在新的终端标签页或窗口中,我们将创建一个Netcat客户端并连接到之前设置的服务器。
至此,你已成功使用Netcat创建了一个简单的客户端-服务器连接。
我们能用这个连接干点什么?
- 消息传递
你可以在客户端输入一些文本,然后在服务器窗口中看到它。
- 文件传输
nc -w 3 -q 0 localhost 8888 < 文件名
在客户端使用的传输命令;nc -l -p 8888 > 接收的文件名
服务器接受文件的情况;- ......
Valgrind使用
概述
Valgrind 本质上是一个使用即时编译技术(包括动态重新编译)的虚拟机。原始程序中的任何内容都不会直接在主机处理器上运行。相反,Valgrind 首先将程序转换为一种临时的、更简单的形式,称为中间表示(IR),这是一种与处理器无关的、基于静态单赋值形式的形式。转换后,工具(见下文)可以自由地对 IR 进行任何转换,然后 Valgrind 将 IR 转换回机器代码并让主机处理器运行它。Valgrind 重新编译二进制代码以在相同架构的主机和目标(或模拟)CPU 上运行。它还包括一个GDB存根,允许在 Valgrind 中运行时调试目标程序,并使用允许查询 Valgrind 工具以获取各种信息的“监视命令”。
这些转换(通常是工具插入的代码)会损失大量性能;通常,使用 Valgrind 和“none”工具(对 IR 没有任何作用)运行的代码的运行速度是正常程序的 20% 到 25%。[7] [8]
软件获取:
Linux下命令sudo apt-get update sudo apt-get install valgrind
最小可用知识
- valgrind ./your_program
如果是良好合法的程序,输出中没有内存错误或泄漏的信息。
如果是如下程序(没有释放分配的内存)
#include <stdlib.h>
int main() {
int *arr = malloc(5 * sizeof(int));
return 0;
}
这样就能快速检查是否有内存问题。
当然,也使用 Valgrind 作为调试工具。Valgrind还有很多其他的用法。
参考文本:
ChatGPT自然语言模型
《ClamAV杀毒软件的安装和使用》