2023/12/9大约 3 分钟
Linux 基础知识第 1 部分
- Linux ”这个名称实际上是基于 UNIX(另一种操作系统)的多个操作系统的总称,该操作系统的内核由林纳斯·托瓦兹在1991年10月5日首次发布。由于 UNIX 是开源的,Linux 的变体具有各种形状和大小 - 最适合系统的用途。在本系列中,我们将使用 Ubuntu。
Ubuntu Server 可以在只有 512MB RAM 的系统上运行
- 一些基本的命令:
| 命令 | 描述 | 提示 |
|---|---|---|
| echo | 输出我们提供的任何文本 | |
| whoami | 找出我们当前登录的用户身份! | |
| ls | 列出当前目录中的文件 | 可以使用ls和目录名称列出目录的内容,而无需导航到该目录。ls Pictures |
| cd | 更改当前目录(change directory 的缩写) | |
| cat | 输出文件的内容 | “Cat”是连接的缩写,是我们输出文件内容(不仅仅是文本文件!)的绝佳方式。 |
| pwd | 找出当前工作目录的完整路径 | |
| find | 用于搜索文件 | 1. 如果我们记住文件名,我们可以简单地使用find -name passwords.txt命令在当前目录中的每个文件夹中查找该特定文件。 2.找到当前目录中的每个 .txt 文件,find -name *.txt. 其中“find”能够找到每个 .txt 文件,然后为我们提供每个文件的位置。 |
| grep | grep命令允许我们在文件内容中搜索我们正在查找的特定值。 | 查看 IP 地址“81.143.211.90”访问过的所有内容 grep "81.143.211.90" access.log |
| wc | wc指令我们可以计算文件的Byte数、字数、或是列数wc -l access.log 使用“wc”来计算“access.log”中的条目数 | |
| & | 该操作符允许您在终端后台运行命令。 | 该运算符允许我们在后台执行命令。例如,假设我们要复制一个大文件。这显然需要相当长的时间,并且在文件成功复制之前我们无法做任何其他事情。“&”shell 运算符允许我们执行命令并使其在后台运行(例如此文件复制),从而允许我们执行其他操作! |
| && | 该运算符允许您将多个命令组合在终端的一行中。 | 与“&”运算符不同,我们可以使用“&&”执行多个命令,例如command1 && command2。然而,值得注意的是,只有成功command2后才会运行command1 |
| > | 该运算符是一个重定向器 - 这意味着我们可以从命令中获取输出(例如使用 cat 输出文件)并将其定向到其他地方。 | 假设我们想创建一个名为“welcome”的文件,其中包含消息“hey”。我们可以echo hey > welcome在我们想要创建内容为“hey”的文件的地方运行。 注意:如果“welcome”文件已存在,则内容将被覆盖! |
| >> | 该运算符执行与该运算符相同的功能>,但附加输出而不是替换(意味着没有任何内容被覆盖)。 | |
| hostname | 系统的主机名 | |
| uname -r | Linux内核版本 | |
| uname -r | Linux内核版本 | |
| uname -r | Linux内核版本 |
3.起一个web服务
python3 -m http.server 4444
4.curl命令
curl -X POST http://10.10.7.7/challenges//chall1.php -d 'method=GET&file=/etc/flag1'
curl -X POST http://10.10.189.219/challenges//chall3.php -d 'method=POST&file=../../../../etc/flag3%00' --output -