宝塔面板+NextCloud文档云 搭建流程

系统工程 - 建设篇

第一章 宝塔面板+NextCloud文档云 搭建流程

  • 系统工程 - 建设篇
  • 下章内容
  • 前言
    • 实施步骤
    • 前置条件
  • 部署宝塔面板
    • 安装CentOS操作系统
    • 配置CentOS操作系统
    • 安装Linux宝塔面板
  • 配置宝塔面板的LNMP
    • Nginx配置
    • MySQL配置
    • PHP配置
    • Redis配置
    • 宝塔开启禁ping,修改ssh端口,开启系统防火墙,可选关闭selinux
    • 宝塔新建网站和数据库,做计划定时备份
  • 部署NextCloud
    • 下载NextCloud并安装
    • 配置nextcloud
      • nextcloud自动化检查系统是否正常部署并优化完整
      • 对nextcloud进行redis及其他配置优化
      • 用户头像使用中文字体生成
  • 参考来源


下章内容

第二章 vaultwarden密码库 搭建流程


前言

为方便局域网的线上协同办公,部署一套NextCloud文档云系统,后台使用宝塔Linux面板搭建,方便运维。NextCloud的前身是OwnCloud

ESXi底层:VMware VMvisor 6.7.0
NextCloud目标版本:NextCloud 24.0.1
宝塔面板目标版本:Linux面板 7.9.1
Linux系统版本:CentOS 7.9 Minimal 2009
Nginx版本:1.21.4
MySQL版本:8.0.24
PHP版本:7.4
Redis版本:6.2.6

实施步骤

1. 安装CentOS操作系统
2. 部署宝塔面板
3. 宝塔面板安装LNMP模块,并配置Nginx、MySQL、PHP等模块
4. 部署NextCloud文档云,对NextCloud进行配置调优
5. NextCloud同步域控LDAP


前置条件

  • 内网有域控LDAP目录服务
  • Linux虚拟机需要联网
  • 准备Xshell等连接工具,安装lrzsz、zip、unzip等工具


部署宝塔面板

安装CentOS操作系统

(略)



配置CentOS操作系统

配置网卡,开启sshd服务,远程连接Linux
配置网关(CentOS默认网关的名称从ip addr里查看)

vi /etc/sysconfig/network-scripts/ifcfg-ens192

BOOTPROTO=static
ONBOOT=yes
IPADDR=1.1.1.1
PREFIX=24
GATEWAY=1.1.1.254
DNS1=1.1.1.11
DNS2=1.1.1.12
:x

systemctl restart network

修改sshd的监听端口,允许root登录ssh

vi /etc/ssh/sshd_config

Port 2234
PermitRootLogin yes
PasswordAuthentication yes
:x

systemctl restart sshd

检查本地firewalld防火墙配置

iptables -nvL			# 检查防火墙规则
firewall-cmd --state	# 检查防火墙启用状态
firewall-cmd --list-all	# 查看当前防火墙的规则列表

firewall-cmd --zone=public --permanent --add-port=2234/tcp		# 给当前防火墙的public区域 添加 允许TCP2234的规则
firewall-cmd --reload	# 重载防火墙配置
iptables -nvL			# 检查防火墙规则

可选关闭selinux

getenforce		# 查看selinux状态
setenforce 0	# 临时关闭selinux


vim /etc/selinux/config
  
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled			# 永久关闭selinux
# SELINUXTYPE= can take one of three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected. 
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

Xshell连接Linux

ssh [email protected] 2234

确认是否有必备工具和基础环境升级

rpm -qa | grep -E "lrzsz|wget|zip"		# 查看已安装的软件包
yum list | grep -E "lrzsz|wget|zip"		# yum线上查询软件包, 带@base的是已安装, 带@updates的是已安装但有新版本可以更新, 其他状态都是未安装

yum update						# 更新yum源软件包列表
hostname -i						# 查看当前主机名
hostnamectl set-hostname baota	# 修改当前主机名


安装Linux宝塔面板

更多宝塔面板版本请参考宝塔官网:宝塔社区版本
Linux面板 7.9.1版本安装

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh ed8484bec
/etc/init.d/bt default		# 查看宝塔初始化的默认配置

宝塔面板+NextCloud文档云 搭建流程_第1张图片

浏览器访问内网面板地址
宝塔面板+NextCloud文档云 搭建流程_第2张图片 宝塔面板+NextCloud文档云 搭建流程_第3张图片


初始化部署宝塔面板需要绑定宝塔账号宝塔面板+NextCloud文档云 搭建流程_第4张图片
推荐安装套件一般选择LNMP(此案例使用编译安装,性能更稳定,支持更多丰富功能)
宝塔面板+NextCloud文档云 搭建流程_第5张图片


等待LNMP安装完成后,对面板的基础配置依次修改如下

1. [面板设置] - 修改[面板密码]			# 改完需要重新登录
2. [面板设置] - 修改[面板账号]			# 改完需要重新登录
3. [面板设置] - 设置[绑定宝塔账号]		# 自行登录堡塔官方注册账号
4. [面板设置] - 关闭[在线客服]
5. [面板设置] - 修改[面板端口]			# 改完自动跳转
6. [面板设置] - 修改[绑定域名]			# 改完自动跳转
7. [面板设置] - 修改[安全入口]
8. [面板设置] - 开启[面板SSL]			# 改完自动跳转
9. [面板设置] - 设置[设置消息通道] - [发送者设置]
10. [面板设置] - 修改[未认证响应状态]

以上步骤必须依次进行,否则容易出现找不到密码得去SSH重置宝塔的风险行为。

宝塔面板+NextCloud文档云 搭建流程_第6张图片
宝塔面板+NextCloud文档云 搭建流程_第7张图片
宝塔面板+NextCloud文档云 搭建流程_第8张图片


完成面板基础配置后,安装一些必要的功能插件,软件商店处下载即可
宝塔面板+NextCloud文档云 搭建流程_第9张图片
安装好必要的功能插件后,新建网站或数据库应用及系统防火墙等等操作,参考宝塔官方手册

Nginx 1.21.4 
PHP-7.4
Redis 6.2.6
MySQL 8.0.24
phpMyAdmin 4.4
系统防火墙 3.1
木马查杀工具 3.0
Pure-Ftpd 1.0.49

其他软件可选安装

宝塔面板+NextCloud文档云 搭建流程_第10张图片

系统防火墙只开启特定端口


配置宝塔面板的LNMP

Nginx配置

vim /www/server/nginx/conf/nginx.conf
user  www www;
worker_processes auto;
error_log  /www/wwwlogs/nginx_error.log  crit;
pid        /www/server/nginx/logs/nginx.pid;
worker_rlimit_nofile 51200;

stream {
   
    log_format tcp_format '$time_local|$remote_addr|$protocol|$status|$bytes_sent|$bytes_received|$session_time|$upstream_addr|$upstream_bytes_sent|$upstream_bytes_received|$upstream_connect_time';
  
    access_log /www/wwwlogs/tcp-access.log tcp_format;
    error_log /www/wwwlogs/tcp-error.log;
    include /www/server/panel/vhost/nginx/tcp/*.conf;
}

events
    {
   
        use epoll;
        worker_connections 51200;
        multi_accept on;
    }

http
    {
   
        include       mime.types;
		#include luawaf.conf;

		include proxy.co

你可能感兴趣的:(系统工程,服务器,运维,linux)