首页 > 系统相关 >Linux基础入门2

Linux基础入门2

时间:2024-11-14 16:16:54浏览次数:3  
标签:文件 入门 sudo 基础 命令 Linux 权限 root 网络接口

建议先看一
声明: 学习视频来自B站UP主 泷羽sec,如涉及侵权马上删除文章。本文只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负 泷羽sec的个人空间-泷羽sec个人主页-哔哩哔哩视频 微信公众号:泷羽sec

文件系统权限

Linux系统中一切都是文件

1.查看权限

ls -la /etc/passwd

逐步分析这个命令:

ls:是列出目录内容的命令。

-l:以长格式显示文件信息,包括文件的权限、所有者、所属组、文件大小、修改时间等详细信息。

-a:显示包括隐藏文件在内的所有文件。

/etc/passwd:是要查看的文件路径,这个文件存储啦系统用户账号的基本信息。通过这个命令可以看到’etc/passwd’文件的权限设置、所有者、所属组等信息。

2.更改文件所有者

chown root file

chown:改变文件所有者的命令

root:在这里是新的所有者用户名,表示这里将这个文件的所有者改为“root”用户。

file:是要更改所有者的文件名称

执行这个命令后,文件的所有者将会变成root用户

3.修改文件权限

sudo chmod u=rwx, g+rw, o-r file

sudo:表示用户以管理员权限执行命令。

chmod:改变文件权限的命令。

u=rwx:表示文件所有者user拥有(读)r(写)w、(执行)x权限。

g+rw:表示文件所属组group增加读r和写w的权限。

o-r:表示其他用户other去除r读的权限。

file:要修改权限的文件名称。

sudo chomd u+x,g+w,o-r file

同样以管理员权限执行文件权限的操作

u+x:给文件所有者增加执行权相。

g+w:给文件的所属组增加写w权限

o-r:表示去除其他用户的读r权限

chmod 400 <file>

chmod命令直接以数字方式设置文件权限

400:是权限数字表示,其中第一位数字“4”表示文件所有者的权限,这里代表读r

<file>要设置的文件

linux中的chmod数字权限

在Linux系统中,可以使用chmod命令来改变文件或目录的访问权限。这个命令可以使用两种方式来表示权限:符号式和数字式。
符号式权限(symbolic mode)使用字符u,g,o来代表用户(user)、组(group)、其他人(others),a代表所有人(all),r代表读(read),w代表写(write),x代表执行(execute)。
数字式权限(numeric mode)使用三位数字,每一位数字代表不同的用户类别的权限。第一位数字代表用户(user)的权限,第二位数字代表组(group)的权限,第三位数字代表其他人(others)的权限。每个数字是 0-7 之间的值,分别代表的权限是:0(没有权限),1(只有执行权限),2(只有写权限),3(写和执行权限),4(只有读权限),5(读和执行权限),6(读和写权限),7(读、写和执行权限)。
例如,给所有人添加读、写和执行权限,可以使用以下命令:
chmod 777 文件或目录名
或者使用符号式权限:
chmod a+rwx 文件或目录名
如果你想要将一个文件的权限设置为所有者可读写执行,组可读执行,其他人只可读,可以使用以下命令:
chmod 755 文件名
或者使用符号式权限:
chmod u=rwx,g=rx,o=r 文件名
注意:在使用chmod命令时,你需要具有该文件或目录的所有者或者是root用户才能更改其权限。

日志

1.系统日志相关命令

ls -l /var/log

ls列出目录内容

-l选项以长格式显示文件和目录的详细信息,包括权限、所有者、所属组、文件大小、修改时间等。

/var/log系统日志文件所在的目录

执行这个命令可以查看该目录下的日志文件列表及相关信息。

2.认证信息日志相关命令

sudo tail -3 /var/log/auth.log

sudo以管理员权限执行命令

tail命令用于查看文件的末尾部分

-3显示文件的最后三行内容

/var/log/auth.log存储系统认证信息的日志文件,包括用户登录、认证失败等信息。

执行这个命令可以查看最近的三条认证相关的日志记录

3.二进制日志相关命令

who /var/log/wtmp | tail -5

who用于显示当前登录的用户信息

/var/log/wtmp一个二进制日志文件,记录系统的登录和注销信息

|管道符号,将前一个命令的输出作为后一个命令的输入

tail -5表示显示最后五行内容

执行这个命令可以查看最近的五次登录和注销记录。

4.dmesg

dmesg这用于显示和控制系统内核的环形缓冲区(ring buffer),包括系统启动时的硬件检测信息、内核模块加载信息、设备驱动的初始化信息等。他可以帮助用户了解系统的硬件状态和内核的运行情况。

5.systemd日志相关命令

journalctl

journalctl这是用于查看和管理systemd日志的命令。

systemd是Linux系统的初始化系统和服务管理器,他会记录系统和服务的启动、运行和错误信息等日志.

journalctl可以根据不同的参数来筛选、查看特定时间段、特定服务或特定优先级的日志记录

内存

1.内存使用量

free -m

free命令用于显示系统内存的使用情况

-m选项表示以兆字节(MB)为单位显示内存信息

执行这个命令后,会显示系统的总内存、已使用内存、可用内存、缓冲内存和缓存等信息,帮助用户了解系统当前的内存使用状态。

2.磁盘使用量

df -hT

df命令用于显示磁盘空间使用情况

-h选项表示以人类刻度的格式显示(如KB、MB、GB等)显示磁盘空间大小

-T选项显示文件系统类型

执行这个命令可以查看各个磁盘分区的总大小、已使用空间、可用空间以及文件系统类型等消息

3.文件或目录大小

sudo du ./* -hsc

sudo以管理员权限执行命令

du用于统计文件或目录的磁盘空间

./*表示当前目录下的所有文件和目录

-h选项表示以人类可读的格式显示大小

-s选项表示汇总显示每个参数的总大小

-c选项表示在最后显示统计

执行这个命令可以查看当前目录下每个文件和目录的大小,并在最后显示总计大小。

4.查看硬盘分区

sudo fdisk -l

sudo 老样子,以管理员权限执行

fdisk一个磁盘分区工具

-l选项是列出系统中的所有磁盘分区信息,包括磁盘大小、分区类型、分区编号、起始和结束扇区等

执行这个命令可以帮助用户了解系统的磁盘分区情况

5.挂载分区

sudo mount /dev/sdb1 /mnt/usb

sudo 管理员权限运行

mount用于将一个文件系统挂载到指定的目录

/dev/sdb1要挂载的磁盘分区设备路径

/mnt/usb是挂载点,既要将分区挂载到的目录

执行这个命令后,系统可以访问改分区中的文件和目录,就像访问本地文件系统中的其他目录一样

基本网络枚举

1.基本网络工具

ifconfig

一个用于配置和显示网络接口信息的命令行工具(可以比对下windows中ipconfig),它可以显示网络接口的IP地址、子网掩码、MAC地址等信息,还可以用于启动、停止或配置网络接口。

ip addr

也是用于查看和管理网络接口的命令

他提供啦比ifconfig更详细和灵活的网络接口信息显示,包括接口的状态、IP地址、子网掩码、广播地址等。

sudo ifdown/ifup eth0

sudo 还是老样子以管理员权限执行命令。

ifdown用于关闭指定的网络接口

ifup用于开启指定的网络接口

eth0是网络接口的名称

这个命令表示关闭/开启名为eth0的网络接口

注意:

这里可能会出现下面的情况

root@VM-20-17-ubuntu:/# sudo ifdown eth0
sudo: ifdown: command not found

是因为 ifupdown 包没有安装。ifupifdownifupdown 包中的命令,用于配置网络接口。要解决这个问题,只需要安装ifupdown包就好了

2.网络配置

/etc/network/interfaces

这是一个系统文件,用于配置网络接口的静态IP地址、子网掩码、网关等信息

在一些linux 发行的版本中,通过编辑这个文件可以实现网络接口的手动配置

NetworkManager

是一个动态网络控制和配置守护进程

它可以自动管理网络连接,包括有限网络、无线网络和VPN连接等

NetworkManager提供啦图形界面和命令行工具来配置和管理网络,使得网络配置更加方便灵活。可以自动检测网络变化,并根据配置自动连接到可用的网络

网络连接

1.网络连接状态查看工具

netstat -natup

netstart是一个用于显示网络连接、路由表、接口统计等信息的命令

-n选项表示以数字形式显示地址和端口号,避免进行域名解析

-a选项显示所有的连接和监听端口

-t选项表示显示TCP连接

-u选项显示UDP连接

-p选项显示与连接相关的进程ID个程序名称。

执行这个命令可以查看系统当前的网络连接状态,包括连接的协议、本地地址和端口、远程地址和端口等信息

ss -natup

ss是一个用于显示网络套接字状态的工具,它比`netstat更快速和高效。

选项的含义与netstat中类似,用于显示TCP和UDP连接的状态、地址和端口信息,以及相关的进程信息。

2.二层地址查看工具

arp -en

arp是地址解析协议表(Address Resolution Protocol)的缩写

-e选项以详细格式显示ARP缓存表

-n选项以数字形式显示IP地址,避免进行域名解析

执行这个命令可以查看系统的ARP缓存表,其中包含了IP地址和对应的MAC地址映射关系,用于在局域网中进行二层地址解析

3.路由相关信息

route

用于显示和管理系统的路由表,可以查看系统当前的路由信息,包括目标网络、网关、子网掩码等。还可以用于添加、删除】或修改路由条目。

ip route

ip route是IP命令的一部分,用于管理系统的路由表。它提供了更强大和灵活的路由管理功能,可以执行更复杂的路由配置操作。

sudo ip route add 10.13.37.0/24 dev eth1

sudo表示使用管理员权限执行命令

ip route add 用于添加一条路由条目

10.13.37.0/24 是目标网络地址和子网掩码

dev eth1表示通过名为‘eth1’的网络接口到达目标网络

执行这个命令可以向系统的路由表中添加一条路由,指定如何到达特定的网络

4.路由跟踪工具

traceroute offensive-security.com

traceroute是一个用于跟踪数据包从本地到目标主机经过的路由路径的工具

offensive-security.com是目标主机的域名或者IP地址。执行这个命令会逐条显示数据包经过的路由器的IP地址和响应时间,帮助用户了解网络连接的路径和可能存在的网络问题。这里可以替换

ssh服务

1.启动服务

sudo systemctl start ssh

sudo 表示以管理员权限执行命令

systemctl是用于管理系统服务的工具

start ssh开启名为ssh的服务,也就是启动ssh服务器,可以让其他设备可以通过SSH协议连接到这台主机

2.连接本地主机

ssh root@localhost

ssh是secure shell的客户端命令

root表示要以root用户身份进行登录

@localhost表示连接到本地主机。执行这个命令可以使用SSH协议以root用户身份登录到本地主机,如果本地的SSH服务已启动且配置正确,并且用户有相应的权限,就可以成功登录并获得一个远程命令行会话

3.配置文件

etc/ssh/sshd_config

这是SSH服务器的主要配置文件,其中包括来各种参数,可以用来配置SSH服务器的行为,比如端口号、允许登录的用户、认证方式、访问控制等。可以根据具体需求通过编辑这个文件,对SSH服务器进行定制化配置

4.客户端配置

hash knownHosts yes

通常情况下,/.ssh/know_hosts文件用于存储已知的远程主机的公钥信息,以确保链接的安全行。这个配置选项可能是指示对已知主机文件中的主机名进哈希处理,这样可以提高一定的安全信号,具体效果可能会因为不同的SSH实现而有所差异。

~/.ssh

这是用户目录下的一个目录,用于存储SSH客户端的配置和相关文件

通常包含私钥文件(如id_rsa)、公钥文件(如id_rsa.pub)以及已知的主机文件(known_hosts等)。这些文件用于SSH客户端的身份认证和连接管理

远程拷贝

scp [email protected]:home/kail/.bashrc Copiedbashre

scp是Secure Copy的缩写,用于不同主机之间安全地复制文件。

[email protected]表示从IP地址为1.1.1.1的主机上以root用户身份进行操作

/home/kail/.bashrc是源文件路径,既要从远程主机上复制的文件。

Copiedbashrc是目标文件名称或谬表路径,即将远程文件复制到本地后的名称或存放的位置。这个命令会从指定的远程主机复制.bashrc文件到本地,并命名为Copiedbashrc.

scp 1.php root@ip:home/kail/.bashrc

将本机中的一个文件远程复制到另一个文件中的该目录下

历史

history

可以查看历史命令

标签:文件,入门,sudo,基础,命令,Linux,权限,root,网络接口
From: https://blog.csdn.net/2301_80217770/article/details/143774049

相关文章

  • [Mysql基础] 表的操作
    一、创建表1.1语法CREATETABLEtable_name(field1datatype,field2datatype,field3datatype)characterset字符集collate校验规则engine存储引擎;说明:field表示列名datatype表示列的类型characterset字符集,如果没有指定字符集,则以所在数据库的字......
  • 揭秘黑客手法:如何通过密码搜寻在 Linux 系统中实现权限提升
    文章目录前言1、密码搜寻–文件名和文件内容1.1、寻找有趣的文件名1.2、寻找有趣的字符串2、密码搜寻–Web文件/Config文件2.1、Config文件中的密码2.2、Web文件中的密码2.2.1、使用Hashcat破解密码3、密码搜寻–隐藏文件/文件夹3.1、隐藏文件/文件夹中的......
  • 一文教你用黑客技术 aircrack-ng破解wifi密码!网络安全零基础入门必看教程
    前言这是小强给粉丝盆友们整理的网络安全渗透测试入门阶段无线安全渗透与防御教程喜欢的朋友们,记得给我点赞支持和收藏一下,关注我,学习黑客技术。1.Aircrack-ng简介Aircrack-NG是一个完整的工具来评估Wi-Fi网络安全套件。捕获:airodump-ng:用于捕获无线网络数据包;攻......
  • Docker快速入门到项目实战部署
    1.*docker*1.1*什么是docker*docker是快速构建、运行、管理应用的工具,简单来就是来帮助部署项目以及部署项目需要的一些组件的工具。1.2*卸载旧版*首先如果系统中已经存在旧的docker,则先卸载:yumremovedockerdocker-clientdocker-client-latestdocker-commondock......
  • 黑客技术渗透测试零基础入门教程—一文讲清什么是内网渗透!
    前言这是晓晓给粉丝盆友们整理的网络安全渗透测试入门阶段内网渗透与防御教程喜欢的朋友们,记得给我点赞支持和收藏一下,关注我,学习黑客技术。一.什么是内网渗透内网渗透是指攻击者已经进入了目标系统的内部网络,通过侧信道攻击、横向渗透等方式进一步控制系统,获取敏感信息......
  • Linux 磁盘、分区、文件系统、挂载
    1、磁盘Linux所有设备都被抽象成为一个文件,保存在/dev目录下。设备名称一般为hd[a-z]或sd[a-z]。如果电脑中有多硬盘,则设备名依次为sda、adb、sdc...以此类推IDE设备的名称为hd[a-z]。SATA、SCSI、SAS、USB等设备的名称称为sd[a-z]。 2、分区在Linux中,使用备名称+分区号......
  • 《Linux从小白到高手》综合应用篇:深入详解Linux swap及其调整优化
    1.引言:Swap是存储设备上的一块空间(分区),操作系统可以在这里暂存一些内存里放不下的东西。这从某种程度上相当于增加了服务器的可用内存。虽然从swap读写比内存慢,但总比没有好,算是内存不足时一种比较不错的解决方案。如果没有swap,则服务器一旦内存不足,就会开始终止应用以释......
  • linux系统文件打开数
    查看总的文件打开数lsof查看占用文件打开数最多的10个进制lsof|awk'{print$2}'|sort|uniq-c|sort-nr|head-n10#lsof|awk'{print$2}'|sort|uniq-c|sort-nr|head-n1031171104281139810061076110053836100435002144......
  • linux系统so动态库的搜索路径
    so动态库的搜索路径搜索的先后顺序编译目标代码时指定的动态库搜索路径环境变量LD_LIBRARY_PATH指定的动态库搜索路径配置文件/etc/ld.so.conf中指定的动态库搜索路径默认的动态库搜索路径/lib默认的动态库搜索路径/usr/libgcc编译指定动态库搜索路径-Wl,-rpath=<动态库......
  • 网络安全自学入门:(超详细)从入门到精通学习路线&规划,学完即可就业
      很多人上来就说想学习黑客,但是连方向都没搞清楚就开始学习,最终也只是会无疾而终!黑客是一个大的概念,里面包含了许多方向,不同的方向需要学习的内容也不一样。算上从学校开始学习,已经在网安这条路上走了10年了,无论是以前在学校做安全研究,还是毕业后在百度、360从事内核安全......