set password = '123456';在当前用户下更改密码
grant all privileges on *.* to root@"%" identified by "new password"; 设置root用户在所有ip下都可以被访问
*.*代表所有数据库的所有表 root@"%" root@"localhost"这里的""里面的代表ip地址的范围
grant all privileges on *.* to root@"localhost" identified by "new password"; 设置root用户可以在本地访问
flush privileges; 刷新权限使操作生效
validate_password = off 在my.cnf下配置,可以关闭密码规则(记得重启)
set global validate_password_policy=0;
set global validate_password_length=4;
[client]
default-character-set=utf8(mysqld前面添加)
character_set_server=utf8(mysqld后面添加)
主:
server-id=1
log-bin=master-bin
log-bin-index=master-bin.index
从:
server-id=2
relay-log-index=slave-relay-bin.index
relay-log=slave-relay-bin
关联操作(主)
mysql> create user repl;
mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'从ip地址' IDENTIFIED BY '密码';
mysql> flush privileges;
关联操作(从)
change master to master_host='主ip地址',master_port=3306,master_user='repl',master_password='密码',master_log_file='master-bin.000001',master_log_pos= Position number;
主库查看master状态
show master status;
从库开启slave:
start slave;
从库查看是否同步:
show slave status \G;
change master to master_host='192.168.14.129',master_port=3306,master_user='repl',master_password='123456',master_log_file='master-bin.000001',master_log_pos=1248;
yum -y localinstall xxx
for i in xxx
done
lsof -i :3306
systemctl is-active xxxx
监控windows机器:
zabbix windows端agent配置启动操作:
cd \
c:\zabbix\bin\win64\zabbix_agentd.exe -c c:\zabbix\conf\zabbix_agentd.win.conf -i 安装服务
c:\zabbix\bin\win64\zabbix_agentd.exe -c c:\zabbix\conf\zabbix_agentd.win.conf -s 启动服务
c:\zabbix\bin\win64\zabbix_agentd.exe -c c:\zabbix\conf\zabbix_agentd.win.conf -x 停止服务
-c 代表指定config文件 -i 代表安装 -s 代表启动
查看windows端zabbix-agent是否启动
netstat -ant |findstr "10050"
创建键值格式
vim /etc/zabbix/zabbix_agentd.d/user-defined.conf
UserParameter=key,value
UserParameter=system.current.user,bash /etc/zabbix/libexec/system_current_user.sh
zabbix3.4.10部署所用包:
https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.10-1.el7.x86_64.rpm
https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-get-3.4.10-1.el7.x86_64.rpm
https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-server-mysql-3.4.10-1.el7.x86_64.rpm
https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-web-3.4.10-1.el7.noarch.rpm
https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-web-mysql-3.4.10-1.el7.noarch.rpm
https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-proxy-mysql-3.4.10-1.el7.x86_64.rpm
yum源:
https://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql-uzabbix -p zabbix
mysql -uzabbix -p zabbix
自动发现与自动注册的区别:
1.自动发现需要占用大量的server资源
2.自动发现不具有时效性
3.只适合批量添加相同服务的server
自动注册需要配置agent的哪些参数?
serveractive=
hostname=
分布式监控原理:
proxy服务器即为代理服务器也为agent服务器,其流程为agent>proxy>server
分布式监控部署:
zabbix-proxy服务器配置
1.操作数据库:
create database zabbix_proxy character set utf8 collate utf8_bin;
grant all privileges on zabbix_proxy.* to zabbix@localhost identified by '123456';
flush privileges;
2.安装zabbix-proxy
3.导入zabbix-proxy自带的数据库文件
zcat /usr/share/doc/zabbix-proxy-mysql-3.4.10/schema.sql.gz|mysql -u zabbix -p123456 zabbix_proxy
4.配置/etc/zabbix/zabbix_proxy.conf
Server=
Hostname=(注意要和本地设置成一样的)
DBName=
DBUser=
DBPassword=
5.配置/etc/zabbix/zabbix_agentd.conf
Server=(注意这里的server要填写proxy的地址,也就是本机)
ServerActive=(注意这里的server要填写proxy的地址,也就是本机)
Hostname=(这里填写的主机名尽量不要和proxy的重复)
zabbix-agent服务器配置
1.设置server为proxy
web界面去设置:
1.自动注册
2.设置代理
vim编辑时如何附带行号?
:set nu
mailx区别
如何ssh或者scp的时候不进行交互?
答:sshpass
创建文件时,文件名是否可以带“/ ”
答:不可以
rpm -ql命令的意思
答:查看rpm包安装到哪些路径下
rpm -qf命令的意思
答:通过路径查找来源于哪个rpm包
grep -E -v "^#|^$" zabbix_proxy.conf这条命令代表什么意思
答:代表除去以#开头的字符以及除去空白行
netstat -nulp 解释每一个参数的含义?
答:
-n 代表以ip地址显示而不是域名
-u 代表udp协议
-l 表示监控服务中的socket
-p 显示其pid和程序名称
使用awk的时候,如何截取最后一列?
答:awk 'print $NF'
编译安装实例:
答:编译安装
$ tar -zxf sshpass-1.05.tar.gz
$ cd sshpass-1.05
$ ./configure
$ make && make install
vim过程中显示高亮以后,怎样取消高亮?
答:输入“:noh”
ssh命令多用途:
ssh [email protected] 命令
scp命令用途
-r 递归操作(用于拷贝文件夹)
-p 拷贝时携带文件属性
查看系统版本:
cat /etc/redhat-release
查看内核所有信息
uname -a
查看内核版本号:
uname -r
查看系统多少位
uname -m
linux用户区分:
root用户PID:0
系统用户PID(每个服务都会生成一个用户):1~999
普通用户PID(由管理员所创建):1000+
gzip用法:
答:gzip压缩力度比较大,可以用来压缩.tar结尾的压缩文件,压缩后为.tar.gz结尾,比如:gzip 1.tar
用法:
gzip
-d 解开压缩包
-v 显示指令执行过程信息
-r 递归操作,可对目录进行操作
ssh-keygen -t rsa ssh [email protected]:/root
ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]
iptables规则组成结构分析:
iptables -t filter -A INPUT -s 192.168.0.1 -j DROP
表(基本功能) 链(流量类型) 匹配属性 动作
如果不加-t参数,那么默认使用filter表
表的分类:
filter(对数据包进行过滤) nat(用于修改源、目标ip的地址) mangle(高级)
链分类:
INPUT(入流量) OUTPUT(出流量) FORWARD(转发时) PREROUTING(路由前) POSTROUTING(路由后)
匹配属性:
-s 对源ip匹配 -d 对目标ip匹配 -i 指定从哪个网口接受的流量 -o 指定从哪个网口发出的流量 -p 指定协议 --dport 指定目标端口号
动作 -j:
DROP 丢弃 REJECT 拒绝 ACCEPT 允许 DNAT 目标ip转换 SNAT 源ip转换
表与链的适用关系:(“X”代表可用)
链(流量类型)表(基本功能)
filternatmangle
INPUTXX
FORWARDXX
OUTPUTXXX
PREROUTINGX(DNAT)X
POSTROUTINGX(SNAT)X
iptables匹配规则:
按照顺序从上到下匹配
当数据包匹配到某条规则后,不会继续向下匹配
如果匹配不到则会按默认动作处理(一般为放行动作)
iptables规则保存:
答:service iptables save
iptables安全:
防止同步包洪水(Sync Flood)
# iptables -A FORWARD -p tcp –syn -m limit –limit 1/s -j ACCEPT
防止各种端口扫描
# iptables -A FORWARD -p tcp –tcp-flags SYN,ACK,FIN,RST RST -m limit –limit 1/s -j ACCEPT
Ping 洪水攻击(Ping of Death)
# iptables -A FORWARD -p icmp –icmp-type echo-request -m limit –limit 1/s -j ACCEPT
[oracle@SSS-531W-DB02:/tmp/jinan/logs]$sshpass -p 123456 scp /tmp/jinan/logs/* [email protected]:/tmp/
Host key verification failed.
这是什么原因导致的?
答:原因是在主机子系统每次成功ssh连接远程操作,都会把你每个你访问过计算机的公钥 (public key)都记录在主机的目录/Users/icarus/.ssh/known_hosts下,当下次访问相同子机服务器时,会核对公钥。如果公钥不同,会发出警告,避免你受到DNS Hijack之类的攻击。
snmp监控服务器
监控原理:
不再使用agent去监控服务器,而是使用snmp协议。其zabbix server则作为snmp的客户端,被监控机则是snmp的服务端,需要在被监控机上安装snmp的服务端,而zabbix server则自带snmp的客户端不需要再安装,只需要再装一个snmp测试工具即可。net-snmp-utils
数组的知识:
B=(1 2 3 4)-----定义一个数组B
echo $B-----
echo $B[1]
echo ${B[1]}
echo ${B[@]}
echo ${#B[@]}
netstat -ntpl
uniq与sort怎么用?
zabbix自动发现自定义:
疑难杂症:为何我始终没有办法禁止掉来自192.168.49.0/24的流量,以下两种方式都试了
[root@centos-linux-02 ~]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT icmp -- anywhere anywhere
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
DROP tcp -- 192.168.49.0/24 anywhere tcp dpt:ssh
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
[root@centos-linux-02 ~]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT icmp -- anywhere anywhere
DROP tcp -- 192.168.49.0/24 anywhere tcp dpt:ssh
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
为文件系统扩容磁盘
parted /dev/sda print 查看分区表和分区信息
lsblk 查看文件系统信息
physical volume
volume group
logic volume
pvdisplay
vgdisplay
lvdisplay
ssh-keygen