基础知识

Linux 基础安全介绍

SSH 登陆方式

  • SSH 全称 Secure Shell,是一种加密的网络传输协议
  • 安全的隧道用于客户端与服务器连接
  • 使用对称加密进行验证提高整个连接的安全性

    SSH 基本安全配置

  1. 生成密钥:’’ ssh-keygen ‘’ ,选择使用默认路径、输入密码生成一个新的 ssh 密钥,借助 ssh 密钥登录到服务器,并且进行非对称加密, 使得连接着更加安全,输入 “ls-a” 查看所有目录,输入 “cd.ssh” 进入ssh 目录,执行 ls 查看目录下有一个文件记录了授权信息,使用 “nano” 编辑,vi 也可以进行文件编辑。
  2. 配置 SSH:”cd/etc/ssh” 进入 ssh 目录,执行 ls 查看配置文件,sshd_config 文件最为主要,记录了 ssh 具体配置项目,比较重要的是 port,修改 port 使 ossh 监听除了 22 以外的其他端口,避免自定义端口被他人爆破。将 PermitRootLogin 并且设置为 yes 表示允许使用 Root 用户登录。实际生产环境中,使用 Root 用户登录,使用其他权限更低的用户进行日常操作,仅在必要时刻选择 Root 用户登录。
  3. “root@izm5eg2uv3uqyogkcgr66nz ssh”设置 no 是一种比较安全的方式,设置 yes 允许用户通过密码进行登录,将其设置为 no 需要通过输入正确的输入登录,正确输入更加安全,在设置完成后,保存并且重启,通过修改端口号,配置正确登录等方式提升 ssh 登录安全性。

文件管理

  1. Linux 系统目录结构 FHS 介绍

FHS 全称(Filesystem Hieratchy Standard)中文名文件系统结构层次,定义了Linux操作系统中的主要目录和目录结构。FHS 由 Linux 基金会维护,当前版本是 3.0

目录 描述
/ 根目录
/bin 可执行文件,比如 ls 命令
/boot 引导程序文件,内核,以及 initrd 等文件
/dev 设置文件,比如磁盘设备
/etc 系统范围的配置文件
/home 用户 home 目录,个人用户的配置
/media 可移除的媒体,cd-rom 等的挂载点
/lib 和 /lib64 /bin 和 /sbin 中用到的库文件存放位置
/mnt 临时挂载点
/opt 可选的应用包,一般用于存放一些直接提供二进制程序的非开源包
/proc 虚拟问价系统
/root root 用户的 home 目录
/run 存放一些 pid 和 socket 文件
/sbin 系统的可执行文件,init ,mount 等
/sys 非FHS保准,但是大部分发行版都有,虚拟文件系统,用来对内核和设备驱动做设置
/usr Unix Software Resource 绝大多数的程序和应用工具安装在这里,结果和/非常相似
/usr/bin
/usr/lib
/usr/share 和计算机
/usr/src 源代码存放路径,如Linux 内核源码
/var 在程序运行中内容不断变化的文件,比如日志
/tmp 临时文件系统,重启后内容丢失
  1. 操作文件的几个常用命令,Linux 中一切皆文件 | 命令 | 作用 | | —- | —- | | ls | list列出目录内容 | | cat | 输出文件内容到标准输出 | | less | 查看文件内容 | | more | 查看文件内容 | | head | 查看文件头部 | | tail | 查看文件尾部 | | nano | 编辑文件的工具 | | grep | 查找文本中指定关键词的行 |

  2. man 系统 | 章节 | 说明 | | —- | —- | | 1 | 一般命令 | | 2 | 系统调用 | | 3 | 库函数 | | 4 | 特殊文件和驱动程序 | | 5 | 文件格式约定 | | 6 | 游戏和屏保 | | 7 | 杂项 | | 8 | 系统管理命令和守护进程 |

Linux 服务与日志

常驻后台,不是直接运行的,这种程序一般叫做守护进程daemon

  1. 常见服务
  • SSH 用于能随时连接服务器,提供该服务的程序是 sshd
  • cron 提供定时任务的服务,提供这个服务的程序是 crond
  1. 常见的服务管理方式

systemd 是一种 init 程序,用于初始化系统,提供了对服务的管理方式。

命令 说明
systemctl status crond 查看某个服务的状态
systemctl start crond 启动某个服务
systemctl stop crond 停止某个服务
systemctl enable crond 设置某个服务开机启动
systemctl disable crond 移除某个服务开机启动
systemctl restart crond 重启某个服务
  1. 日志与日志查询方式

日志是由程序在运行过程中打印出来的一些执行流程或者记录信息的文本;

命令 说明
journalctl -x 查看日志
journalctl -xe 跳到尾部查看日志

通过直接查看文本方式查询

日志路径 说明
/var/log/message 全局系统日志,包括登录,对服务启停认证等
/var/log/lastlog 不是一个文本文件,需要 lastlog 命令读,保存了最近的用户登录信息
/var/log/yum.log 最近通过yum 安装的程序的日志
/var/log/cron 定时任务日志
/var/log/boot.log 启动日志
/var/log/kern 内核日志,也可以通过 dmesg 查看