二:nextcloud27最全面优化与解决各种安全警告_nextcloud 优化全攻略

本人从事网路安全工作12年,曾在2个大厂工作过,安全服务、售后服务、售前、攻防比赛、安全讲师、销售经理等职位都做过,对这个行业了解比较全面。

最近遍览了各种网络安全类的文章,内容参差不齐,其中不伐有大佬倾力教学,也有各种不良机构浑水摸鱼,在收到几条私信,发现大家对一套完整的系统的网络安全从学习路线到学习资料,甚至是工具有着不小的需求。

最后,我将这部分内容融会贯通成了一套282G的网络安全资料包,所有类目条理清晰,知识点层层递进,需要的小伙伴可以点击下方小卡片领取哦!下面就开始进入正题,如何从一个萌新一步一步进入网络安全行业。

学习路线图

其中最为瞩目也是最为基础的就是网络安全学习路线图,这里我给大家分享一份打磨了3个月,已经更新到4.0版本的网络安全学习路线图。

相比起繁琐的文字,还是生动的视频教程更加适合零基础的同学们学习,这里也是整理了一份与上述学习路线一一对应的网络安全视频教程。

网络安全工具箱

当然,当你入门之后,仅仅是视频教程已经不能满足你的需求了,你肯定需要学习各种工具的使用以及大量的实战项目,这里也分享一份我自己整理的网络安全入门工具以及使用教程和实战。

项目实战

最后就是项目实战,这里带来的是SRC资料&HW资料,毕竟实战是检验真理的唯一标准嘛~

面试题

归根结底,我们的最终目的都是为了就业,所以这份结合了多位朋友的亲身经验打磨的面试题合集你绝对不能错过!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

 'default_phone_region' => 'CN',
 'default_language' => 'zh_CN',
 'default_locale' => 'zh',

不被信任的域名

vim /var/www/nextcloud/config/config.php

添加该域名即可

  #受信任的域名
  'trusted_domains' => 
  array (
    0 => '10.0.0.2',
    1 => '10.1.1.20',
    2 => 'nc6.example.com',
    3 => 'hnc6.example.com',
    4 => 'nc4.example.com',
  ),

您的网页服务器未正确设置以解析“/.well-known/**”

编辑nginx配置文件,修改well-know相关

    location ^~ /.well-known {

            location = /.well-known/webfinger   { return 301 $scheme://$host:11224/index.php/.well-known/webfinger; }
            location = /.well-known/nodeinfo    {return 301 $scheme://$host:11224/index.php/.well-known/nodeinfo;}

            location = /.well-known/carddav     { return 301 $scheme://$host:11224/remote.php/dav/; }
            location = /.well-known/caldav      { return 301 $scheme://$host:11224/remote.php/dav/; }

            try_files $uri $uri/ =404;
        }

编辑 vim /var/www/nextcloud/config/config.php

主域名一定使用本机的,原因在于安装时使用了代理服务器域名

'overwrite.cli.url' => 'https://10.0.0.2:11224',

40069:当端口不是80或者443并且在安装时使用代理的域名时会出现此问题,修改40069为对应的外部映射端口

或者使用 $server_port来代替

缺少PHP模块

缺啥补啥,或者全给他下了

sudo apt install -y php8.2-common php8.2-curl php8.2-xml php8.2-mbstring php8.2-gd php8.2-sqlite3 php8.2-mysql php8.2-bz2 php8.2-intl php8.2-ldap php8.2-imap php8.2-bcmath php8.2-gmp php8.2-apcu php8.2-imagick

优化内存缓存配置

官网推荐同时使用本地缓存和分布式缓存。推荐的缓存是APCu和Redis

apt install -y php8.2-apcu redis-server php8.2-redis

确认Redis是否正在运行:

ps ax | grep redis
netstat -tlnp | grep redis

Redis开始运行后,启用相应php模块:

你也可以手动在php.ini中添加以下内容,效果相同:

vim /etc/php/8.2/fpm/php.ini

; Redis php extension
extension=redis.so

开启apcu(php有php-fpm和php-cli两种运行方式,都要开启apcu,添加apc.enable_cli=1

vim /etc/php/8.2/fpm/conf.d/20-apcu.ini

apc.enable_cli=1

vim /etc/php/8.2/cli/php.ini

apc.enable_cli=1

按照上述的步骤重启PHP服务

开启apcu和redis

vim /var/www/nextcloud/config/config.php

添加如下内容

  'memcache.local' => '\OC\Memcache\APCu',
  'memcache.distributed' => '\OC\Memcache\Redis',
  'memcache.locking' => '\OC\Memcache\Redis',
  'redis' => [
  'host' => 'localhost',
  'port' => 6379],

添加 'memcache.distributed' => '\OC\Memcache\Redis', 后会报错,不知为何,若报错删除即可

如果redis有密码,加上该参数即可'password' => '******'

重载nginx

systemctl reload nginx

优化 php-fpm 性能,提高页面加载效率

可在这个网站计算:https://spot13.com/pmcalculator/

优化www.conf配置文件,增加更多的进程来处理页面数据。

vim /etc/php/8.2/fpm/pool.d/www.conf

需要修改和添加的字段有:

# pm.max\_children = 5
pm.max_children = 79

# pm.start\_servers = 2
pm.start_servers = 19

#pm.min\_spare\_servers = 1
pm.min_spare_servers = 19

# pm.max\_spare\_servers = 3
pm.max_spare_servers = 59


数值越大,进程越多,平均每个进程消耗 32M-96M 内存,按需设置

设置成功后重启 nextcloud 服务即可。

504 Gateway Time-out

vim /etc/nginx/conf.d/nextcloud.conf

在 nginx 配置文件钟添加以下语句即可解决

fastcgi_read_timeout 86400;

重启nginx或者重新加载配置文件

nginx -s reload

存在错误日志

日志路径位于nextcloud/data/ 目录下

vim /var/www/nextcloud/data/nextcloud.log

php-imagick 模块不支持 SVG

可以直接用以下步骤即可

 apt install libmagickcore-6.q16-6-extra

重启nginx

systemctl restart nginx

nextcloud无法访问应用商店

#在config.php中增加以下配置

vim /var/www/nextcloud/config/config.php

'appstoreenabled' => true,
'appstoreurl' => 'https://www.orcy.net/ncapps/v2/',

视频预览与缩略图并配置imaginary

在应用商店下载Preview Generator 插件并将其启用(通过正确配置可以预生成预览文件,减少系统负载)

首先生成所有预览(必须下载Preview Generator),如若文件很多,将会耗费较长时间

cd /var/www/nextcloud
sudo -u www-data php occ Preview:generate-all -vvv

其次将Preview:pre-generate添加到cron作业中

cd /var/www/nextcloud
sudo -u www-data php occ preview:pre-generate

构建imaginary服务

手动构建

创建并编辑docker-compose.yml

version: '3.1'

services:
  aio-imaginary:
    image: docker.io/nextcloud/aio-imaginary:latest
    restart: always
    environment:
      - PORT=9000
    ports:
      - "172.18.0.10:9000:9000"
    command: 
      - -concurrency 50
      - -enable-url-source
      - -log-level debug

之后在当前文件夹下执行docker compose up -d即可

宝塔1panel构建

image-20240117112813661

apt install libmagickcore-6.q16-6-extra
apt install ffmpeg

vim /var/www/nextcloud/config/config.php

'enable_previews' => true,
'enabledPreviewProviders' =>
 array (
    0 => 'OC\\Preview\\TXT',
    1 => 'OC\\Preview\\MarkDown',
    2 => 'OC\\Preview\\OpenDocument',
    3 => 'OC\\Preview\\PDF',
    4 => 'OC\\Preview\\MSOffice2003',
    5 => 'OC\\Preview\\MSOfficeDoc',
    6 => 'OC\\Preview\\PDF',
    7 => 'OC\\Preview\\Image',
    8 => 'OC\\Preview\\Photoshop',
    9 => 'OC\\Preview\\TIFF',
   10 => 'OC\\Preview\\SVG',
   11 => 'OC\\Preview\\Font',
   12 => 'OC\\Preview\\MP3',
   13 => 'OC\\Preview\\Movie',
   14 => 'OC\\Preview\\MKV',
   15 => 'OC\\Preview\\MP4',
   16 => 'OC\\Preview\\AVI',
   17 => 'OC\Preview\EMF',
   18 => 'OC\\Preview\\Krita',
   19 => 'OC\\Preview\\Imaginary',
 ),

 'preview_imaginary_url' => 'http://imaginary:9000',
 #缩略图为webp格式
 'preview_format' => 'webp',

预览图像的默认 WebP 质量设置为“80”。将其更改为30,加快加载速度:

cd /var/www/nextcloud
sudo -u www-data php occ config:app:set preview webp_quality --value="30"

之后可以很明显的感觉到加载图片速度变快了,也可以预览视频图片

设置cron定时任务

image-20240115151601953

vim /etc/systemd/system/nextcloudcron.service

[Unit]
Description=Nextcloud cron.php job
 
[Service]
User=www-data
ExecStart=/usr/bin/php -f /var/www/nextcloud/cron.php
 
[Install]
WantedBy=basic.target

vim /etc/systemd/system/nextcloudcron.timer

[Unit]
Description=Run Nextcloud cron.php every 7 minutes
 
[Timer]
OnBootSec=7min
OnUnitActiveSec=7min
Unit=nextcloudcron.service
 
[Install]
WantedBy=timers.target

systemctl enable --now nextcloudcron.timer	

电子邮件配置

image-20240115151630965

数据库优化

具体优化性能以硬件标准为准

vim /etc/php/8.2/fpm/conf.d/20-mysqli.ini

最底下加入以下内容:

[mysql]
mysql.allow_local_infile=On
mysql.allow_persistent=On
mysql.cache_size=2000
mysql.max_persistent=-1
mysql.max_links=-1
mysql.default_port=
mysql.default_socket=/run/mysqld/mysqld.sock 
mysql.default_host=
mysql.default_user=
mysql.default_password=
mysql.connect_timeout=60
mysql.trace_mode=Off

编辑 mariadb.cnf 文件:

vim /etc/mysql/mariadb.cnf

加入以下内容:

[server]
skip_name_resolve = 1
innodb_buffer_pool_size = 128M
innodb_buffer_pool_instances = 1
innodb_flush_log_at_trx_commit = 2
innodb_log_buffer_size = 32M
innodb_max_dirty_pages_pct = 90
query_cache_type = 1
query_cache_limit = 2M
query_cache_min_res_unit = 2k
query_cache_size = 64M
tmp_table_size= 64M
max_heap_table_size= 64M
slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow.log


### 给大家的福利


**零基础入门**


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


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


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


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


因篇幅有限,仅展示部分资料


网络安全面试题


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


绿盟护网行动


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


还有大家最喜欢的黑客技术


![](https://img-blog.csdnimg.cn/img_convert/5912337446dee53639406fead3d3f03c.jpeg)


**网络安全源码合集+工具包**


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


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

**所有资料共282G**,朋友们如果有需要全套《网络安全入门+黑客进阶学习资源包》,可以扫描下方二维码领取(如遇扫码问题,可以在评论区留言领取哦)~




**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化资料的朋友,可以点击这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**


**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

  • 29
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Nextcloud 是一个强大的开源自托管文件同步和共享解决方案,可以为用户提供类似于 Dropbox 的数据同步和共享功能。它具有丰富的应用生态系统和强大的次开发能力,使开发者能够为其添加各种自定义功能和扩展。 Nextcloud次开发可以通过多种方式进行,包括创建新的插件、修改现有插件、创建新的主题、定制用户界面等。开发者可以使用 PHP、JavaScript、HTML、CSS 等技术来进行开发,根据自己的需求选择合适的方式。 通过开发插件,可以为 Nextcloud 添加新的功能和特性。例如,可以创建一个新的日历插件,使用户能够在 Nextcloud 中管理日程安排和提醒。还可以创建一个新的文件预览插件,使用户能够在浏览器中直接预览各种类型的文件。 通过修改现有插件,可以根据自己的需要来定制和扩展现有功能。例如,可以修改文件共享插件,实现更加灵活的共享方式,或者修改用户管理插件,添加更多的用户管理选项。 通过创建新的主题,可以改变 Nextcloud 的用户界面外观和风格。开发者可以根据自己的设计需求和品牌形象,自定义界面的样式、布局和颜色等。 通过次开发,开发者可以根据自己的需求和想法,为 Nextcloud 添加各种自定义功能和扩展,从而为用户提供更好的使用体验和功能选择。同时,由于 Nextcloud 是开源软件,开发者还可以与社区共享自己的次开发成果,为社区的发展做出贡献。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值