所在的位置: mysql >> mysql前景 >> mysql,安全策略

mysql,安全策略

登录

[client]登录配置

user=mydefaultname

password=mydefaultpass

host=.0.0.1

mysql-uroot-proot23mysite

-p跟root后面不能有:号

--user=root--password=root,长选项

用户名最长32个字符

--default-character-set=utf-8,指定utf8编码连接数据库

mysql_config_editor

在用户根目录下生成一个.mylogin.cnf的配置文件,用户隐藏密码登录

mysql_config_editorset--login-path=root2--user=root--host=.0.0.1--port=--password,回车提示密码

mysql_config_editorprint--all,显示已配置的登录标签

mysql--login-path=root2,使用登录标签登录

ssl连接

8以后,ssl连接默认开启

配置文件

[mysqld]

ssl-ca=/data/newcerts/ca.pem

ssl-cert=/data/newcerts/server-cert.pem

ssl-key=/data/newcerts/server-key.pem

登录,指定客户端证书和秘钥

mysql-uxq3-pxq3-h.0.0.1-P--ssl-cert=/data/newcerts/client-cert.pem--ssl-key=/data/newcerts/client-key.pem

have_openssl,

have_ssl,默认都开启,支持ssl连接

--ssl-ca,CA路径

ThepathnameoftheCertificateAuthority(CA)certificatefile.(--ssl-capathissimilarbutspecifiesthepathnameofadirectoryofCAcertificatefiles.)

CA文件的路径,--ssl-capath指定目录

certificateauthority,CA,证书中心

--ssl-cert,公钥证书,给客户端

--ssl-key,私钥文件

require_secure_transport,强制客户端ssl连接,ConfiguringEncryptedConnectionsasMandatory(强制)

ssl-cihper,用于加密连接的许可秘钥列表,

Thelistofpermissibleciphersforconnectionencryption,permissible,许可,cipher密码(计算机英语)

ssl-crl,包含证书的撤销列表

Thepathnameofthefilecontainingcertificaterevocationlists,revocation撤销

--ssl-mode=required,请求用ssl加密连接,disabled,不使用ssl,verify_ca,verify_identity验证证书

CA文件说明

ca.pem,CA证书签名

ca-key.pem,CA私钥

client-cert.pem

client-key.pem

创建证书

opensslgenrsaca-key.pem,生成CA私钥

opensslreq-new-x-nodes-days-keyca-key.pem-outca.pem,生成自签名的CA数字证书

CA的证书公共名称不能和服务器和客户端的任何一个属性值相同,否则报错

opensslreq-newkeyrsa:-days-nodes-keyoutserver-key.pem-outserver-req.pem,生成服务器证书请求文件并生成私钥

opensslrsa-inserver-key.pem-outserver-key.pem,服务器私钥转换成RSA私钥文件格式

opensslx-req-inserver-req.pem-days-CAca.pem-CAkeyca-key.pem-set_serial01-outserver-cert.pem,生产服务器数字证书

opensslreq-newkeyrsa:-days-nodes-keyoutclient-key.pem-outclient-req.pem,生成客户端证书请求文件并生成私钥

opensslrsa-inclient-key.pem-outclient-key.pem,客户端私钥转RSA格式

opensslx-req-inclient-req.pem-days-CAca.pem-CAkeyca-key.pem-set_serial01-outclient-cert.pem,客户端数字证书

安全管理可能用到的函数

md5(str)

encode(str,key),使用key键str

decode(crypt_str,key),使用key解密字符串

安全建议

不用root用户运行mysql,否则sql漏洞被利用会让攻击者拿到root权限

mysqld安全选项

--allow-suspicious-udfs,用户自定义函数的限制,注意,变成数据库参数-改为下划线

--local-infile[={0

1}],为0,客户端不能使用LOADDATALOCAL

默认的loaddata是指服务器的目录

编译时没有启用--enable-local-infile,则不能用loaddatalocal,除非用mysql_options()函数做调整

--skip-show-database,打开,运行用户查看所有数据库名,否则,只能看到自己有权限的数据库名

--safe-user-create,打开,不能通过grant语句创建用户

--secure-file-priv=dir_name,外部数据导入导出目录

只能对该变量指定的目录里面的文件做,loaddata,select...intooutfile,load_file()等操作

目录必须存在,mysql不会自动建立

改变量不指定或者为null,mysql不允许做导入导出操作

--skip-grant-tables,不校验权限,即所有用户可以对所有数据库有完全权限

mysqladminflush-privileges

mysqladminreload

FLUSHPRIVILEGES

以上都可以让数据库启用权限校验

--skip-name-resolve,不解析主机名,即Host表里面必须是ip或者localhost

--skip-networking,不允许tcp/ip连接,只能用sock文件连接数据库

系统权限表

mysql库,存放的系统表,用于用户登录后的权限验证

user,全局所有数据库的权限

db,用户在指定数据库中的权限

table_priv,用户在指定表中的权限

column_priv,用户对指定列的权限

其他安全功能

支持双密码验证

支持代理账户

支持审计功能




转载请注明:http://www.aierlanlan.com/cyrz/1704.html

  • 上一篇文章:
  •   
  • 下一篇文章: