unit9-unit13

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介:

9.openssh-server

功能:让远程主机可以通过网络访问sshd服务,开始一个安全shell

2.客户端连接方式

ssh远程主机用户@远程主机ip

[root@desktop0 ~]# ssh root@172.25.0.11

The authenticity of host '172.25.0.11 (172.25.0.11)' can't be established.

ECDSA key fingerprint is eb:24:0e:07:96:26:b1:04:c2:37:0c:78:2d:bc:b0:08.

Are you sure you want to continue connecting (yes/no)? yes##连接陌生主机时需要建立认证关系

Warning: Permanently added '172.25.0.11' (ECDSA) to the list of known hosts.

root@172.25.0.11's password: ##远程用户密码

Last login: Mon Oct  3 03:13:47 2016

[root@server0 ~]###登陆成功


ssh 远程主机用户@远程主机ip -X##调用远程主机图形工具

ssh     远程主机用户@远程主机ipcommand##直接在远程主机运行某条命3.sshkey加密

1.生成公钥私钥

[root@server0 ~]# ssh-keygen ##生成公钥私钥工具

Generating public/private rsa key pair.

Enter file in which to save the key (/root/.ssh/id_rsa):[enter] ##加密字符保存文件(建议用默认)

Created directory '/root/.ssh'.

Enter passphrase (empty for no passphrase): [enter]##密钥密码,必须>4个字符

Enter same passphrase again: [enter]##确认密码

Your identification has been saved in /root/.ssh/id_rsa.

Your public key has been saved in /root/.ssh/id_rsa.pub.

The key fingerprint is:

ab:3c:73:2e:c8:0b:75:c8:39:3a:46:a2:22:34:84:81 root@server0.example.com

The key's randomart image is:

+--[ RSA 2048]----+

|o                |

|E.               |

|..               |

|.  . o           |

|.o. * . S        |

|oo.o o   .       |

|+ =. .  .        |

|o. oo.+..        |

|    ..o*.        |

+-----------------+

[root@server0 ~]# ls /root/.ssh/

id_rsa  id_rsa.pub

id_rsa##私钥,就是钥匙

id_rsa.pub##公钥,就是锁

wKioL1ju__iQ5NopAAPMRwf3fYo048.png


2.添加key认证方式

[root@server0 ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub  root@172.25.0.11

ssh-copy-id##添加key认证方式的工具

-i##指定加密key文件

/root/.ssh/id_rsa.pub##加密key

root##加密用户为root

172.25.0.11##被加密主机ip


wKioL1jvAB-T86ExAATfKiKsLew687.png

3.分发钥匙给client主机

[root@server0 ~]# scp /root/.ssh/id_rsa root@172.25.0.10:/root/.ssh/


4.测试


[root@desktop0 ~]# ssh root@172.25.0.11##通过id_rsa直接连接不需要输入用户密码

Last login: Mon Oct  3 03:58:10 2016 from 172.25.0.250

[root@server0 ~]# 


4.提升openssh的安全级别

1.openssh-server配置文件

/etc/ssh/sshd_config

78 PasswordAuthentication yes|no##是否开启用户密码认证,yes为支持no为关闭

48 PermitRootLogin yes|no##是否允许超级用户登陆

49 AllowUsers student westos##用户白名单,只有在名单中出现的用户可以使用sshd建立shell

50 DenyUsers westos##用户黑名单

wKioL1jvAKKzGF4QAASiUnNg3ms236.png

10.系统日志

1.系统日志默认分类


/var/log/messages##系统服务及日志,包括服务的信息,报错等等

/var/log/secure##系统认证信息日志

/var/log/maillog##系统邮件服务信息

/var/log/cron##系统定时任务信息

/var/log/boot.log##系统启动信息


2.日志管理服务rsyslog


1.rsyslog负责采集日志和分类存放日志

2.rsyslog日志分类

vim /etc/rsyslog.conf##主配置文件

服务.日志级别/存放文件

*.*/var/log/westos


systemctl restart rsyslog

格式

日志设备(类型).(连接符号)日志级别   日志处理方式(action)

日志设备(可以理解为日志类型):

auth        ##pam产生的日志

authpriv    ##ssh,ftp等登录信息的验证信息

cron        ##时间任务相关

kern        ##内核

lpr         ##打印

mail        ##邮件

mark(syslog)–rsyslog##服务内部的信息,时间标识

news        ##新闻组

user        ##用户程序产生的相关信息

uucp        ##unix to unix copy, unix主机之间相关的通讯

local 1~7   ##自定义的日志设备

日志级别

debug       ##有调式信息的,日志信息最多

info        ##般信息的日志,最常用

notice      ##最具有重要性的普通条件的信息

warning     ##警告级别

err         ##错误级别,阻止某个功能或者模块不能正常工作的信息

crit        ##严重级别,阻止整个系统或者整个软件不能正常工作的信息

alert       ##需要立刻修改的信息

emerg       ##内核崩溃等严重信息

none        ##什么都不记录

注意:从上到下,级别从低到高,记录的信息越来越少

.xxx: 表示大于等于xxx级别的信息

.=xxx:表示等于xxx级别的信息

.!xxx:表示在xxx之外的等级的信息

实例

1. 记录到普通文件或设备文件::

*.*     /var/log/file.log   # 绝对路径

*.*     /dev/pts/0

测试: logger -p local3.info ‘KadeFor is testing the rsyslog and logger ‘   logger 命令用于产生日志

2. 发送给用户(需要在线才能收到)

*.*   root

*.*   root,kadefor,up01     # 使用,号分隔多个用户

*.*   *         # *号表示所有在线用户

3. 忽略,丢弃

local3.*   ~        # 忽略所有local3类型的所有级别的日志

4. 执行脚本::

local3.*    ^/tmp/a.sh      # ^号后跟可执行脚本或程序的绝对路径

# 日志内容可以作为脚本的第一个参数.

#  可用来触发报警

日志同步


systemctl stop firewalld ##关闭两台主机的火墙


配置日志发送方

*.*             @172.25.0.11##通过udp协议把日志发送到11主机,@udp,@@tcp


配置日志接受方

15 $ModLoad imudp##日志接收插件

16 $UDPServerRun 514##日志接收插件使用端口



netstat -anulpe | grep rsyslog

udp        0      0 0.0.0.0:514             0.0.0.0:*                           0          122073     32654/rsyslogd      

udp6       0      0 :::514                  :::*                                0          122074     32654/rsyslogd      


测试

> /var/log/messages##两边都作

logger test message##日志发送方


tail -f /var/log/message##日志接收方

日志采集格式

$template WESTOS, "%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"


%timegenerated%##显示日志时间

%FROMHOST-IP%##显示主机ip

%syslogtag%##日志记录目标

%msg%##日志内容

\n##换行

3.日志分析工具journal

systemd-journald##进程名称

journalctl##直接执行,浏览系统日志

-n 3##显示最新3条

-p err##显示报错

-f##监控日志

--since --until## --since "[YYYY-MM-DD] [hh:mm:ss]" 从什么时间到什么时间的日志

-o verbose##显示日志能够使用的详细进程参数

##_SYSTEMD_UNIT=sshd.service服务名称

##_PID=1182进程pid

对systemd-journald管理

##默认情况下此程序会忽略重启前的日志信息,如不忽略:

mkdir /var/log/journal

chown root:systemd-journal /var/log/journal

chmod 2755 /var/log/journal

killall -1 systemd-journald

ls /var/log/journal/4513ad59a3b442ffa4b7ea88343fa55f

system.journal user-1000.journal

wKiom1jvAgTQtPMqAAh34KYpBD8939.png

wKioL1jvAgry0E_sAAr_S6eYm_o490.png

wKioL1jvAg-x5FnvAAlZhmVFrFo022.png

wKiom1jvAhaDDjkfAAsXWo4mOOc590.png

wKioL1jvAhviVYEgAAmTj3ce7gc626.png

  1. wKioL1jvAiDQj-b4AAlMrssPviI352.png

wKiom1jvAiXDtUzzAAmAonh4klY958.png

wKioL1jvAirhYnskAAlKR-h7Z9g239.png

wKiom1jvAi_zMVL5AAkNqD0Bmn0774.png

wKioL1jvAjTQZCRrAAmseOpraU0199.png

wKiom1jvAjaClZuCAAUPyDJ9rgU244.png

4.时间同步

1.服务端

yum install chrony -y##安装服务

vim /etc/chrony.conf##主配置文件

21 # Allow NTP client access from local network.

22 allow 172.25.0.0/24##允许谁去同步我的时间

27 # Serve time even if not synchronized to any NTP server.

28 local stratum 10##不去同步任何人的时间,时间同步服务器级别

systemctl restart chronyd

systemctl stop firewalld 

2.客户端

vim /etc/chrony.conf

  3 server 0.rhel.pool.ntp.org iburst

  4 server 1.rhel.pool.ntp.org iburst====> server ntpserverip iburst

  5 server 2.rhel.pool.ntp.org iburst====>

  6 server 3.rhel.pool.ntp.org iburst

5.timedatectl命令

timedatectlstatus##显示当前时间信息

set-time##设定当前时间

set-timezone##设定当前时区

set-local-rtc 0|1##设定是否使用utc时间

11.管理网络

1.ip基础知识

1.ipv4

2进制32位-----10进制


172.25.0.10/255.255.255.0

172.25.0.10:ip地址

255.255.255.0:子网掩码

子网掩码255位对应的ip位为网络位

子网掩码0对应的ip位为主机位


2.配置ip

<<图形化>>

1.图形界面

nm-connection-editor

2.文本化图形

nmtui

<<命令>>

ifconfig 网卡 ip netmask##临时设定

nmcli connection add type ethernet con-name westos ifname eth0 autoconnect yes

nmcli connection add type ethernet con-name westos ifname eth0 ip4 ip/24

nmcli connection delete westos

nmcli connection show 

nmcli connection down westos

nmcli connection up westos

nmcli connection modify "westos" ipv4.addresses newip/24

nmcli connection modify "westos" ipv4.method <auto|manual>

nmcli device connect eth0

nmcli device disconnect eth0

nmcli device show 

nmcli device status

<<文件>>

dhcp##动态获取

vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0##接口使用设备

BOOTPROTO=dhcp##网卡工作模式

ONBOOT=yes##网络服务开启时自动激活

NAME=eth0##网络接口名称

:wq

systemctl restart network

static|none##静态网络

vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0 ##设备

BOOTPROTO=static|none ##设备工作方式

ONBOOT=yes ##开启网络服务激活设备

NAME=eth0 ##网络接口名称

IPADDR=172.25.0.100  ##IP

NETMASK=255.255.255.0 | PREFIX=24 ##子网掩码

3.gateway 网关

1.路由器

主要功能是用来作nat的

dnat目的地地址转换

snat源地址转2.网关

路由器上和自己处在同一个网段的那个ip

3.设定网关

systemctl stop NetwrokManager

vim /etc/sysconfig/network##全局网关

GATEWAY=网关ip

vim /etc/sysconfig/network-scripts/ifcfg-网卡配置文件 ##网卡接口网关

GATEWAY=网关ip

systemctl restart netwrok

route -n##查询网关

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

0.0.0.0   (网关)172.25.0.254    0.0.0.0         UG    0      0        0 eth0

172.25.0.0      0.0.0.0         255.255.255.0   U     0      0        0 eth0

5.dns

1.dns

dns是一台服务器

这太服务器提供了回答客户主机名和ip对应关系的功能

2.设定dns

vim /etc/resolv.conf

nameserver dns服务器ip

vim /etc/sysconfig/network-scripts/ifcfg-网卡配置文件

DNS1=dns服务器ip

3.本地解析文件

vim /etc/hosts

ip主机名称

4.本地解析文件和dns读取的优先级调整

/etc/nsswitch.conf

 38 #hosts:     db files nisplus nis dns

 39 hosts:      files dns##files代表本地解析文件,dns代表dns服务器,那个在前面那个优先

5.dhcp服务的配置

12.不同系统之间的文件传输

1.文件归档

文件归档,就是把多个文件变成一个归档文件

2.

tar c ##创建

f ##指定归档文件名称

t ##显示归档文件中的内容

r ##向归档文件中添加文件

--get ##取出单个文件

--delete ##删除单个文件

x ##取出归档文件中的所有内容

-C ##指定解档目录

-z ##gz格式压缩

-j ##bz2格式压缩

-J ##xz格式压缩


2.压缩

gz

gzip etc.tar ##压缩成gz格式

gunzip  etc.tar.gz ##解压gz格式压缩包

tar zcf etc.tar.gz /etc ##把文件归档为tar并压缩成gz

tar zxf etc.tar.gz ##解压并解档gz格式压缩包


bz2

bzip2 etc.tar ##压缩成bz2格式

bunzip2 etc.tar.bz2 ##解压bz2格式压缩包

tar jcf etc.tar.bz2 /etc ##把文件归档为tar并压缩成bz2

tar jxf etc.tar.bz2 ##解压并解档bz2格式压缩包


xz

xz etc.tar  ##压缩成xz格式

unxz  etc.tar.xz ##解压xz格式压缩包

tar Jcf etc.tar.xz /etc ##把文件归档为tar并压缩成zx

tar Jxf etc.tar.xz ##解压并解档xz格式压缩包


zip


zip -r etc.tar.zip etc.tar ##压缩成zip格式

unzip etc.tar.zip ##解压zip格式压缩包



####3.系统中的文件传输####

scp file  username@ip:/dir ##上传

scp    username@ip:/dir/file  /dir ##下载


rsync [参数] file username@ip:/dir

rsync -r ##同步目录

-l ##不忽略链接

-p ##不忽略文件权限

-t ##不忽文件时间戳

-g ##不忽文件所有组

-o ##不忽文件所有人

-D ##不忽略设备文件

wKioL1jvCu-hc2kWAAhh06--XGo342.png

wKioL1jvCvXBHkV6AAk5LUYPCAc987.png

wKiom1jvCvqT7J9TAAk3MIjrLHY381.png

wKioL1jvCv_AlHfUAAlCYS2Jl_g524.png

wKioL1jvCwXj1FZGAAkuW3AKBp8678.png

wKioL1jvCwrALOtoAAnkA-HrBF8839.png

wKiom1jvCxDgPjNKAAoVIlUUjxI508.png

wKioL1jvCxXD3tO4AAi-bUUTnNw963.png


13软件安装


####1.软件名称识别####

[abrt-addon-ccpp]-[2.1.11-19].[el7].[x86_64].rpm ##rpm结尾的适用与redhat操作系统

       ||      ||         ||       ||

    软件名称    软件版本 软件适用系统 64位



####2.如何安装软件####

1.rpm

rpm -ivh name.rpm ##安装 ,-v显示过程,-h指定加密方式为hash

-e name ##卸载

-ql name ##查询软件生成文件

-qlp name.rpm ##查询软件安装后会生成什么文件

-qa ##查询系统中安装的所有软件名称

-qa |grep name ##查询软件是否安装

-q name ##。。。。

-qp name.rpm ##查询软件安装包安装后的名字

-qf filename ##查看filename属于那个安装包

-ivh name.rpm --force ##强制安装

-qi name ##查看软件信息

-Kv name.rpm ##检测软件包是否被篡改

-qp name.rpm --scripts ##检测软件在安装或卸载过程中执行的动作


2.yum

yum

上层软件管理工具,最重要的功能是可以解决软件的倚赖关系

yum能够投入使用的前提是必须要有yum源,以及配置源的指向文件


###server源端####

1.从网络上下本机系统版本匹配的iso镜像文件

rhel-server-7.1-x86_64-dvd.iso


2.把rhel-server-7.1-x86_64-dvd.iso挂在到/mnt以便访问镜像中的文件

mount rhel-server-7.1-x86_64-dvd.iso /mnt


3.配置本机yum源指向

rm -fr /etc/yum.repos.d/*

vim /etc/yum.repos.d/yum.repo

[Server]

name=rhel7.1

baseurl=file:///mnt

gpgcheck=0


4.安装资源共享服务

yum install httpd -y

systemctl stop firewlsh-plugin-11.2.202.451-release.x86_64.rpmld

systemctl disable firewalld 

systemctl start httpd 

systemctl enable httpd 


5.建立共享目录,并挂在镜像文件到共享目录上

mkdir /var/www/html/rhel7.1

umount /mnt

mount rhel-server-7.1-x86_64-dvd.iso /var/www/html/rhel7.1


6.测试

在浏览器中输入:http://本机ip/rhel7.1

可以看到镜像中的内容


7.修改本机yum源指向

[server]

name=rhel7.1

baseurl=file:///var/www/html/rhel7.1

gpgcheck=0


8.开机自动挂在iso

vim /etc/rc.d/rc.local

mount rhel-server-7.1-x86_64-dvd.iso /var/www/html/rhel7.1

:wq


chmod +x /etc/rc.d/rc.local


9.第三方软件仓库的搭建

把所有的rpm软件包放到一个目录中,这个目录中只能存在rpm文件

createrepo -v /rpm存放目录

vim /etc/yum.repos.d/xxx.repo

[Software]

name=software

baseurl=file:///rpm存放目录

gpgcheck=0


####client指向端####

vim /etc/yum.repos.d/xxxx.repo ##仓库指向文件位置

[xxxx] ##自定义软件仓库名称

name=xxxx ##自定义软件仓库描述

baseurl=ftp://|http://|file:// ##仓库位置

gpgcheck=0 ##不检测gpgkey

##gpgkey表示软件的出品logo


例子:

vim /etc/yum.repos.d/yum.repo

[Server]

name=rhel7.1

baseurl=ftp://172.25.0.254/pub/rhel7.1

gpgcheck=0

:wq


yum clean all ##清空yum缓存识别新配置


####yum命令####

yum install softwarename ##安装

repolist ##列出设定yum源信息

remove softwarename ##卸载

list softwarename ##查看软件源中是否有次软件

list all ##列出所有软件名称

list installd ##列出已经安装的软件名称

list available ##列出可以用yum安装的软件名称

clean all ##清空yum缓存

search softwareinfo ##根据软件信息搜索软件名字

whatprovides filename ##在yum源中查找包含filename文件的软件包

update ##更新软件

history ##查看系统软件改变历史

reinstall softwarename ##重新安装

info softwarename ##查看软件信息

groups list ##查看软件组信息

groups info softwaregroup ##查看软件组内包含的软件

groups install softwaregroup ##安装组件

groups remove softwaregroup ##卸载组件


wKiom1jvC-CBiNBSAAeViK85CJs538.png

wKioL1jvC-TSLZ77AAhJgxxpSNQ167.png

wKioL1jvC-eDogrKAAbYvHaWYiE590.png

wKiom1jvC-vCanNCAAgr0WGYA3c987.png

wKioL1jvC-_y98ePAAgxaOoBsBU061.png

wKioL1jvC_CSwxVYAAGmJVtxAzQ536.png

wKiom1jvC_OgrqK-AAbxUgXMO5g229.png

wKioL1jvC_fCFh-nAAecXUCDLTo011.png

wKiom1jvC_vyQMqtAAgSI9CVwmQ114.png

wKioL1jvC__C2hfSAAfXsmoAqRQ249.png

wKiom1jvDAOBN3KFAAhkdNJrKJA598.png


























本文转自铁骑传说51CTO博客,原文链接: http://blog.51cto.com/ybzbfs/1915549,如需转载请自行联系原作者

相关文章
|
2月前
|
数据采集 Web App开发 自然语言处理
新闻热点一目了然:Python爬虫数据可视化
新闻热点一目了然:Python爬虫数据可视化
|
BI 数据挖掘
公开课02期 |基于宜搭的《客户关系管理(CRM)》应用搭建
主要展示宜搭搭建CRM应用的大致结构,用户可以根据自己的需求搭建简单或复杂的CRM应用。
23913 1
公开课02期 |基于宜搭的《客户关系管理(CRM)》应用搭建
|
7月前
|
自然语言处理 前端开发 Cloud Native
吐血整理Bolt.diy 部署与应用攻略
Bolt.diy 是一款无需代码基础即可创建个性化网站的工具,基于阿里云函数计算 FC 和百炼大模型服务,通过自然语言交互实现全栈开发。用户只需描述需求,Bolt.diy 即可快速生成网站,支持灵活定制与二次开发。部署简单,提供免费试用额度,适合从初学者到专业开发者各类人群。无论是快速原型设计、教育工具开发还是企业级应用,Bolt.diy 均展现出高效与便捷的优势。然而,新手可能需要更多时间熟悉云服务配置与高级功能。
649 3
|
4月前
|
人工智能 关系型数据库 API
快速部署Dify on DMS,一站式开发智能体应用
Dify 是一款开源的 Agent 应用开发平台,结合后端即服务与 Agentic 工作流,支持快速构建生产级 AI 应用。无论技术背景如何,用户都能轻松参与 AI 项目与数据管理,开发企业级应用。
983 144
|
8月前
|
数据采集 存储 数据可视化
分布式爬虫框架Scrapy-Redis实战指南
本文介绍如何使用Scrapy-Redis构建分布式爬虫系统,采集携程平台上热门城市的酒店价格与评价信息。通过代理IP、Cookie和User-Agent设置规避反爬策略,实现高效数据抓取。结合价格动态趋势分析,助力酒店业优化市场策略、提升服务质量。技术架构涵盖Scrapy-Redis核心调度、代理中间件及数据解析存储,提供完整的技术路线图与代码示例。
782 0
分布式爬虫框架Scrapy-Redis实战指南
|
7月前
|
存储 人工智能 缓存
全新「宜搭出海版」,跨境业务一搭搞定!
在全球化竞争中,中国出海企业面临高增长与抗风险的双重挑战。宜搭基于低代码平台推出「宜搭出海版」,专注解决跨境业务的核心痛点。提供15种语言+AI翻译、全球文件速传、国际化时区协同、全球地址定位、国际化邮箱、货币支持及离线能力等功能,助力企业实现高效、敏捷的全球业务拓展。版本包括面向中国出海企业的“宜搭出海版”和面向海外客户的“宜搭国际版”。
344 17
|
存储 人工智能 索引
Python中的嵌套字典访问与操作详解
Python中的嵌套字典访问与操作详解
454 1
|
人工智能 数据可视化 开发者
快速部署 Dify 社区版
Dify.AI 是一款 LLMOps 平台,帮助开发者更简单、更快速地构建 AI 应用。它的核心理念是通过可声明式的 YAML 文件定义 AI 应用的各个方面,包括 Prompt、上下文和插件等。Dify 提供了可视化的 Prompt 编排、运营、数据集管理等功能。这些功能使得开发者能够在数天内完成 AI 应用的开发,或将 LLM 快速集成到现有应用中,并进行持续运营和改进,创造一个真正有价值的 AI 应用。本文介绍使用计算巢快速部署 Dify 社区版。
快速部署 Dify 社区版
|
运维 监控 NoSQL
|
机器学习/深度学习
上三角矩阵(Upper Triangular Matrix
上三角矩阵(Upper Triangular Matrix)是一种特殊形式的矩阵,其非零元素仅位于主对角线以上。在数学和工程领域中,上三角矩阵通常用于线性代数和微积分等问题。以下是一些关于上三角矩阵的特点和应用:
2392 0