Vault部署保姆级教程_如何安装并配置vault服务器

echo subjectAltName=IP:127.0.0.1,IP:10.8.64.201,IP:10.8.64.7 > extfile.cnf
echo 01 > ca.srl
openssl x509 -req -extfile extfile.cnf -days 18250 -CA ca.crt -CAkey ca.key -in server.csr -out server.crt

最后,将生成的 servercert.pem serverkey.pem 文件安装到 Web 服务器上,以供 SSL/TLS 连接使用


### 4 **服务器证书准备**



> 
> tls\_cert\_file = /opt/vault/tls/server.crt
> 
> 
> tls\_key\_file = /opt/vault/tls/server.key
> 
> 
> 


* **将ca.crt文件放到服务器/etc/ssl/certs目录下**


### 5 **配置文件**



ui = true
disable_mlock = false

storage “mysql” {
address = “IP:3306”
username = “vault”
password = “xxxxxxx”
database = “vault”
table = “vault”
ha_enabled = “true”
max_connection_lifetime = “7200”
max_idle_connections = “5”
max_parallel = “128”
}

listener “tcp” {
address = “0.0.0.0:8200”
tls_cert_file = “/opt/vault/tls/server.crt”
tls_key_file = “/opt/vault/tls/server.key”
tls_disable = false
telemetry {
unauthenticated_metrics_access = true
}
}

api_addr = “https://IP:8200”
cluster_addr = “https://ip:8201”
cluster_name = “cluster-name”

log_level = “trace”
log_format = “json”
log_file = “/opt/vault/log/server/”
log_rotate_bytes = “102400”
log_rotate_max_files = “200”

telemetry {
prometheus_retention_time = “300s”
disable_hostname = true
}


在var/log下面,创建目录/var/log/vault,授权目录给vault用


### 6 启动服务



启动服务

systemctl start vault.service

开机自动重启

systemctl enable vault.service


### 7 初始化(生成的解封密钥通过GPG加密)



vault operator init -key-shares=3 -key-threshold=2


也可以将unseal key进行加密。


### 8 **解封**



vault operator unseal


### 9 创建审计设备



在opt/vault下面,创建目录/opt/vault/log,授权目录给vault用户

mkdir -p /opt/vault/log/audit
chown vault:vault /opt/vault/log/audit

创建审计设备(需先创建好vault_audit.log,并修改该文件所有者和组)(登录root进去创建)

vault audit enable file file_path=/opt/vault/log/audit/vault-audit.log

注意:每个节点需要单独创建独立的日志设备(官方建议)(加入日志轮换)


![](https://img-blog.csdnimg.cn/318ea27667da419ab497df5b88f02037.png)



### 10 集群部署



配置这些参数

api_addr = “https://127.0.0.1:8200”
cluster_addr = “https://:8201”
cluster_name = “vault-XX-cluster”


### 11 **接入LDAP**



vault write -f auth/ldap/config
url=“ldap://ldap地址”
userfilter:“(&(memberOf=cn=xxx,ou=xxx,ou=xxxx,dc=xxxx,dc=xxx)(uid={{.Username}}))” …


### 12 用户MFA二次认证接入


1. 创建一个TOTP方法,并将该方法的强制执行绑定到LDAP身份认证方式
2. 为每个LDAP用户分配TOTP验证码(通过邮箱等留底的方式)



生成该实体的TOTP二维码或者secreet密钥

vault write identity/mfa/method/totp/admin-generate method_id=METHOD_ID entity_id=ENTITY_ID


### 13 创建实体、分组


1. 先登录,再给每个ldap用户改实体名(实体名字和别名和ldap用户名一样)



## **注意事项**


Vault的不安全机制:


Vault在通过CLI登录后,会在发出命令的用户账户的主目录中创建一个名为 .vault-token 的隐藏文件,该文件记录了当前登录用户的token,且为明文;并且当其他用户登录该服务器之后,仍然可以看到这个隐藏的.vault-token文件,能够直接使用之前用户登录状态操作vault及明文查看它的token。


目前官方在CLI界面没有logout操作指令,故在每次使用完之后,需**手动删除自己的 .vault-token文件**。




### 给大家的福利


**零基础入门**


对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。


![](https://img-blog.csdnimg.cn/img_convert/95608e9062782d28f4f04f821405d99a.png)


同时每个成长路线对应的板块都有配套的视频提供:


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/a91b9e8100834e9291cfcf1695d8cd42.png#pic_center)


因篇幅有限,仅展示部分资料
<think>好的,我现在需要帮助用户解决在CentOS上进行GCC的离线安装以及相关的Redis安装问题。首先,用户的需求很明确:GCC的离线安装教程安装包下载的图文指导,以及Redis的相关资料。用户可能是在一个没有网络连接的环境中部署应用,比如某些封闭的服务器环境,所以需要离线安装GCC,然后再安装Redis。 首先,我需要回顾一下GCC的离线安装方法。根据我之前的知识,离线安装通常需要下载所有依赖包,然后手动安装。CentOS使用yum管理包,但离线情况下需要先在有网络的环境中下载RPM包,然后传输到目标机器安装。用户可能需要详细的步骤,包括如何获取GCC的RPM包及其依赖。此外,用户可能需要图文指导,所以步骤要详细,可能需要说明如何用yumdownloader或者repotrack工具来下载依赖。 接下来是Redis的安装部分。Redis是用C语言写的,所以需要GCC来编译。用户已经安装了GCC的话,就可以继续安装Redis了。根据用户提供的引用内容,安装Redis通常包括下载源码包、解压、编译、安装,以及可能的配置步骤,比如设置密码、允许远程访问等。需要确保步骤正确,特别是make和make install命令的使用,以及安装目录的自定义,如引用4提到的PREFIX参数。 用户提供的引用中有几个需要注意的地方:引用1和2提到需要安装GCC和tcl,引用4提到make install时指定安装目录,引用5提到Redis的认证问题。所以,在回答中需要涵盖这些点,尤其是安装后的配置,比如设置密码和远程访问权限,这些对于生产环境很重要。 另外,用户可能需要验证安装是否成功,比如通过gcc -v检查GCC版本,运行redis-cli测试Redis是否正常工作。可能还需要说明如何处理常见错误,比如认证失败,如引用5中的例子。 现在要组织这些信息,分成GCC离线安装和Redis安装两部分。对于GCC离线安装,需要详细步骤:在有网络的机器上下载所有依赖,传输到离线机器,使用rpm命令安装。可能遇到的依赖问题需要处理,比如按顺序安装依赖包。对于Redis,步骤包括下载、解压、编译、安装,以及基本配置。同时,用户可能需要相关的资料链接,比如Redis官网下载地址,或者参考引用中的博客链接。 需要确保所有命令正确,且符合CentOS的版本,用户提到的是CentOS 7,所以需要注意兼容性。例如,使用yum install -y gcc tcl中的tcl可能在某些情况下需要,但离线安装时需要同样处理。 可能的问题点:用户如何在没有网络的情况下获取RPM包?可能需要指导他们使用另一台相同系统的机器下载,或者寻找官方提供的离线包。另外,依赖包的处理比较复杂,需要按正确顺序安装,否则可能出现问题。 最后,生成相关问题,帮助用户进一步解决可能遇到的困难,比如依赖冲突、编译错误、配置问题等。这样用户可以根据相关问题找到更多信息。 总结回答结构: 1. CentOS GCC离线安装教程 a. 准备环境 b. 下载RPM包(使用repotrack) c. 传输到离线机器 d. 安装顺序和命令 2. Redis安装配置 a. 下载解压 b. 编译安装 c. 基本配置(密码、远程访问) 3. 验证安装 4. 相关资料和参考 5. 相关问题 需要确保步骤清晰,命令准确,引用用户提供的引用内容中的正确部分,比如引用4中的PREFIX设置,引用5中的认证步骤。</think>### CentOS GCC 离线安装与Redis配置指南 --- #### 一、CentOS 7 GCC离线安装教程 ##### 1. 准备依赖包(需联网环境) 在可联网的CentOS 7机器上执行以下步骤: - **安装下载工具**: ```bash yum install -y yum-utils ``` - **下载GCC及所有依赖**: ```bash repotrack gcc ``` 此命令会在当前目录生成所有GCC依赖的`.rpm`文件,包含数百个包[^2]。 ##### 2. 传输文件到离线机器 将生成的`.rpm`文件通过U盘、内网共享或SFTP传输到目标服务器。 ##### 3. 离线安装GCC 在目标服务器执行: ```bash rpm -Uvh *.rpm --nodeps --force ``` 需注意: - 安装顺序可能引发依赖冲突,建议按`glibc`→`libgcc`→`gcc`的顺序手动安装核心包。 - 若报错,尝试先安装`cpp`、`binutils`等基础包[^2]。 --- #### 二、Redis安装配置 ##### 1. 下载解压Redis ```bash wget https://download.redis.io/releases/redis-6.2.6.tar.gz tar xzf redis-6.2.6.tar.gz cd redis-6.2.6 ``` ##### 2. 编译与安装 - **编译**(需GCC支持): ```bash make ``` - **指定安装目录**: ```bash make install PREFIX=/opt/redis # 自定义路径,如/opt/redis[^4] ``` ##### 3. 基础配置 - **设置密码**: 修改`redis.conf`: ```bash requirepass 123 # 将密码设为123[^5] ``` - **允许远程访问**: 将`bind 127.0.0.1`改为`bind 0.0.0.0`,关闭保护模式: ```bash protected-mode no ``` ##### 4. 启动Redis ```bash /opt/redis/bin/redis-server /path/to/redis.conf & ``` --- #### 三、验证安装 - **检查GCC**: ```bash gcc -v # 输出版本信息即成功 ``` - **测试Redis**: ```bash redis-cli 127.0.0.1:6379> auth 123 # 输入密码 OK 127.0.0.1:6379> set test "hello" OK ``` --- #### 四、相关资料 - **GCC离线包下载**:建议从CentOS官方镜像站(如vault.centos.org)获取对应版本的RPM包。 - **Redis官方文档**:[Redis Installation Guide](https://redis.io/docs/install/install-redis/) - 参考安装教程:[Redis安装教程保姆详细图文)](https://example.com/redis-install-guide)[^4] --- §§ 1. 如何解决GCC离线安装时的依赖冲突? 2. Redis启动后如何配置为系统服务? 3. CentOS 7中如何彻底卸载Redis? 4. Redis持久化机制(RDB/AOF)如何配置? 5. 如何通过防火墙开放Redis端口(6379)?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值