mainidear.

2019-07-02
10007 centos7 主从msyql5.7

1 安装mysql 如教程7

主服务器的my.cnf:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock
[mysqld]
#skip-name-resolve
#设置3306端口
port = 3306
socket=/var/lib/mysql/mysql.sock
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
log-error=/usr/local/mysql/log/mysqld.log
pid-file=/usr/local/mysql/pid/mysqld.pid
user=mysql
server-id=1
port=3306
##要给从机同步的库
#binlog-do-db=
##不给从机同步的库(多个写多行)
binlog-ignore-db=mysql
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema
binlog-ignore-db=sys
#server-id=1
##开启二进制日志
log-bin=/usr/local/mysql/binary/mysql1-bin
max-binlog-size = 500M
##自动清理 7 天前的log文件,可根据需要修改
expire_logs_days=7
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#lower_case_table_name=1
max_allowed_packet=16M
[client]
socket=/var/lib/mysql/mysql.sock

从服务器的my.cnf :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock
[mysqld]
#skip-name-resolve
#设置3306端口
port = 3306
socket=/var/lib/mysql/mysql.sock
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#lower_case_table_name=1
max_allowed_packet=16M
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
log-error=/usr/local/mysql/log/mysqld.log
pid-file=/usr/local/mysql/pid/mysqld.pid
user=mysql
server-id=2
port=3306
##从库上的参数
read_only = 1
master_info_repository=TABLE
relay_log_info_repository=TABLE
relay_log_recovery=1 #从机禁止写
super_read_only=1 #从机禁止写
[client]
socket=/var/lib/mysql/mysql.sock
1
2
# mkdir -p /usr/local/mysql/{data,logs,pid}
# chown -R webadmin:webadmin /usr/local/mysql

配置主从

在主服务器上授权从服务器复制帐号 (每次重启mysql,都要执行一次)

1
2
3
4
5
# mysql -uroot -p
Enter password:

mysql > grant replication slave on *.* to webadmin@'172.17.22.51.%' identified by 'def_passwd';
mysql > show master status\G

从服务器上配置连接主服务器 (重启mysql,不需要每次都执行一次,仅执行一次即可)

1
2
3
4
5
6
7
8
9
10
11
12
13
# mysql -uroot -p
Enter password:
mysql > stop slave;
mysql >change master to
master_host='172.17.22.50',
master_port=3306,
master_user='webadmin',
master_password='def_passwd',
master_log_file='mysql1-bin.000008',
master_log_pos=454;

mysql > start slave;
mysql > show slave status\G

验证

主服务器上创建数据库、表、并插入数据

1
2
3
4
5
6
7
8
9
10
mysql > CREATE DATABASE test_ab default charset utf8;
mysql > CREATE TABLE test_ab.a1(id int(2),name varchar(20));
mysql > INSERT INTO test_ab.a1(id,name) VALUES(1,"测试1");
mysql> select * from test_ab.a1;
+------+---------+
| id | name |
+------+---------+
| 1 | 测试1 |
+------+---------+
1 row in set (0.00 sec)

从服务器上查询该数据,验证是否复制过来

1
2
3
4
5
6
7
mysql> select * from test;
+------+---------+
| id | name |
+------+---------+
| 1 | 测试1 |
+------+---------+
1 row in set (0.00 sec)

至此完成。

Read More

2019-07-02
10008 一主两从三哨兵

环境准备

三台独立的linux主机

内网IP分别为: 172.31.175.142、172.31.175.143、172.31.175.144

分别创建带主目录的普通用户, 比如useradd wx -m

安装redis

分别在各个主机上安装redis,以172.31.175.142为例,步骤如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#下载4.0稳定版
wget http://download.redis.io/releases/redis-4.0.11.tar.gz
#解压到用户主目录
tar -xzvf redis-4.0.11.tar.gz -C /home/wx
#进入用户主目录
cd /home/wx
#重命名解压的文件
mv redis-4.0.11 redis
#进入redis目录
cd redis
#编译
make
#安装,PREFIX指定安装路径
make PREFIX=/home/wx/redis install

主从/哨兵配置

一主(master)二从(slave)三哨兵(sentinel)的配置目标, 如下
在这里插入图片描述
redis.conf配置主从, sentinel.conf配置哨兵

conf里面很多初始的配置项可以不做修改, 对于需要修改或新增的配置项, 说明如下

  • 通用配置

下面3项,务必在每个redis.conf里进行修改,在每个sentinel.conf里新增(默认没有)

1
2
3
4
5
6
7
8
#支持内网/本地访问,比如 bind 172.31.175.142 127.0.0.1
bind 本机内网IP 127.0.0.1
#支持后台运行,默认值为no
daemonize yes
#日志文件,比如redis.log、sentinel.log
logfile xxx.log
#允许外网访问
protected-mode no
  • slave的配置

在2个slave的redis.conf下指定master

1
2
#指定master
slaveof 172.31.175.142 6379
  • sentinel的配置

在3个sentinel.conf下指定监控的master

1
2
#指定监控的master,最后一位表示quorum(法人数量),即认定master'客观下线'成立的最低票数
sentinel monitor mymaster 172.31.175.142 6379 2

主从/哨兵运行

分别启动主从redis, 验证没问题,再分别启动哨兵,假设已进入redis/bin目录

  • 运行redis

1, 启动redis

1
./redis-server ../redis.conf

2, 查看日志

1
tail -100f ../redis.log

3, 连接redis

1
./redis-cli

4, 查看主从信息

cli连接redis成功后, 输入 info replication

下面是master的replication信息
在这里插入图片描述
下面是其中一个slave的replication信息
在这里插入图片描述
5, 测试主从同步

在master上写入变量, 在slave上查看是否同步, 此过程略.

  • 运行哨兵
1
./redis-sentinel  ../sentinel.conf

一个哨兵的日志如下, 可以看出哨兵正在监听,并已识别到2个slave
在这里插入图片描述
故障转移

模拟发生故障, 进入master主机172.31.175.142, kill掉redis-server进程.

接下来, 查看各个哨兵的日志, 大抵可以看出哨兵的工作过程, 如下

1, 主观下线(sdown)

当某个哨兵心跳检测master超时后,则认定其sdown

+sdown master mymaster 172.31.175.142 6379

2, 客观下线(odown)

当认定sdown的哨兵数>=quorum时,则master下线事实最终成立,即odown

+odown master mymaster 172.31.175.142 6379 #quorum 2/2

3, 选举哨兵leader

各哨兵协商,选举出一个leader,由其进行故障转移操作

+vote-for-leader 1dd7873228b4bf30c1668d55a28b3036072ee9de 1

4, 故障转移

选择一个slave作为新的master, 并将其他节点设置为新master的slave (刚才已下线的老master的配置文件也会被设置slaveof…)

+switch-master mymaster 172.31.175.142 6379 172.31.175.144 6379

当故障转移成功后, redis是一主一从, 如下
在这里插入图片描述
在这里插入图片描述
进入新的master 172.31.175.144, 查看redis的主从信息, 还剩一从172.31.175.143
在这里插入图片描述
故障恢复

模拟故障恢复,进入老的master 172.31.175.142, 重启redis-server, 之后查看其redis主从信息, 发现老的master已经变成slave了,如下
在这里插入图片描述
//因为172.31.175.142的redis.conf在故障转移时被修改了,所以重启之后就直接成了slave

进入新的master 172.31.175.144下,再去查看最新的主从信息, 发现加入了新的slave, 如下
在这里插入图片描述
故障恢复之后, 最新的主从关系,还是一主二从三哨兵, 只不过master换了地方, 如下
在这里插入图片描述
如果想要调整master, 则需要手工操作, 为了方便对配置文件的修改, 建议在故障发生和转移之前将配置文件备份.

Read More

2019-07-02
10006 centos7 离线安装msyql5.7

https://www.cnblogs.com/mujingyu/p/7689116.html

前言:经过一天半的折腾,终于把 mysql 5.7.17 版本安装上了 centos 7 系统上,把能参考的博客几乎都看了一遍,终于发现这些细节问题,然而翻了无数的文章,基本上都没有提到这些,所以小生尽量把这些细节写下来,一方面是供初学者们参考,另一方面也是对自己花这么长时间的摸索的一个总结,如有不足之处欢迎各路高手指正。

一、安装前的检查

  1.1 检查 linux 系统版本

    [root@localhost ~]# cat /etc/system-release

      说明:小生的版本为 linux 64位:CentOS Linux release 7.4.1708 (Core)

  1.2 检查是否安装了 mysql

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

      若存在 mysql 安装文件,则会显示 mysql安装的版本信息

        如:mysql-connector-odbc-5.2.5-6.el7.x86_64

      卸载已安装的MySQL,卸载mysql命令,如下:

        [root@localhost ~]# rpm -e –nodeps mysql-connector-odbc-5.2.5-6.el7.x86_64

      将/var/lib/mysql文件夹下的所有文件都删除干净。

    细节注意:

      检查一下系统是否存在 mariadb 数据库,如果有,一定要卸载掉,否则可能与 mysql 产生冲突。

      小生的系统安装模式的是最小安装,所以没有这个数据库。

      检查是否安装了 mariadb:[root@localhost ~]# rpm -qa | grep mariadb

      如果有就使劲卸载干净:

        systemctl stop mariadb
        rpm -qa | grep mariadb
        rpm -e –nodeps mariadb-5.5.52-1.el7.x86_64
        rpm -e –nodeps mariadb-server-5.5.52-1.el7.x86_64
        rpm -e –nodeps mariadb-libs-5.5.52-1.el7.x86_64

  1.3 系统内存检查

    检查一下 linux 系统的虚拟内存大小,如果内存不足 1G,启动 mysql 的时候可能会产生下面这个错误提示:  

      Starting mysqld (via systemctl): Job for mysqld.service failed because the control process exited with error code.

      See “systemctl status mysqld.service” and “journalctl -xe” for details.[FAILED]

    小生起初安装的时候使用的是虚拟机自动分区,内存设置的是 1G,结果在这上面话费了大量的精力和时间去调试始终也启动没成功。

    最后在一位 远走的兔子 博客里找到了这个问题的答案:    

  通过lnmp安装mysql之后,显示mysql is not running。出错如下:

    Starting MySQL..The server quit without updating PID file (/usr/local/mysql/var/localhost.localdomain.pid)

  网上各种找解决方案,大部分都是什么文件权限、mysql 日志太大,重装等问题。一一试了解决方案,然并卵……

  最后,打开看了lnmp的官方网站的安装教程 https://lnmp.org/install.html,才知道原来是因为自己安装时选择的mysql版本是5.6,而**安装5.6以及以上版本的mysql需要服务器的内存至少在1G以上**。而我是在VPS上装的。内存在256MB,不出错才有问题。瞬间心塞。

  最后先卸载 lnmp,再安装。安装完全可以参照官方教程。

二、从 mysql 官网下载并上传 mysql安装包

  2.1 下载 mysql 安装包

    小生使用的是 mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

    img

  2.2 上传安装文件到 linux 系统

    使用 ftp 上传至 linux 系统中,小生上传至 /var/ftp/pub 文件目录下

细节注意:

出于安全问题,建议使用 md5sum 命令核对一下文件源:[root@localhost pub]# md5sum mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

三、安装 mysql

  3.1 解压安装包,并移动至 home 目录下

    解压 mysql 的 gz 安装包: [root@localhost pub]# tar -zvxf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

    /usr/local 目录下创建文件夹存 mysql:[root@localhost pub]# mkdir /usr/local/msyql

    将文件移动到 /usr/local 目录下,并重命名文件夹:[root@localhost pub]# mv mysql-5.7.17-linux-glibc2.5-x86_64/* /usr/lcoal/mysql/

  3.2 添加系统用户

    添加 mysql 组和 mysql 用户:

      添加 mysql 组:[root@localhost ~]# groupadd mysql

      添加 mysql 用户:[root@localhost ~]# useradd -r -g mysql mysql

      扩展:

        查看是否存在 mysql 组:[root@localhost ~]# more /etc/group | grep mysql

        查看 msyql 属于哪个组:[root@localhost ~]# groups mysql

        查看当前活跃的用户列表:[root@localhost ~]# w

  3.3 检查是否安装了 libaio

    [root@localhost pub]# rpm -qa | grep libaio

    若没有则安装

      版本检查:[root@localhost pub]# yum search libaio

      安装:[root@localhost pub]# yum -y install libaio

  3.3 安装 mysql

    进入安装 mysql 软件目录:[root@localhost ~]# cd /usr/local/mysql/

    安装配置文件:[root@localhost mysql]# cp ./support-files/my-default.cnf /etc/my.cnf(提示是否覆盖,输入“ y ”同意)

      修改被覆盖后的 my.cnf:[root@localhost mysql]# vim /etc/my.cnf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
socket=/usr/local/mysql/sock/mysql.sock
[mysqld]
#skip-name-resolve
#设置3306端口
port = 3306
socket=/usr/local/mysql/sock/mysql.sock
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
log-error=/usr/local/mysql/log/mysqld.log
pid-file=/usr/local/mysql/pid/mysqld.pid
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#lower_case_table_name=1
max_allowed_packet=16M

创建 data 文件夹:[root@localhost mysql]# mkdir ./data

修改当前目录拥有者为 mysql 用户:[root@localhost mysql]# chown -R mysql:mysql ./

初始化 mysqld:[root@localhost mysql]# ./bin/mysqld –initialize –user=mysql –basedir=/usr/local/mysql/ –datadir=/usr/local/mysql/data/

    img

 四、配置 mysql

  4.1 设置开机启动

    a. 复制启动脚本到资源目录:[root@localhost mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld

    b. 增加 mysqld 服务控制脚本执行权限:[root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld

    c. 将 mysqld 服务加入到系统服务:[root@localhost mysql]# chkconfig –add mysqld

    d. 检查mysqld服务是否已经生效:[root@localhost mysql]# chkconfig –list mysqld

      命令输出类似下面的结果:

        mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off

      表明mysqld服务已经生效,在2、3、4、5运行级别随系统启动而自动启动,以后可以使用 service 命令控制 mysql 的启动和停止。

      查看启动项:chkconfig –list | grep -i mysql

      删除启动项:chkconfig –del mysql

    e. 启动 mysqld:[root@localhost mysql]# service mysqld start

  4.2 环境变量配置

    将mysql的bin目录加入PATH环境变量,编辑 /etc/profile文件:[root@localhost mysql]# vim /etc/profile

PATH = $PATH:/usr/local/mysql/bin

export PATH

    执行命令使其生效:[root@localhost mysql]# source /etc/profile

    用 export 命令查看PATH值:[root@localhost mysql]# echo $PATH

五、登录 mysql

  5.1 测试登录

    登录 mysql:[root@localhost mysql]# mysql -uroot -p(登录密码为初始化的时候显示的临时密码)

    初次登录需要设置密码才能进行后续的数据库操作:SET PASSWORD = PASSWORD(‘123456’);(密码设置为了123456)

    修改密码为 password:update user set authentication_string=PASSWORD(‘password’) where User=’root’;

  5.2 防火墙端口偶设置,便于远程访问

    [root@localhost ~]$ firewall-cmd –zone=public –add-port=3306/tcp –permanent

    [root@localhost ~]$ firewall-cmd –reload

  开启防火墙mysql3306端口的外部访问

  CentOS升级到7之后,使用firewalld代替了原来的iptables。下面记录如何使用firewalld开放Linux端口

  –zone : 作用域,网络区域定义了网络连接的可信等级。

    这是一个一对多的关系,这意味着一次连接可以仅仅是一个区域的一部分,而一个区域可以用于很多连接

  –add-port : 添加端口与通信协议,格式为:端口/通讯协议,协议是tcp 或 udp

  –permanent : 永久生效,没有此参数系统重启后端口访问失效

  5.3 使用 SQLyog 远程连接出现不允许连接问题:

    首先使用 dos 窗口 ping 一下 linux,排除网络连通问题,其次使用 SQLyog 连接测试一下。

    解决方法:登录 linux mysql 在用户管理表新增用户帐号

      mysql> use msyql

      mysql> create user ‘user-name‘@’ip-address’ identified by ‘password’;(红色标记为需要修改的地方)

    其他方案:

      授权root用户可以进行远程连接,注意替换以下代码中的“password”为 root 用户真正的密码,

      另外请注意如果你的root用户设置的是弱口令,那么非常不建议你这么干!:   

mysql> grant all privileges on . to root@”%” identified by “password” with grant option;

mysql> flush privileges;


问题一:

https://blog.csdn.net/a1010256340/article/details/77530131

1
2
3
4
chmod 644 /etc/my.cnf
然后执行:
service mysql restart
即可。

问题二:Can’t connect to local MySQL server through socket的解决方法

(重启mysql 解决)

http://www.cnntt.com/archives/2505

Read More

2019-07-02
10005 centos7 禁止弹出邮件提示

1
2
3
4
5
6
7
8
有时在进入系统的时候经常提示You have new mail in /var/spool/mail/root

你觉得烦人---解决方法:修改系统配置文件/etc/profile,告诉系统不要去检查邮箱.

具体操作:

命令行输入:echo "unset MAILCHECK" >> /etc/profile
【把unset MAILCHECK加到文件/etc/profile 的尾部】然后重新登陆控制台就没有这个讨厌的提示了。
Read More

2019-07-02
10004 lrzsz 离线安装

inux常常想用rz命令进行上传,sz命令进行下载,但如果不能使用rz,sz命令怎么办:

如联网可直接yum -y install lrzsz 安装

下面主要介绍不能联网的情况下,如何离线安装:

1. 获取安装包,可以使用我的网盘链接:https://pan.baidu.com/s/1-jHnz1cF7FsyX_8nd2vw_w 密码:bkzb

也可以找台联网机器 wget https://ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz ,或者自己到网上下载

将下载好的包scp到要安装的机器。

(使用root用户进行安装)

  1. 登录到要安装的机器, cd 到安装包所在目录
1
tar  zxvf  lrzsz-0.12.20.tar.gz 解压安装包
  1. 进入解压好的目录里
1
cd  lrzsz-0.12.20
  1. 配置安装路径
1
./configure --prefix=/usr/local/lrzsz
  1. 编译
1
make
  1. 安装
1
make install
  1. 配置系统命令
1
2
3
cd /usr/bin 
ln -s /usr/local/lrzsz/bin/lrz rz
ln -s /usr/local/lrzsz/bin/lsz sz

如果/usr/bin下已存在,删除

  1. 测试是否安装成功 ,

输入 rz 弹出文件选择框,这样就成功了

Read More

2019-07-02
10003设置开机启动

设置开机启动

[root@localhost ~]# systemctl enable mysqld

[root@localhost ~]# systemctl daemon-reload

启动Mysql服务

systemctl start mysqld

Read More

2019-07-02
10002 设置开机启动

2.修改SSH服务端口

使用 root 用户进入 /etc/ssh/ 目录: cd /etc/ssh/

使用 vi/vim 打开 sshd_config 文件: vim sshd_config

CentOS7-ssh-04

在修改端口之前,先添加一个端口,找到 Port 进行修改

CentOS7-ssh-05

修改之后,进行保存

3.向防火墙中添加修改的端口

向防火墙中添加端口的命令为: firewall-cmd --zone=public --add-port=10022/tcp --permanent

reaload 防火墙规则: firewall-cmd --reload

查看端口是否添加成功: firewall-cmd --zone=public --query-port=10022/tcp

注意: 这里的设置是在 CentOS 7 版本下的操作 , 低于 CentOS 7的版本不支持

CentOS7-ssh-06

Read More

2019-07-02
10001 防火墙

  1. 执行firewall-cmd –permanent –zone=public –add-port=3306/tcp,提示FirewallD is not running,如下图所示。

    centos出现“FirewallD is not running”怎么办

  2. 通过systemctl status firewalld查看firewalld状态,发现当前是dead状态,即防火墙未开启。

    centos出现“FirewallD is not running”怎么办

  3. 通过systemctl start firewalld开启防火墙,没有任何提示即开启成功。

    centos出现“FirewallD is not running”怎么办

  4. 再次通过systemctl status firewalld查看firewalld状态,显示running即已开启了。

    centos出现“FirewallD is not running”怎么办

  5. 如果要关闭防火墙设置,可能通过systemctl stop firewalld这条指令来关闭该功能。

    centos出现“FirewallD is not running”怎么办

  6. 再次执行执行firewall-cmd –permanent –zone=public –add-port=3306/tcp,提示success,表示设置成功,这样就可以继续后面的设置了。

    centos出现“FirewallD is not running”怎么办

7 查看所有打开的端口: firewall-cmd –zone=public –list-ports

8 删除一个端口

1
2
# firewall-cmd --zone=public --remove-port=6022/tcp --permanent
# firewall-cmd --zone=public --remove-port=6022/udp --permanent

查看端口

1
netstat -natp

iptables -vnL INPUT

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
CentOS7使用firewalld打开关闭防火墙与端口
1、firewalld的基本使用
启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld
开机禁用 : systemctl disable firewalld
开机启用 : systemctl enable firewalld


2.systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。
启动一个服务:systemctl start firewalld.service
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed

3.配置firewalld-cmd

查看版本: firewall-cmd --version
查看帮助: firewall-cmd --help
显示状态: firewall-cmd --state
查看所有打开的端口: firewall-cmd --zone=public --list-ports
更新防火墙规则: firewall-cmd --reload
查看区域信息: firewall-cmd --get-active-zones
查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态: firewall-cmd --panic-off
查看是否拒绝: firewall-cmd --query-panic

那怎么开启一个端口呢
添加
firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
重新载入
firewall-cmd --reload
查看
firewall-cmd --zone= public --query-port=80/tcp
删除
firewall-cmd --zone= public --remove-port=80/tcp --permanent
Read More

2019-07-02
10001 centos7离线安装lrzsz

下面主要介绍不能联网的情况下,如何离线安装:

1. 获取安装包,可以使用我的网盘链接:https://pan.baidu.com/s/1-jHnz1cF7FsyX_8nd2vw_w 密码:bkzb

也可以找台联网机器 wget https://ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz ,或者自己到网上下载

将下载好的包scp到要安装的机器。

(使用root用户进行安装)

  1. 登录到要安装的机器, cd 到安装包所在目录
1
tar  zxvf  lrzsz-0.12.20.tar.gz 解压安装包
  1. 进入解压好的目录里
1
cd  lrzsz-0.12.20
  1. 配置安装路径
1
./configure --prefix=/usr/local/lrzsz
  1. 编译
1
make
  1. 安装
1
make install
  1. 配置系统命令
1
2
3
cd /usr/bin 
ln -s /usr/local/lrzsz/bin/lrz rz
ln -s /usr/local/lrzsz/bin/lsz sz

如果/usr/bin下已存在,删除

  1. 测试是否安装成功 ,

输入 rz 弹出文件选择框,这样就成功了

Read More

2019-07-02
10000 禁止root远程登录和添加新用户

一、添加和root权限一样的用户

1
2
3
4
adduser admin
passwd admin (修改密码)
然后输入密码 (密码简单了通不过)
系统提示输入确认密码后再输入一次。OK添加成功。

img

2、修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:

1
2
3
4
vim /etc/sudoers 
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
admin ALL=(ALL) ALL
1
这个文件只读是一种保护机制,如果你使用vi编辑器的话,只要保存时使用:wq!就可以保存了。 或者使用visudo命令来进入sudoers文件的编辑,就可以正常保存
1
2
3
4
5
6
1)单行复制
在命令模式下,将光标移动到将要复制的行处,按“yy”进行复制;
2)多行复制
在命令模式下,将光标移动到将要复制的首行处,按“nyy”复制n行;其中n为1、2、3……
2、粘贴
在命令模式下,将光标移动到将要粘贴的行处,按“p”进行粘贴

二、禁止root远程登录

1
2
3
4
需要编辑/etc/ssh/sshd_config。
vim /etc/ssh/sshd_config 找到 PermitRootLogin
改为 PermitRootLogin no
重启 service sshd restart

img

结束语:

这下就禁止了root用户登陆了 用admin登陆 。 搞这么复杂就是为了安全.

你只是禁止了root用户登陆,没有禁止别的用户,先用别的用户登陆,在 su root 切回root用户

切换到root用户还要在输如密码

img

pkexec chmod 555 /etc/sudoers

1562221836219

Read More