一、redis的配置规范

redis 下载账号_运维

 1.1 禁止以root账号运行redis服务

以下Linux 命令操作创建了一个无 home 目录权限,且无法登录的普通账号redis。
#useradd -M -s /sbin/nologin redis
修改服务允许和配置文件权限:
#setsid sudo -u redis /usr/bin/redis-serer /etc/redis/redis.conf

1.2配置redis配置文件权限最小化 查看redis.conf 的访问权限

#/bin/ls –l 查看下列日志文件权限 ,
设置权限为仅redis 用户可以进行读写操作
/usr/bin/chmod 600 /etc/redis/redis.conf

redis审计日志文件权限最小化 

   chmod + 600 (filename)
   查看redis审计日志文件redis.log

1.3
redis.conf  将命令重命名为 ””可以禁用, 或者重命名为复杂无意义的名称,进行隐藏保护。

rename-command FLUSHALL ""
rename-command FLUSHDB  ""
rename-command CONFIG   ""
rename-command KEYS     ""
rename-command SHUTDOWN ""
rename-command DEL ""
rename-command EVAL ""
redis.conf中添加或修改对应的配置项:
requirepass <password>

1.5检查是否启用日志

Redis 自身支持日志记录到系统日志,如/var/log/localmessage。但需要通过在redis.conf 进行如下配置
syslog-enabled yes
syslog-ident redis
syslog-facility local0
保存配置文件,重启服务后生效。

检查是否限定数据库文件权限 

Redis 的数据库文件位置,在redis.conf 文件中设定, 默认的数据文件存放目录为 /var/lib/redis 。
查看/var/lib/redis 目录及目录下的数据库文件访问权限
#/bin/ls –l /var/lib/redis
修改相关日志文件的权限为600
#/bin/chmod -R 600 /var/lib/redis

redis服务绑定IP地址

在 /etc/redis/redis.conf 中找到 bind 字段,将前面的 # 去掉,根据业务需要配置可以访问服务的IP 地址,例如127.0.0.1 、192.168.1.100 、10.0.0.1 等 ,然后保存。
bind 127.0.0.1 192.168.1.100 10.0.0.1
保存配置文件,重启服务后生效。

检查是否修改默认服务端口

在 /etc/redis/redis.conf 中找到 port 字段,将前面的 # 去掉,根据业务配置 将原有默认服务端口6379 ,修改为其他端口,例如9966,然后保存。
Port 9966
保存配置文件,重启服务后生效。

 修改默认连接超时时间

在 /etc/redis/redis.conf 中找到 timeout 字段,将前面的 # 去掉,修改为其他数值,例如 600,然后保存。
timeout 600
保存配置文件,重启服务后生效

 下面是完整配置:

#注释掉都能访问了 在后面添加要访问的ip
bind 127.0.0.1 10.0.0.1
 
protected-mode yes
 
port 9966
 
tcp-backlog 511
 
#
# unixsocket /tmp/redis.sock
# unixsocketperm 700
 
timeout 600
 
tcp-keepalive 300
 
daemonize yes
 
supervised no
 
pidfile /var/run/redis_9966.pid
 
loglevel notice
 
#日志文件路径
logfile "/var/log/redis.log"
 
syslog-enabled yes
 
# Specify the syslog identity. 指定日志标识
syslog-ident redis
 
# Specify the syslog facility. Must be USER or between LOCAL0-LOCAL7.指定系统日志功能
syslog-facility local0
 
always-show-logo yes
 
 
save 900 1
save 300 10
save 60 10000
 
stop-writes-on-bgsave-error yes
 
rdbcompression yes
 
rdbchecksum yes
 
dbfilename dump.rdb
 
dir ./
 
replica-serve-stale-data yes
 
replica-read-only yes
 
repl-diskless-sync no
 
repl-diskless-sync-delay 5
 
repl-disable-tcp-nodelay no
 
replica-priority 100
 
requirepass redis.7334453
 
#重置命令
# rename-command CONFIG "" 
rename-command FLUSHALL ""
rename-command FLUSHDB  ""
rename-command CONFIG   ""
rename-command KEYS     ""
rename-command SHUTDOWN ""
rename-command DEL ""
rename-command EVAL ""


lazyfree-lazy-expire no
lazyfree-lazy-server-del no
replica-lazy-flush no
 
 
appendonly no
 
 
appendfilename "appendonly.aof"
 
appendfsync everysec
# appendfsync no
 
 
no-appendfsync-on-rewrite no
 
 
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
 
aof-load-truncated yes
 
aof-use-rdb-preamble yes
 
lua-time-limit 5000
 
slowlog-log-slower-than 10000
 
slowlog-max-len 128
 
latency-monitor-threshold 0
 
notify-keyspace-events ""
 
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
 
list-max-ziplist-size -2
 
list-compress-depth 0
 
set-max-intset-entries 512
 
# elements of a sorted set are below the following limits:
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
 
hll-sparse-max-bytes 3000
 
stream-node-max-bytes 4096
stream-node-max-entries 100
 
activerehashing yes
 
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit replica 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
 
hz 10
 
dynamic-hz yes
 
aof-rewrite-incremental-fsync yes
 
rdb-save-incremental-fsync yes

es的配置规范

Elasticsearch日志记录完整性要求

在log4j.properties文件中,对Resource Manager和Node Manager进行如下配置:
Elasticsearch配置内容为:
rm.audit.logger=INFO,RMAUDIT

检查是否修改默认端口

在elasticsearch.yml 配置文件中设置:
transport.tcp.port:9301
http.port:9201
将节点间交互的tcp 端口设置为非9300 端口,对外服务的http 端口设置为非9200 端口

检查是否绑定访问源 IP

在elasticsearch.yml 配置文件中绑定IP:network.host:192.168.0.1
设置其它节点和该节点交互的 IP 地址,该地址禁止设置为0.0.0.0

 关闭HTTP 访问

在elasticsearch.yml 配置文件中设置:
http.enabled:false

 禁止使用全部和通配符来批量删除索引

在elasticsearch.yml 配置文件中设置:
action.destructive_requires_name:true

 设置密码访问

修改elasticsearch.yml 配置文件
xpack.security.enabled: true
#说明:免费版的xpack 插件已提供账号密码认证功能。
2)创建keystore 文件,如已有该文件无需重复创建
bin/elasticsearch-keystore create

mq的配置规范