一、系统优化功能
1.安全软件的优化
禁用防火墙
firewalld
iptables
systemctl disable --now firewalld
-
查看防火墙状态
systemctl status firewalld
-
禁用selinux
等价于windows组策略
管理命令
getenforce 查看状态 enforcing 正在运行 permissive 有限的服务 setenforce 临时修改selinux状态 0
永久停用
vim /etc/selinux/config
7 SELINUX=disabled
2.ssh服务应用
作用:ssh协议 通过ssh协议实现远程登录
默认端口22
-
查看状态
systemctl status sshd
-
优化配置
vim /etc/ssh/sshd_config
基于安全考虑
1)修改默认端口
1- 端口范围 1~65535
2- 端口不可以和已知的其他端口冲突
2)禁用root直接通过ssh登录
38 PermitRootLogin no
ssh root@10.0.0.100 6666
3)尽量更新ssh版本
实现:等后续
-- 查看版本
ssh -V
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017
基于性能
79 GSSAPIAuthentication no 115 UseDNS no
3.ssh密钥对的应用
1.什么是密钥对
什么是对称加密?什么是非对称加密?
对称加密
:加密所使用工具和解密的工具是同一个 特点:效率高,算法简单,加密数位较短 加密安全性低 应用场景:数据完整性校验 md5sum test.txt >result.txt md5sum -c <result.txt
非对称加密
:加密工具和解密工具分别两个独立的工具的实现的
特点:加密安全性更高,算法复杂
密钥对
私钥:客户端所携带用于识别身份的秘钥 公钥:存储在目标服务器,用于验证客户端私钥身份的秘钥
-
生成密钥对
ssh-keygen
-t 指定加密算法
密钥对加密算法
dsa | ed25519 | rsa
dsa 底层使用的对称加密算法 rsa 非对称加密,加密安全性较高,效率比较高 2048位以上 ed25519 加密安全性更高,效率比较低
2.克隆虚拟机
链接克隆:所有系统底层文件调用模板机,占用空间较小,模板机不能动 完整克隆:完全复制了一个全新虚拟机,不需要依赖模板机
-
修改主机名和IP地址 hostnamectl set-hostname clone
vim /etc/sysconfig/network-scripts/ifcfg-eth0
-
通过密钥对实现免密登录 ssh-copy-id -i ~/.ssh/id_rsa.pub root@10.0.0.101
ssh-copy-id
是一个非常实用的工具,用于将你的公钥复制到远程主机的~/.ssh/authorized_keys
文件中,从而实现 SSH 无密码登录
-
.ssh中的相关文件
id_rsa 私钥 id_rsa.pub 公钥 known_hosts 记录所连接的目标主机的身份信息 authorized_keys 存放其他主机传递的公钥
二、文件传输的应用
1.windows向linux系统传输文件
依赖远程连接工具实现 Xshell
-
前提要求:linux安装文件传输的工具
yum install lrzsz -y rz 文件上传 sz 文件下载
ftp协议:文件传输协议 21端口
2.linux彼此之间文件传输--scp
作用:
1)实现cp功能
2)远程文件传输
依赖ssh服务实现的
拉:目标主机拉取文件到本地
推:将本地文件推动到目标主机的
-
将本地文件推动到目标主机的
scp /etc/hostname 10.0.0.101:/
-r 递归地复制目录及其中的所有文件
-p 选项用于保留原文件的修改时间、访问时间和权限
-P 指定端口
如果是复制目录并保留文件权限和时间戳,可以这样写:
scp -P 2222 -rp /etc/some_directory user@10.0.0.101:/path/to/destination
三、软件包管理
1.linux中常见的软件管理方式
1.rpm包管理器
rpm:用于管理系统中rpm软件包工具
功能:实现针对rpm包的安装,卸载,和查看功能,不支持自动下载rpm包
rpm -q 查询某软件是否安装 -ql 查找和某软件相关的文件有哪些 -qc 查找和某软件相关的配置文件 -qf 查询某文件属于哪个软件包 -ivh 安装rpm软件包 注意:无法自动解决依赖问题
rpm -evh 删除软件
2.自动化安装
红帽:yum安装
debian:ubuntu kail apt安装
-- 介绍
自动根据软件仓库,下载rpm包,并安装,自动解决软件依赖问题,自动安装,检测安装环境
-
前提:配置软件仓库--yum源
-
配置yum源
阿里云yun源
-----阿里云的Base源
curl -o /etc/yum.repos.d/CentOS-Base.repo repo安装包下载_开源镜像站-阿里云
-
配置epel源
curl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
-
-
yum相关的目录文件
/etc/yum.repos.d/
存放yum源文件的
[local]
name=local
--软件仓库的地址
baseurl=http://192.168.66.100:81
--是否开启完整性校验
gpgcheck=0
--校验文件的来源
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
--是否开启本仓库
enabled=1
检查当前可用的yum源
yum repolist
-
yum的常用命令
yum list -- 查看所有可以安装的软件有哪些 yum search -- 查找指定软件 yum list installed -- 查看已安装过的软件 yum provides 命令 -- 查询某命令属于哪个软件包 yum history -- 查看历史yum操作(概览) yum history info 7 ## 安装 yum install nginx php python -y yum reinstall 重装 yum update 更新 ## 删除 yum remove yum autoremove 删除软件同时删除依赖 (慎用)
-
yum缓存机制
/etc/yum.conf
keepcache 保留rpm包
yum clean all 清理缓存
yum makecache 简历缓存元数据的
3.源码编译安装
作用:支持私人订制,二次开发修改功能,自行编译,自行解决环境依赖问题 特点:灵活的安装程序,自定义安装路径,自定义功能,安装过程超级繁琐
步骤: 1- 准备系统编译依赖环境 2- 预编译:设计程序安装的计划 3- 编译:根据预编译计划封装源码 4- 安装:根据预编译计划,复制粘贴到目标位置
总结
-
系统优化 安全组件优化 ssh性能调优
-
ssh服务 ******
-
远程文件传输
-
软件管理 ******