linux远程控制
SSH协议:为客户机提供安全的shell环境,默认端口22
OpenSSH服务
服务名称:sshd
主程序:/usr/sbin/sshd ,/usr/bin/ssh
配置文件:/etc/ssh/sshd_config
/etc/ssh/ssh_config
远程登陆工具SSH
格式:
ssh [选项] 服务器
ssh [选项] 用户名@服务器
ssh [选项] -l 用户名 服务器
命令选项
-p 端口:连接到指定的端口
-X:启用X转发,在本机上运行对方的图形程序
更改端口,(安全起见,即使对方知道ip和用户但是不知道ssh端口,也没事)
[root@B ~]# vim /etc/ssh/sshd_config
Port 8022
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::
[root@B ~]# /etc/init.d/sshd restart(重启服务)
[root@A ~]# ssh -p 8022 192.168.4.200(指定端口连接)
scp远程复制工具
格式:
scp [-r] 用户名@服务器:路径 本地路径
scp [-r] 本地路径 用户名@服务器:路径
scp [-P] 。。。。。。。。。。。。
(更改端口号,要指定端口号传输)
[root@A ~]# scp -P 8022 /root/install.log 192.168.4.200:/opt/
(把A主机上的文件复制到192.168.4.200的/opt/上)
[root@A ~]# scp -rP 8022 192.168.4.200:/boot/ /opt/
(把192.168.4.200上的/boot/复制到A主机的/opt/上)
——————————————————————————————————————
系统日志
记录系统,程序运行中发生的各种事件,
通过查看日志,了解及排除故障
信息安全控制依据
分类:
内核及系统日志:由系统服务rsyslog统一管理,格式相似
用户日志:记录用户登陆及退出系统的事件
程序日志:由各种服务/程序独立管理,格式不统一
内核及系统日志:
--采用文本格式进行记录
———————————————————————————————
日志文件 | 主要用途 |
/var/log/messages | 记录内核消息,各种服务的公共消息 |
/var/log/dmesg | 记录系统启动过程的各种消息 |
/var/log/cron | 记录与cron计划任务相关的消息 |
/var/log/maillog | 记录邮件收发相关的消息 |
/var/log/secure | 记录与访问限制相关的安全消息 |
———————————————————————————————
程序日志
web服务的access_log , error_log
Squid代理服务的access.log , cache.log
FTP服务的xferlog
日志分析
通用分析工具:
tail ,less ,grep等文本浏览器/检索命令
awk ,sed等格式化过滤工具
跟踪新增的日志消息:
利用tail命令的 -f 选项
文件尾新增内容时,会及时显示出来
专用分析工具:
Webmin系统管理套件
Webalizer ,AWStats等日志统计套件
users,who,w命令:
查看已登陆的用户信息,详细度不同
last,lastb命令:
查看最近登陆成功/失败的用户信息
内核及系统日志分析
典型的消息记录:
时间标签 主机名 程序名 消息内容
[root@room1pc01 桌面]# tail /var/log/messages
Jun 21 10:28:12 room1pc01 kernel: VFS: busy inodes on changed media or resized disk sr0
时间 地点 人物 发生事件
rsyslog日志服务:
linux日志消息主要由rsyslog记录
软件包:rsyslog-5.8.10.10-10
主要程序:/sbin/rsyslogd
配置文件:/etc/rsyslog.conf
配置文件记录格式
/etc/rsyslog.conf 记录格式
设备.优先级... 记录位置
mail.* -/var/log/maillog(*表示0-7)
authpriv.* /var/log/secure
cron.* /var/log/cron
local7.* /var/log/boot.log
..........
-/var/log/(加-为实时同步)
/var/log(异步同步)
rsyslog服务默认没有开放任何端口,
想开启直接把注释去掉即可
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514
[root@room1pc01 ~]# /etc/init.d/rsyslog restart(去掉注释后重启服务即可)
关闭系统日志记录器: [确定]
启动系统日志记录器: [确定]
[root@room1pc01 桌面]# rpm -q rsyslog(查看是否安装了这个服务)
rsyslog-5.8.10-10.el6_6.x86_64
[root@room1pc01 桌面]# /etc/init.d/rsyslog status (查看这个服务是否运行)
rsyslogd (pid 2056) 正在运行...
[root@room1pc01 桌面]# chkconfig rsyslog --list(查看在哪些情况开启)
rsyslog 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
日志的消息优先级
日志消息分8个优先级,数值越小,事件越紧急/重要
[root@room1pc01 桌面]# 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 */
级别0,EMERG 紧急 会导致主机系统不可用的情况
级别1,ALERT 警告 必须马上采取措施解决问题
级别2,CRIT 严重 比较严重的情况
级别3,ERR 错误 运行出现错误
级别4,WARNING 提醒 可能会影响系统功能的事件
级别5,NOTICE 注意 不会影响系统但值得注意
级别6,INFO 信息 一般信息
级别7,DEBUG 调试 程序或系统调试信息等
————————————————————————————————————————————
logrotate日志轮转
循环备份机制
logrotate轮转:
减小日志文件大小,降低分析难度
丢弃过期日志以节省空间
结合cron计划任务,每天执行
配置文件:
[root@room1pc01 ~]# vim /etc/logrotate.conf
/var/log/admin.log {
daily #每天轮转一次
rotate 3 #保留三个备份
minsize 100k #文件大于100k开始轮转
missingok #丢失不提示
compress #启用压缩
create 0600 root root #新文件的权限
dateext #以系统时间作为文件结尾
}
————————————————————————————————————————