• day5-ssh


    ssh协议,Secure Shell

    为客户提供安全的Shell环境

    默认端口:TCP 22

    OpenSSH 服务

    服务名称 sshd

    主程序 /usr/sbin/sshd /usr/bin/ssh

    配置文件 /etc/ssh/sshd_config

        /etc/ssh/ssh_config

    ssh 选项 服务器

    ssh 选项 用户名@服务器

    ssh 选项 -l 用户名 服务器

    -p 端口:连接到指定的端口

    -X:启用X转发,在本机运行对方的图形程序

    日志分类

    由系统服务rsyslog系统管理,格式相似

    用户日志

    记录用户登录及退出系统的事件

    程序日志

    由各种服务/程序独立管理,要格式不统一

    内核及系统日志-采用文本格式进行记录

    wKioL1esLPjhLK8lAAB1F_oel6U603.png

    用户日志

    采用二进制的Data格式

    无法用普通文本阅读工具来分析

    wKiom1esLUyhulUOAABXFuZaRs0071.png

    程序日志

    web服务器access_log  error_log

    ...

    日志分析工具

    tail less grep等文本浏览/检索命令

    awk sed等格式化过滤工具

    专用分析工具

    Webmin系统管理套件

    Webalizer、AWStats等日志统计套件

    跟踪新增日志消息  时时更新

    tail -f

    [root@localhost logrotate.d]# tail -f /var/log/messages 

    Aug 11 21:54:58 localhost tpvmlpd2[2258]: device type not supported

    Aug 11 21:55:13 localhost tpvmlpd2[2259]: device type not supported

    Aug 11 21:55:28 localhost tpvmlpd2[2260]: device type not supported

    Aug 11 21:55:43 localhost tpvmlpd2[2261]: device type not supported

    Aug 11 21:55:58 localhost tpvmlpd2[2262]: device type not supported

    Aug 11 21:55:58 localhost tpvmlpd2[2060]: aborting

    Aug 11 22:50:26 localhost kernel: Kernel logging (proc) stopped.

    Aug 11 22:50:26 localhost rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="1756" x-info="http://www.rsyslog.com"] exiting on signal 15.

    Aug 11 22:50:26 localhost kernel: imklog 5.8.10, log source = /proc/kmsg started.

    Aug 11 22:50:26 localhost rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="2412" x-info="http://www.rsyslog.com"] start

    用户日志分析

    users who w

    查看已登录的用户信息 详细度不同

    last lastb 命令

    [root@localhost logrotate.d]# users

    root

    [root@localhost logrotate.d]# who

    root     pts/0        2016-08-11 22:17 (192.168.100.1)

    [root@localhost logrotate.d]# w

     23:48:56 up  1:58,  1 user,  load average: 0.00, 0.00, 0.00

    USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT

    root     pts/0    192.168.100.1    22:17    0.00s  0.43s  0.04s w

    [root@localhost logrotate.d]# last -4

    root     pts/0        192.168.100.1    Thu Aug 11 22:17   still logged in   

    reboot   system boot  2.6.32-358.el6.x Thu Aug 11 21:50 - 23:49  (01:58)    

    root     pts/0        192.168.100.1    Thu Aug 11 00:40 - crash  (21:09)    

    root     pts/1        192.168.100.1    Thu Aug 11 00:37 - 00:40  (00:03)    

    wtmp begins Tue Aug  9 01:31:10 2016

    [root@localhost logrotate.d]# lastb -2

    btmp begins Tue Aug  9 00:20:07 2016

    内核及系统日志分析

    时间标签      主机名  程序名    消息内容

    [root@localhost logrotate.d]# tail -2 /var/log/messages

    Aug 11 23:52:53 localhost yum[2471]: Installed: mailcap-2.1.31-2.el6.noarch

    Aug 11 23:53:04 localhost yum[2471]: Installed: httpd-2.2.15-26.el6.centos.x86_64

    rsyslog日志服务

    [root@localhost ~]# rpm -qa|grep rsyslog

    rsyslog-5.8.10-6.el6.x86_64

    主程序 /sbin/rsyslogd

    配置文件 /etc/rsyslog.conf

    [root@localhost ~]# grep -vE '^#|^$' /etc/rsyslog.conf

    $ModLoad imuxsock # provides support for local system logging (e.g. via logger command)

    $ModLoad imklog   # provides kernel logging support (previously done by rklogd)

    $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat

    $IncludeConfig /etc/rsyslog.d/*.conf

    *.info;mail.none;authpriv.none;cron.none                /var/log/messages

    authpriv.*                                              /var/log/secure

    mail.*                                                  -/var/log/maillog

    cron.*                                                  /var/log/cron

    *.emerg                                                 *

    uucp,news.crit                                          /var/log/spooler

    local7.*                                                /var/log/boot.log

    $template SpiceTmpl,"%TIMESTAMP%.%TIMESTAMP:::date-subseconds% %syslogtag% %syslogseverity-text%:%msg:::sp-if-no-1st-sp%%msg:::drop-last-lf% "

    :programname, startswith, "spice-vdagent"/var/log/spice-vdagent.log;SpiceTmpl

    *.*/var/log/admin.log

    日志消息分8个优先级

    数值越小,事件越紧急/重要

    [root@localhost ~]# man 2 syslog |grep 'KERN_'

           #define KERN_EMERG    "<0>"  /* system is unusable               */

           #define KERN_ALERT    "<1>"  /* action must be taken immediately */

           #define KERN_CRIT     "<2>"  /* critical conditions              */

           #define KERN_ERR      "<3>"  /* error conditions                 */

           #define KERN_WARNING  "<4>"  /* warning conditions               */

           #define KERN_NOTICE   "<5>"  /* normal but significant condition */

           #define KERN_INFO     "<6>"  /* informational                    */

           #define KERN_DEBUG    "<7>"  /* debug-level messages             */

    /etc/rsyslog.conf格式

    设备.优先级 记录位置

    wKioL1esMU-xOrkGAACb6qAgq04922.png-wh_50

    循环备份机制

    logrotate轮转

    减小日志文件大小 降低分析难度

    丢弃过期日志以节省空间

    结合cron计划任务每天执行

    [root@localhost ~]# rpm -ql logrotate |grep /etc

    /etc/cron.daily/logrotate    每日计划执行脚本

    /etc/logrotate.conf    主配置文件

    /etc/logrotate.d    存放用户定义的策略

    [root@localhost ~]# vim /etc/logrotate.conf 

    /var/log/wtmp {    启用轮转日志文件

        monthly    每月轮转一次

        create 0664 root utmp    建立新文件并设权限

            minsize 1M    日志达到1MB才开始轮转

        rotate 1    只保留一个备份

    }

    wKioL1esNDDSVQkfAAB8F1sqhQs471.png

    手工执行轮转

    [root@localhost ~]# logrotate /etc/logrotate.conf

    [root@localhost ~]# /etc/init.d/rsyslog restart

    关闭系统日志记录器:                                       [确定]

    启动系统日志记录器:                                       [确定]

    [root@localhost ~]# tail -1 /etc/rsyslog.conf 

    *.*/var/log/admin.log

    [root@localhost ~]# 

    遗忘root用户密码

    故障现象

    无法执行需要root权限的管理操作

    若没有其他可用账号,将无法登录系统

    引导进入单用户模式,然后重设密码

    wKioL1etM0qgcaGbAAAUriUurqw093.png

    wKiom1etM2rwBJ7YAAAceC8MfPY024.png

    在e进去 在最后面加singer 或 s 或 1

    输入完成按回车,在按b键进入单用户模式

    修复MBR扇区故障

    备份MBR扇区,存放到其他磁盘

    破坏MBR扇区数据,重启后无法进系统

    RHEL6光盘引导进入急救模式    Rescue installed system

    从备份文件中恢复MBR扇区

    [root@localhost ~]# df -h |grep /boot

    /dev/sda1             194M   29M  156M  16% /boot

    备份MBR

    [root@localhost ~]# dd if=/dev/sda of=/mnt/sda1.mbr bs=512 count=1

    记录了1+0 的读入

    记录了1+0 的写出

    512字节(512 B)已复制,0.000431613 秒,1.2 MB/秒

    破坏MBR

    [root@localhost ~]# dd if=/dev/zero of=/dev/sda bs=512 count=1

    记录了1+0 的读入

    记录了1+0 的写出

    512字节(512 B)已复制,0.0110609 秒,46.3 kB/秒

    [root@localhost ~]# mount |tail -1

    /dev/sdb1 on /mnt type ext4 (rw)

    进入光盘救援模式

    wKiom1etVAzRduNYAAMGEgB7nEI138.png

    wKiom1etU9rh5-yKAAAcNGyeDqE216.png

    wKiom1etU9rz1vAaAAANisG45_8701.png

    wKioL1etU9rgQTj_AAALhaFiT-Y516.png

    如果需要网络可启动网络功能

    wKioL1etU9uBoG7PAAAIhhKHT-k383.png

    wKiom1etU9vDmlttAAAlHVa-Hos168.png

    wKioL1etU9vDFBH-AAAI5Y6zwlU880.png

    挂载光盘进行

    wKiom1etT8PBolNAAAArUtFWpCs709.png

    修复GRUB引导故障

    移除/boot/grub/grub.conf

    重启后无法进系统

    grub>提示符后,手动执行引导

    进入系统后重建grub.conf配置文件

    wKiom1etUOzS8F9HAAAt79PVdfQ422.png

    开机出现这样

    wKiom1etURrRjmVDAAAPVmR3ZbM678.png

    使用这种方法可临时进入系统

    注意:root指定的设备一定要指定对,否则进不去

    wKioL1etWnmz1r7JAAAUfEOcoXQ354.png

    wKioL1eute6zQJE7AAAl8L3NlOQ239.png

    修复GRUB也遭破坏时

    先进入光盘救援模式

    查找根

    wKiom1eutg3SUiGsAAAXFpgWxqI273.png

    挂载设备找到GRUB目录

    建立GRUB文件

    wKiom1eut5XjG-gMAAAGMlibiLI877.png

    重新建立grub.conf 就可以了

    wKioL1euvs_T9DwaAAAND33zrDo022.png

    wKiom1euvs_RhRBzAAAZePqqdhI296.png

    当GRUB程序损坏时

    需进入救援模式重新安装GRUB程序

    重写写引导文件

    有一个步骤需注意下

    wKioL1euwVKSom-CAAAjAhUyk0M580.png

    wKioL1euwYaC8jk0AAATKPf_ZfM575.png

    wKiom1euwZ6yjoXKAAAHrFUeLyY888.png

    挂载设备,并安装GRUB程序   安装时需等待一会

    wKiom1euwhmhfgAlAAAUybmXkD8938.png

    看看有没有grub.conf文件

    wKioL1euwrXiz1mGAAAG_kbnfFA475.png

    没有则新那建文件,有的话检查文件格式

    wKioL1euvs_T9DwaAAAND33zrDo022.png

    编辑好文件保存退出,输入exit退出,然后在reboot进入系统

    注:

    如何开机出现SELINUX机制注意关闭

    /etc/selinux/config

    改成

    wKiom1euzuCQC1yBAAAbb6dTVi4535.pngwKioL1euzgqQTmj7AAAc8a0Eqdw218.png

    inittab文件丢失,是以3级别进入系统

    /etc/fstab

    文件编辑错误

    wKioL1eu0xCwqrbMAAAczjaUViU387.png

    进入单用户或救援模式修复fstab文件

    破坏

    [root@localhost ~]# dd if=/dev/zero of=/dev/sdb1 bs=512 count=4

    记录了4+0 的读入

    记录了4+0 的写出

    2048字节(2.0 kB)已复制,0.000182514 秒,11.2 MB/秒

    [root@localhost ~]# mount /dev/sdb1 /test

    mount: you must specify the filesystem type

    修复文件

    [root@localhost ~]# fsck -y -t ext4 /dev/sdb1

    fsck from util-linux-ng 2.17.2

    e2fsck 1.41.12 (17-May-2010)

    fsck.ext4: 超级块无效, trying backup blocks...

    /dev/sdb1 was not cleanly unmounted, 强制检查.

    第一步: 检查inode,块,和大小

    第二步: 检查目录结构

    第3步: 检查目录连接性

    Pass 4: Checking reference counts

    第5步: 检查簇概要信息

    Free 块s count wrong for 簇 #1 (32707, counted=32706).

    处理? 是

    Free 块s count wrong (235897, counted=235896).

    处理? 是

    Free inodes count wrong for 簇 #0 (7621, counted=7620).

    处理? 是

    Free inodes count wrong (61045, counted=61044).

    处理? 是

    /dev/sdb1: ***** 文件系统已修改 *****

    /dev/sdb1: 12/61056 files (0.0% non-contiguous), 8240/244136 blocks

    识别NTFS文件系统

    ntfs-3g软件

    搭建yum仓库

    如果需挂载本地ISO镜像则

    mount -o loop /iso/centos*.iso /mnt/cdrom

    [root@localhost Packages]# cat /etc/yum.repos.d/dvd.repo 

    [my-yum]

    name=my-yum

    #baseurl=ftp://192.168.100.1

    baseurl=ftp://192.168.100.100/pub

    enabled=1

    gpgcheck=0

    #gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

    ssh免输入密码

    使用ssh-keygen

    [root@localhost qemu]# ssh-keygen             生成密钥

    Generating public/private rsa key pair.

    Enter file in which to save the key (/root/.ssh/id_rsa):             密钥文件名

    Enter passphrase (empty for no passphrase):             是否在加一次密码验证

    Enter same passphrase again:

    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:

    fd:ee:b3:c5:6f:30:9b:70:f3:40:82:57:f8:c4:00:46 root@localhost.localdomain

    The key's randomart image is:

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

    | .E..+ |

    | . . + |

    | . + |

    | .. o o |

    | S .. o |

    | ...* |

    | .ooO |

    | ...o.o|

    | .+o ..|

    在这个目录下

    [root@localhost ~]# ll .ssh/

    total 8

    -rw-------. 1 root root 1675 Aug 21 14:32 id_rsa

    -rw-r--r--. 1 root root 408 Aug 21 14:32 id_rsa.pub

    将id_rsa.pub复制到相应的目录下就可以了(位置和文件名是固定的)

    可 以ssh IP地址,直接可以连接上

    [root@localhost ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.100.101

    [root@localhost .ssh]# ll

    -rw-------. 1 root root 408 Aug 21 14:41 authorized_keys

    密钥生成的目录是配置文件里面决定的

    [root@localhost ~]# vim /etc/ssh/sshd_config

    49 #AuthorizedKeysFile .ssh/authorized_keys

    两种验证ssh

    正常输入用户名和密码

    使用密钥文件

  • 相关阅读:
    由吃饺子想到的多线程情况下的数据共享问题
    关于伪静态的几个体会
    最近改造的一款可多选的日历插件,已通过兼容性测试
    对kingthy创作的Vtemplate模板引擎的使用心得
    从前辈们整理的数据库优化经验中得到的一点心得分享
    关于近期对Lucene.Net应用研究学习的总结
    对SharpICTCLAS 1.0的一点小小的修改记录
    转 Blob、DataURL、canvas、image的相互转换
    节日_100
    模板生成_100
  • 原文地址:https://www.cnblogs.com/fina/p/5781818.html
Copyright © 2020-2023  润新知