首页
关于
统计
留言
朋友圈
壁纸
Search
1
路由器 NAT 配置完整指南(华为设备):原理 + ACL + 实例
348 阅读
2
Win7 系统时间同步详解:w32tm 命令 + 常见问题修复
327 阅读
3
CentOS 8 安装配置 MariaDB 数据库:从安装到备份恢复
204 阅读
4
CentOS 8 安装配置 Apache Web 服务器(httpd)完全教程
188 阅读
5
CentOS 8 搭建 BIND DNS 服务器:从安装到解析全流程
174 阅读
默认分类
网络工程
备考笔记
Linux运维
Windows技巧
技术分享
登录
Search
标签搜索
Windows
CentOS
Linux
网络配置
系统工具
Linux运维
域名解析
web服务器
HTTPD
OSI
网络工程师
软考
备考
TCP/IP
快捷键
效率
自带工具
系统优化
开机加速
nmcli
李忠衍
累计撰写
12
篇文章
累计收到
1
条评论
首页
栏目
默认分类
网络工程
备考笔记
Linux运维
Windows技巧
技术分享
页面
关于
统计
留言
朋友圈
壁纸
搜索到
3
篇与
Linux
的结果
2025-03-31
CentOS 8 安装配置 MariaDB 数据库:从安装到备份恢复
MariaDB 是 MySQL 的开源替代品,在 CentOS/RHEL 8 中已取代 MySQL 成为默认数据库。本文详细讲解安装、安全配置、建库建表、备份恢复全流程。MariaDB vs MySQLMariaDB 由 MySQL 原班人马开发,完全兼容 MySQL,用法几乎一样。CentOS 8 默认仓库中只有 MariaDB,没有 MySQL。 命令基本一致(mysql 命令依然可用) API 和语法完全兼容 性能优化更激进 1. 安装 MariaDBsudo dnf install @mariadb -y@mariadb 是 DNF 的组包名,会安装 MariaDB 服务器、客户端及其他相关工具。2. 启动服务sudo systemctl enable --now mariadb # 查看运行状态 sudo systemctl status mariadb正常输出应包含 active (running)。3. 安全配置(重要!)sudo mysql_secure_installation这个交互式脚本会引导你完成以下安全设置: 设置 root 密码 移除匿名用户 禁止 root 远程登录 删除 test 测试数据库 重新加载权限表 ⚠️ 生产环境一定要执行此步骤!默认安装的 MariaDB 没有任何密码,存在严重安全风险。4. 基础操作登录数据库:mysql -u root -p创建数据库和用户:-- 创建数据库 CREATE DATABASE bytecho_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; -- 创建用户并授权 CREATE USER 'blog_user'@'localhost' IDENTIFIED BY '***'; GRANT ALL PRIVILEGES ON bytecho_db.* TO 'blog_user'@'localhost'; FLUSH PRIVILEGES;创建表:USE bytecho_db; CREATE TABLE articles ( id INT AUTO_INCREMENT PRIMARY KEY, title VARCHAR(200) NOT NULL, content TEXT, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); -- 插入测试数据 INSERT INTO articles (title, content) VALUES ('Hello World', '这是我的第一篇文章');查询数据:SELECT * FROM articles; SELECT COUNT(*) FROM articles;5. 数据库备份与恢复备份(mysqldump):# 备份单个数据库 mysqldump -u root -p bytecho_db > bytecho_db_backup.sql # 备份所有数据库 mysqldump -u root -p --all-databases > all_databases.sql # 仅备份结构(不含数据) mysqldump -u root -p --no-data bytecho_db > schema.sql恢复:# 先创建数据库 mysql -u root -p -e "CREATE DATABASE bytecho_db" # 导入备份 mysql -u root -p bytecho_db < bytecho_db_backup.sql定时备份(crontab):# 每天凌晨2点自动备份 0 2 * * * mysqldump -u root -p'密码' bytecho_db > /backup/db_$(date +\%Y\%m\%d).sql6. 配置文件调优MariaDB 配置文件位于 /etc/my.cnf.d/mariadb-server.cnf。常用优化参数:[mysqld] max_connections = 200 # 最大连接数(默认151) character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci # InnoDB 优化 innodb_buffer_pool_size = 512M # 缓冲池大小(设为内存的 70%) innodb_log_file_size = 64M # 日志文件大小 # 慢查询日志(排查性能问题) slow_query_log = 1 slow_query_log_file = /var/log/mariadb-slow.log long_query_time = 2sudo systemctl restart mariadb常见问题Q:忘记 root 密码怎么办?sudo systemctl stop mariadb sudo mysqld_safe --skip-grant-tables & mysql -u root FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; sudo systemctl restart mariadbQ:远程连接不上 MariaDB?检查两步:1)/etc/my.cnf 中 bind-address 是否设为 0.0.0.0;2)防火墙是否放行了 3306 端口。掌握了这些,你已经可以用 MariaDB 搭建博客、应用等需要的数据库了。
2025年03月31日
204 阅读
0 评论
1 点赞
2025-03-31
CentOS 8 安装配置 Apache Web 服务器(httpd)完全教程
Apache 是目前使用最广泛的 Web 服务器之一。本文从安装到配置虚拟主机、HTTPS,手把手带你搭建一个完整的 Web 服务环境。什么是 Apache?Apache HTTP Server(软件包名为 httpd)是一个开源的 Web 服务器软件,由 Apache 软件基金会维护。它可以托管静态网站、动态网站(配合 PHP),也可以作为反向代理使用。1. 安装 Apacheyum install httpd -y # 查看版本确认安装成功 httpd -v2. 启动与管理服务systemctl start httpd # 启动服务 systemctl enable httpd # 设置开机自启 systemctl status httpd # 查看运行状态(active (running) 为正常)验证是否启动成功:curl -I http://localhost # 应返回 HTTP/1.1 200 OK打开浏览器访问 http://服务器IP,如果看到 Apache 默认测试页面,说明安装成功。3. 防火墙配置firewall-cmd --permanent --add-service=http firewall-cmd --permanent --add-service=https firewall-cmd --reload firewall-cmd --list-all # 确认放行4. Apache 核心目录结构 路径说明 /etc/httpd/conf/httpd.conf主配置文件 /etc/httpd/conf.d/子配置文件目录(推荐在此新增配置) /var/www/html/默认网站根目录 /var/log/httpd/access_log访问日志 /var/log/httpd/error_log错误日志(排错利器) 5. 配置虚拟主机(VirtualHost)虚拟主机让你在一台服务器上托管多个网站。创建网站目录:mkdir -p /var/www/bytecho echo "<h1>Hello from Bytecho!</h1>" > /var/www/bytecho/index.html创建虚拟主机配置:新建 /etc/httpd/conf.d/bytecho.conf:<VirtualHost *:80> ServerName bytecho.cn ServerAlias www.bytecho.cn DocumentRoot /var/www/bytecho <Directory /var/www/bytecho> Options -Indexes +FollowSymLinks AllowOverride All Require all granted </Directory> ErrorLog /var/log/httpd/bytecho-error.log CustomLog /var/log/httpd/bytecho-access.log combined </VirtualHost>配置说明: ServerName — 域名 DocumentRoot — 网站文件目录 Options -Indexes — 禁止目录列表(安全) Require all granted — 允许所有 IP 访问 重启 Apache:httpd -t # 先检查配置语法(重要!) systemctl reload httpd # 平滑重载配置(不中断服务)6. 配置 HTTPS(SSL 证书)安装 mod_ssl:yum install mod_ssl -y创建自签名证书(测试用):openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/pki/tls/private/bytecho.key -out /etc/pki/tls/certs/bytecho.crt -subj "/CN=bytecho.cn"创建 HTTPS 虚拟主机:编辑 /etc/httpd/conf.d/bytecho-ssl.conf:<VirtualHost *:443> ServerName bytecho.cn DocumentRoot /var/www/bytecho SSLEngine on SSLCertificateFile /etc/pki/tls/certs/bytecho.crt SSLCertificateKeyFile /etc/pki/tls/private/bytecho.key <Directory /var/www/bytecho> Require all granted </Directory> </VirtualHost>httpd -t && systemctl reload httpd7. 查看日志排错tail -f /var/log/httpd/error_log # 实时查看错误日志 tail -f /var/log/httpd/access_log # 查看访问日志 tail -f /var/log/httpd/bytecho-error.log # 查看特定网站的日志常见问题Q:浏览器访问报 403 Forbidden?检查目录权限:chmod 755 /var/www/bytecho,并确认 SELinux 没有阻止:restorecon -Rv /var/www/Q:httpd -t 报错 Syntax error?通常是配置文件语法错误,仔细检查 VirtualHost 的尖括号是否匹配,路径是否正确。Q:改完配置要不要重启?推荐用 systemctl reload httpd 而不是 restart。reload 不断开已有连接,restart 会中断所有正在处理的请求。掌握了 Apache 的基本配置,你已经可以自己托管网站了。接下来可以学习 Nginx,了解两款服务器的区别和适用场景。
2025年03月31日
188 阅读
0 评论
0 点赞
2025-03-31
CentOS 8 搭建 BIND DNS 服务器:从安装到解析全流程
DNS 是互联网的基础服务之一。本文从零开始,在 CentOS 8 上搭建一个完整的 BIND DNS 服务器,实现域名解析。什么是 DNS?DNS(Domain Name System)将人类易记的域名(如 bytecho.cn)转换为机器可读的 IP 地址(如 1.2.3.4)。 正向解析: 域名 → IP 地址 反向解析: IP 地址 → 域名 1. 安装 BIND# 安装 DNS 服务器 yum install bind bind-utils -y # 查看安装版本 named -vBIND(Berkeley Internet Name Domain)是最常用的 DNS 服务器软件。bind-utils 包含 dig、nslookup 等 DNS 诊断工具。2. BIND 核心配置文件BIND 的主配置文件是 /etc/named.conf,我们来理解它的结构:options { listen-on port 53 { any; }; # 监听所有网卡的 53 端口 listen-on-v6 port 53 { any; }; directory "/var/named"; # 区域文件存放目录 dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; allow-query { any; }; # 允许所有客户端查询 recursion yes; # 允许递归查询(作为公共DNS时需要) }; zone "." IN { type hint; file "named.ca"; # 根域名服务器列表 }; zone "bytecho.cn" IN { type master; # 主 DNS 服务器 file "bytecho.cn.zone"; # 区域文件 allow-update { none; }; };关键配置说明: listen-on port 53 { any; } — DNS 默认端口 53,设为 any 表示监听所有网卡 allow-query { any; } — 允许所有人查询(测试环境用,生产环境应限制 IP) recursion yes; — 开启递归查询(作为公共 DNS 必须开) 每个 zone 定义一个域名区域的解析规则 3. 创建区域文件(zone file)创建 /var/named/bytecho.cn.zone:$TTL 1D @ IN SOA ns1.bytecho.cn. admin.bytecho.cn. ( 2026070901 ; 序列号(每次修改递增) 3H ; 刷新间隔 1H ; 重试间隔 1W ; 过期时间 1D ) ; 否定缓存TTL IN NS ns1.bytecho.cn. IN A 1.2.3.4 ns1 IN A 1.2.3.4 www IN A 1.2.3.4 @ IN MX 10 mail.bytecho.cn. mail IN A 1.2.3.5记录类型详解: 记录类型作用示例 SOA区域权威记录包含主 DNS、管理员邮箱、序列号 NS指定该域名的 DNS 服务器ns1.bytecho.cn A域名 → IPv4 地址www.bytecho.cn → 1.2.3.4 AAAA域名 → IPv6 地址www.bytecho.cn → ::1 CNAME域名别名www → bytecho.cn MX邮件交换记录@ → mail.bytecho.cn TXT文本记录SPF、DKIM 验证等 4. 启动服务并配置防火墙# 检查配置是否有语法错误 named-checkconf named-checkzone bytecho.cn /var/named/bytecho.cn.zone # 启动服务 systemctl start named systemctl enable named # 防火墙放行 DNS firewall-cmd --permanent --add-service=dns firewall-cmd --reload5. 测试 DNS 解析# 本地测试 dig @localhost bytecho.cn dig @192.168.1.100 www.bytecho.cn # 使用 nslookup 测试 nslookup bytecho.cn localhost # 反向解析测试 dig -x 1.2.3.4 @localhost常见问题Q:启动 named 失败,提示权限不足?检查 /var/named 目录权限,确保 named 用户能读取:chown named:named /var/named/bytecho.cn.zone chmod 640 /var/named/bytecho.cn.zoneQ:客户端能解析内网域名吗?需要将客户端的 DNS 设置为这台服务器的 IP,或者在路由器上配置 DNS 转发。Q:如何配置 DNS 转发(上游 DNS)?在 /etc/named.conf 的 options 中添加:forwarders { 8.8.8.8; 114.114.114.114; }; forward only;这样本地没有的域名会转发到 8.8.8.8 解析。掌握了这些,你已经可以在内网搭建自己的 DNS 服务器了。接下来可以试试配置主从 DNS 实现高可用。
2025年03月31日
174 阅读
0 评论
0 点赞