Linux安全基础知识

1      文件操作

1.1  创建文件夹(目录)mkdir

命令:mkdir

例子:[email protected]:~# mkdir testfile

创建testfile目录(文件夹)

1.2  删除文件夹(目录)rmdir

命令:rmdir

例子:[email protected]:~# rmdir testfile

删除testfile目录(文件夹)。

注意:这个命令只能用来删除空目录,如果目录下面有子文件则会失败。

1.3  删除文件夹(目录)rm

命令:rm

例子:[email protected]:~# rm -rf testfile/

删除testfile文件夹(目录),包括目录下面的子文件一并删除

说明:

-r表示把目录和目录下的文件一起删除。

-f表示这个删除操作可以不经确认强制删除。

1.4  创建文件touch

命令:touch

例子:[email protected]:~# touch testfile.txt

创建testfile.txt文件

1.5  删除文件rm

命令:rm

例子:[email protected]:~# rm -rf testfile.txt

删除testfile.txt文件夹。

1.6  移动目录mv

命令:mv

移动文件例子:

[email protected]:~# mv p.txt /

把当前目录下的p.txt文件移动到根目录下。

移动目录(文件夹例子)

[email protected]:~# mv testfile/ /

把testfile目录移动到根目录下。

1.7  文件及文件内容查找

1.7.1  命令find(文件查找)

使用命令:find / –name passwd

作用:在根目录下查找passwd文件

使用命令:find . –name passwd

作用:在当前目录下查找passwd文件。

1.8  命令grep(文件内容查找)

使用命令:grep mysql /etc/passwd

作用:在passwd文件中查找mysql内容。

使用命令:grep –r mysql /etc/

作用:在etc目录下及其子文件查找mysql内容。

1.9  复制文件和文件夹cp

命令:cp

文件例子:[email protected]:~# cp /p.txt /root/p.txt

把p.txt文件复制到/root/目录并且命名为p.txt

目录例子:[email protected]:~# cp -r /testfile /root/backfile

把testfile目录复制到root目录下,并且命名为backfile

1.10    改变文件权限chmod

使用命令:chmod

例子:Chmod 777 file

1.11    显示文件和目录ls命令

1.11.1             命令ls -a

Linux系统上的文件以.开头的文件被系统视为隐藏文件,仅用ls命令时看不到他们的。而用 “ls –a”,除了显示一般文件名外,连隐藏文件也会显示出来。

1.11.2             命令ls –l

这个命令是用长格式显示文件内容,可以查看详细的文件资料。

1.11.3             命令ls -F

在列出的文件(目录)名称后加一符号,例如可执行文件加“*”,目录则加“/”。

1.12    查看文件头信息(head)

1.12.1             命令(head)

使用命令:head manifest.txt

作用:显示manifest.txt文件头10行的内容。

1.12.2             命令(head –n 数值)

使用命令:head –n 20 manifest.txt

作用:显示manifest.txt文件头20行的内容。

1.13    查看文件尾部信息(tail)

1.13.1             命令tail

使用命令:tail manifest.txt

作用:显示manifest.txt文件最后10行的内容。

1.13.2             命令(tail –n 数值)

使用命令:tail –n 20 manifest.txt

作用:显示manifest.txt文件最后20行的内容。

1.13.3             命令(tail -f)

使用命令:tail –f manifest.txt

作用:显示manifest.txt文件最后10行的内容。如果有新增内容,自动刷新显示新增内容。

1.14    cat命令

命令:cat file1

显示file1这个文件的内容

命令:cat file1file2

依次显示file1,file2的内容

命令:cat file1file2 > file3

把file1和file2的内容结合起来重定向>到file3文件中。

1.15    more命令

more是显示一般文本文件内容的指令,如果一个文本文件太长超过了一个屏幕的画面,用cat来看实在是不理想,就可以用more

命令:more file1

1.16    pwd命令

命令:pwd

显示当前工作路径。

2      用户及用户组管理命令

创建用户命令:useradd 用户名

创建密码命令:passwd 用户名

删除用户命令:Userdel 用户名

创建用户组:groupadd

删除用户组:groupdel

3      进程及任务管理命令

3.1  ps命令

ps命令是最基本同时也是非常强大的进程查看命令。使用该命令可以查看有哪些进程正在运行以及运行的状态,进程是否结束,进程有没有僵死,哪些进程占用了过多的资源等等。

1、查看所有进程

2、查看NTP进程

ps【选项】说明:

-e 显示所有进程

-f 全格式显示

3.2  top命令

top命令和ps命令基本作用是相同的,显示系统当前进程和其他状况。但是top是一个动态显示过程,即可通过用户按交互命令来不断刷新当前状态。

Top交互命令:

<空格>  立即刷新显示

h或者?  显示帮助画面给出一些简短的命令总结说明

m       切换显示内存信息

t       切换显示进程和CPU状态的信息

c    切换显示命令名称和完整命令行

M    根据驻留内存大小进行排序

P    根据CPU使用百分比大小进行排序

q    退出。

3.3  kill命令

命令:kill 进程名

4      df磁盘使用率

5      文件解压缩tar命令

语法:tar 【主选项+辅选项】文件或目录

使用该命令时,主选项是必须要有的,它告诉tar要做什么事,辅选项是辅助使用的,可以选用。

【主选项】

c  创建新的档案文件。相当于打包。

X  从档案文件中释放文件。相当于拆包。

t  列出档案文件的内容,查看已经备份了哪些文件。

特别注意,在参数的下达中,c/x/t仅能存在一个!因为不可能同时压缩与解压缩。

【辅助选项】

-z :是否同时具有gzip的属性?即是否需要用gzip压缩或解压?一般格式为xx.tar.gz或xx.tgz

-j:是否同时具有bzip2的属性?即是否需要使用bzip2压缩或解压?一般格式为xx.tar.bz2

-v:压缩的过程中显示文件!

-f:使用档名

5.1  范例一(打包)

使用命令:

tar –cvf  /home/test.tar  /etc      ---------->仅打包,不压缩

tar –zcvf  /home/test.tar.gz  /etc    ---------->打包后,以gzip压缩

tar –jcvf  /home/test.tar.gz  /etc    ---------->打包后,以bzip2压缩

5.2  范例二(查看打包里内容)

使用命令:

tar –ztvf  /home/test.tar.gz     ---------->查看test.tar.gz文件内有哪些文件。

5.3  范例三(解压缩)

使用命令:

tar -zxvf  /home/test.tar.gz      ---------->解压test.tar.gz文件到当前工作目录

6      网络配置

6.1  命令ifconfig

6.1.1  设置网卡IP地址

使用命令:ifconfig eth0 192.168.0.1 netmask 255.0.0.0

作用:将eth0网卡设置ip为192.168.0.1,掩码为255.0.0.0

6.1.2  网卡关闭/启用

使用命令:ifconfig eth0 down

作用:暂时关闭网卡

使用命令:ifconfig etho up

作用:启用网卡

6.2  命令route

6.2.1  添加一条路由

使用命令:route add –net 192.168.0.0 netmask 255.0.0.0 dev eth0

6.2.2  添加一条缺省路由

使用命令:route add 0.0.0.0 gw 网关地址

6.2.3  删除缺省路由

使用命令:route del 0.0.0.0 gw 网关地址

7      软件包管理工具

几乎所有的Linux发行版本都使用某种形式的软件包管理安装、更新和卸载软件。与直接从源代码安装相比:

1软件包管理易于安装和卸载;

2易于更新已安装的软件包;

3易于保护配置文件;

4易于跟踪已安装文件。

下面介绍几种常见的包管理器:

7.1  RPM

RPM全称是Red Hat PackageManager(Red Hat包管理器),

rpm包就类似于windows上的exe文件,各种文件已经编译好,并打了包,如果有图形化界面,也可以实现双击安装。若使用命令行,则下面使用下面命令:

(1)安装RPM包软件:#rpm -ivh包名(安装一个包)

(2)卸载软件:  #rpm -e 软件名

(3)未编译的rpm包安装,就是后缀为.src.rpm的,使用下面命令:

#rpm -rebuild   src.rpm

#rpm -ivh  包名

(4)rpm -Uvh file.rpm    #[升级一个rpm]—upgrade

注:

参数解释:

-i, --install                     install package(s)

-v, --verbose                     provide more detailedoutput

-h, --hash                        print hash marks as packageinstalls (good with -v)

-e, --erase                       erase (uninstall)package

-U, --upgrade=<packagefile>+      upgrade package(s)

(1)、软件名和软件包名是两个概念,软件名通常是文件名中位于版本号前面的字符串。例如apache-devel-3.1.12-i386.rpm这个包,其对应的是包名,那相应的软件名为apache-devel。

(2)、当然,这些参数可以同时采用。更多的内容可以参考

使用帮助列表:#rpm  -- help

系统功能说明:#man    rpm

7.2  Yum

(1)  安装指定安装包:#yuminstall package_name(如yum  –y  install httpd)

(2)  删除软件包:        #yum  remove  package_name(如 yum removehttpd)

7.3  Deb

Deb是Debian Linux提供的一个包管理器,它与RPM十分类似,相应软件后缀为.deb。但Debian的包管理器dpkg只出现在Debina Linux、ubuntu中。它的优点是不用被严格的依赖性检查所困扰,缺点是只在Debian Linux发行版中才能见到这个包管理工具。非debian,ubuntu系统不推荐使用deb软件包,因为要解决软件包依赖问题,安装也比较麻烦。

(1)安装直接使用:           #dpkg    -i     package_file.deb

(2)卸载使用 :                  #dpkg    -r    package_name

7.4  APT

APT是Ubuntu 软件包管理系统的高级界面,Ubuntu 是基于Debian的,APT由几个名字以“apt-”打头的程序组成。apt-get、apt-cache和apt-cdrom是处理软件包的命令行工具。

(1) 安装指定包:#sudo    apt-get   install package

(2) 删除指定包:#sudo    apt-get   remove package

8      源码包安装

源代码一般以file.tar.gzfile.tar.bz2或file.src.rpm 打包;file.tar.gz和file.tar.bz2格式的解包命令如下;

安装方法:

[[email protected] fcitx]# tar -xvffcitx-3.2-050827.tar.bz2
[[email protected] fcitx]#cd fcitx

#指定把程序安装在/opt/fcitx目录下。
[[email protected] fcitx]# ./configure --prefix=/opt/fcitx
[[email protected] fcitx]# make
[[email protected] fcitx]# make install

调用fcitx ,应该是

[[email protected] ~]#./opt/fcitx/bin/fcitx

如果您想要让fcitx 只要执行fcitx ,就能调用,请配置环境变量,或者在/usr/bin 中做一个fcitx 的链接;

[[email protected] beinan]# ln -s /opt/fcitx/bin/fcitx /usr/bin/fcitx

9      管道

管道命令操作符是:”|”,它仅能处理经由前面一个指令传出的正确输出信息,也就是 standard output 的信息,对于 stdandard

error 信息没有直接处理能力。然后,传递给下一个命令,作为标准的输入 standard input.

10            重定向

10.1    标准的输出控制

语法:命令 > 文件将命令的执行结果送至指定的文件中

例如:

#把ls –l的结果输出到te.txt文件中。

ls –l > te.txt

$ ls > ls_result

$ ls -l 》 ls_result

上面这两个命令分别将 ls 命令的结果输出重定向到 ls_result 文件中和追加到 ls_result 文件中,而不是输出到屏幕上。">"就是输出(标准输出和标准错误输出)重定向的代表符号,连续两个 ">" 符号, "》" 则表示不清除原来的而追加输出

10.2    标准输入控制

语法:命令 < 文件将文件作为命令的输入

例如:

mail -s “mail test” [email protected] <file1

将文件file1 当做信件的内容,主题名称为mail test,送给收信人。

11            启动/关闭程序

11.1    查看程序状态

[email protected]:~# service ssh status

11.2    启动程序

[email protected]:~# service ssh start

11.3    关闭程序

[email protected]:~# service ssh stop

11.4    重启程序

[email protected]:~# service ssh restart

12            挂载外设

12.1    U盘挂载

  • 使用fdisk –l命令查看系统有的盘符。

  • 插入u盘后再使用fdisk –l命令查看U盘的目录。U盘目录在/dev/sdb1。

  • 创建一个目录用来挂载U盘,创建usbfile目录用来挂载。

  • 使用mount命令进行挂载

  • 进入usbfile目录下查看内容,可以看到U盘的内容,说明已经挂载成功了。

12.2    卸载操作

使用命令:umount 挂载点目录

使用‘umount /root/usbfile’命令卸载挂载点

卸载的时候报设备被占用,此时通过fuser命令查看占用的进程

通过k杀掉这个进程,使用命令“fuser -mk /root/usbfile”

然后在使用umount卸载命令(“[email protected]:~# umount /root/usbfile”),就可以成功卸载了。

此时在同“[email protected]:~# ls /root/usbfile/”命令查看是否有文件,没有任何文件了说明卸载成功了。

13            Linux下使用Tcpdump抓包

用简单的话来定义tcpdump,就是:dump thetraffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。

监视指定网络接口的数据包

[email protected]:~# tcpdump -i eth0

监视指定主机的数据包

[email protected]:~#tcpdump host 210.27.48.1

时间: 2024-12-22 20:45:56

Linux安全基础知识的相关文章

linux入门基础知识及简单命令介绍

linux入门基础知识介绍 1.计算机硬件组成介绍 计算机主要由cpu(运算器.控制器),内存,I/O,外部存储等构成. cpu主要是用来对二进制数据进行运算操作,它从内存中取出数据,然后进行相应的运算操作.不能从硬盘中直接取数据. 内存从外部存储中取出数据供cpu运存.内存的最小单位是字节(byte) 备注:由于32的cpu逻辑寻址能力最大为32内存单元.因此32位cpu可以访问的最大内存空间为:4GB,算法如下: 2^32=2^10*2^10*2^10*2^2 =1024*1024*1024

Kali Linux渗透基础知识整理(二)漏洞扫描

Kali Linux渗透基础知识整理系列文章回顾 漏洞扫描 网络流量 Nmap Hping3 Nessus whatweb DirBuster joomscan WPScan 网络流量 网络流量就是网络上传输的数据量. TCP协议 TCP是因特网中的传输层协议,使用三次握手协议建立连接.当主动方发出SYN连接请求后,等待对方回答SYN+ACK ,并最终对对方的 SYN 执行 ACK 确认.这种建立连接的方法可以防止产生错误的连接,TCP使用的流量控制协议是可变大小的滑动窗口协议. 连接建立 TC

linux内存基础知识和相关调优方案

内存是计算机中重要的部件之一,它是与CPU进行沟通的桥梁.计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大.内存作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据.只要计算机在运行中,CPU就会把需要运算的数据调到内存中进行运算,当运算完成后CPU再将结果传送出来,内存的运行也决定了计算机的稳定运行.对于整个操作系统来说,内存可能是最麻烦的的设备.而其性能的好坏直接影响着整个操作系统. 我们知道CPU是不能与硬盘打交道的,只有数据被载入到内存中才可

Linux防火墙基础知识及配置

Linux防火墙基础知识 Linux的防火墙正确的来说并不算是防火墙,只是一种防火墙的功能体现.我们现在来讲解下Linux的这个防火墙功能的详细解释. Linux的防火墙是由iptables与netfilter两个程序组成的,而iptables是一个单独的程序,netfilter是集成到内核中的一个程序,两个程序合作才能拥有完整的防火墙功能. Iptables的功能是向netfiler提供规则,netfilter则是将规则执行起来. Linux防火墙还分为主机防火墙与网络防火墙. 主机防火墙:工

Linux系统基础知识

1.linux概述 ??Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的操作系统.它能运行主要的UNIX工具软件.应用程序和网络协议.它支持32位和64位硬件.Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统.??Linux操作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间).Linux存在着许多不同的Linux版本,但它们都使用了Linux内核.Linux可安装在各

linux的基础知识

1.描述计算机的组成及其功能 计算机分为软件和硬件 软件:例如我们的系统.QQ.360等等 计算机硬件由五大部分组成:运算器.控制器.存储器.输入设备.输出设备,也就是我们生活中常见 CPU .主板.内存.硬盘.键盘.鼠标.显示器等.它们的各个具体功能如下: (1)CPU:是英语“Central Processing Unit中央处理器”的缩写,是一台计算机的运算核心和控制核心.它的功能主要 是解释计算机指令以及处理计算机软件中的数据.如今主流分AMD和Intel. (拓展IntelCPU的优点

Linux系统基础知识-嵌入式迅为4412开发板学习笔记

1. 什么是Linux系统编程 详情了解:http://topeetboard.com  更多了解:https://arm-board.taobao.com Linux系统编程分为三个部分:系统调用.C库和C编译器. 系统调用系统编程的基础是系统调用,也结束于系统调用.在带有操作系统的嵌入式开发中,需要从操作系统申请一些服务和资源,从用户空间向内核发起的一些函数调用.系统调用包括对文件的读写.进程的控制等等.在Linux中,系统的实现少于其它内核.例如在Windows下有几千个系统调用,但是在L

Linux必备基础知识

1.计算机体系结构:(五大组件) 运算器 控制器 存储器,内存,编址 输出设备 输入设备 2.如何实现线路复用:这就要求运算器中有存储设备,而这个设备就是寄存器. 3.CPU中最核心组件:运算器+控制器+寄存器 运算器:处理数据 控制器:协调各个部件正常工作 寄存器:实现数据和指令的寄存,是线路复用的基础. 4.POST:BIOS 自举:如何实现,需要借助ROM实现,一开机芯片(ROM)上的指令就自动(硬件逻辑)映射到内存               (最开始的那一端)上,控制器和运算器才可以读

Linux入门基础知识

1.计算机的组成及其功能. 计算机系统主要分为硬件系统和软件系统两部分. (1)硬件系统由五部分组成,其中包括: 控制器:调度程序.数据.地址,协调计算机各部分工作及内存与外设的访问: 运算器:对数据进行加工处理: 存储器:存储程序.信号.命令,数据等信息,并在需要时提供这些信息,如内存和硬盘: 输入设备:将程序.命令.文字,数据等信息输入到计算机系统,如键盘.鼠标等: 输出设备:将数据.文字.控制信号等各种信息输送出来,如显示器.打印机等:其中控制器和运算器组成CPU. (2)软件系统由两部分

Linux Puppet基础知识

Puppet可以批量配置多个节点,减少运维人员在重复的.繁琐的工作中花费的时间:可以轻松的管理几千个节点: 官网地址:https://puppet.com/ Puppet相对于ansible来说,其不仅要运行master端,且在每个被管控节点上还要安装并运行agent端: master:puppet server agent:agent周期性(默认为30分钟)的到master端请求与自己相关的配置,进而在本地执行(所以说agent才是真正管理节点的部件),然后将执行结果报告给master端: N