NextCloud离线部署和解决安全警告与设置
发布时间:2022-11-07 13:13:04 所属栏目:安全 来源:
导读: 这几天帮一个客户安装了NextCloud,安装还算简单,但解决安全警告却花了我大把时间和精力,真的太难了。技术的难处就在折腾起来想吐。有时让人抓狂,但完成后会让你觉得柳暗花明又一村。我全部问题,都是自己百度
|
这几天帮一个客户安装了NextCloud,安装还算简单,但解决安全警告却花了我大把时间和精力,真的太难了。技术的难处就在折腾起来想吐。有时让人抓狂,但完成后会让你觉得柳暗花明又一村。我全部问题,都是自己百度,参考了各种资料,终于解决。 先贴一张完美图,真太不容易了。NextCloud安全警告全部通过,后台任务、邮件服务器全部正常。 开始贴过程方案,可能有点长,先把我的报错,贴过来,写一些关键解决方案。 说明:我的方案是lnmp采用的是nginx而非apache,注意自己区分。 1、PHP 内存限制低于建议值 512MB。 修改php.ini关于内存的设置,设置后重启php-fpm 2、您的数据目录和文件可能可以从互联网访问。.htaccess 文件不工作。强烈建议您配置您的 web 服务器,使数据目录不再可访问,或将数据目录移到 web 服务器文档根目录之外。 移动数据目录到www根目录或上级其他目录即可 NextCloud 修改数据存储位置(以CentOS 8(apache)为例) 3、PHP 的安装似乎不正确,无法访问系统环境变量。getenv("PATH") 函数测试返回了一个空值。 请检查安装文档 ↗中关于PHP的配置说明和您服务器上的PHP配置,特别是在使用 php-fpm 时。 参考:find / -name php-fpm.conf /etc/php/7.4/fpm/php-fpm.conf vim /etc/php/7.4/fpm/php-fpm.conf 尾部添加一行: env[PATH] = /usr/local/bin:/usr/bin:/bin:/usr/local/php/bin 4、有些应用程序目录是由与 Web 服务器不同的用户拥有的。如果应用程序是手动安装的网页安全警告,情况可能是这样的。检查以下应用程序目录的权限: /var/www/html/nextcloud/apps/accessibility /var/www/html/nextcloud/apps/activity /var/www/html/nextcloud/apps/admin_audit /var/www/html/nextcloud/apps/circles /var/www/html/nextcloud/apps/cloud_federation_api /var/www/html/nextcloud/apps/comments /var/www/html/nextcloud/apps/contactsinteraction /var/www/html/nextcloud/apps/dashboard /var/www/html/nextcloud/apps/dav /var/www/html/nextcloud/apps/encryption /var/www/html/nextcloud/apps/federatedfilesharing /var/www/html/nextcloud/apps/federation /var/www/html/nextcloud/apps/files /var/www/html/nextcloud/apps/files_external /var/www/html/nextcloud/apps/files_pdfviewer /var/www/html/nextcloud/apps/files_rightclick /var/www/html/nextcloud/apps/files_sharing /var/www/html/nextcloud/apps/files_trashbin /var/www/html/nextcloud/apps/files_versions /var/www/html/nextcloud/apps/files_videoplayer /var/www/html/nextcloud/apps/firstrunwizard /var/www/html/nextcloud/apps/logreader /var/www/html/nextcloud/apps/lookup_server_connector /var/www/html/nextcloud/apps/nextcloud_announcements /var/www/html/nextcloud/apps/notifications /var/www/html/nextcloud/apps/oauth2 /var/www/html/nextcloud/apps/password_policy /var/www/html/nextcloud/apps/photos /var/www/html/nextcloud/apps/privacy /var/www/html/nextcloud/apps/provisioning_api /var/www/html/nextcloud/apps/recommendations /var/www/html/nextcloud/apps/serverinfo /var/www/html/nextcloud/apps/settings /var/www/html/nextcloud/apps/sharebymail /var/www/html/nextcloud/apps/support /var/www/html/nextcloud/apps/survey_client /var/www/html/nextcloud/apps/systemtags /var/www/html/nextcloud/apps/text /var/www/html/nextcloud/apps/theming /var/www/html/nextcloud/apps/twofactor_backupcodes /var/www/html/nextcloud/apps/updatenotification /var/www/html/nextcloud/apps/user_ldap /var/www/html/nextcloud/apps/user_status /var/www/html/nextcloud/apps/viewer /var/www/html/nextcloud/apps/weather_status /var/www/html/nextcloud/apps/workflowengine 配置www-data权限,不要配置777权限 5、"Strict-Transport-Security" HTTP 头未设为至少 "15552000" 秒。为了提高安全性,建议启用 HSTS,参考步骤见 安全小贴士 ↗ Nginx配置文件中添加以下行内容 add_header Strict-Transport-Security max-age=15552000; service nginx restart 6、伪静态重定向问题 您的网页服务器未正确设置以解析“/.well-known/webfinger”。更多信息请参见文档↗。 您的网页服务器未正确设置以解析“/.well-known/nodeinfo”。更多信息请参见文档↗。 您的网页服务器未正确设置以解析“/.well-known/caldav”。更多信息请参见文档↗。 您的网页服务器未正确设置以解析“/.well-known/carddav”。更多信息请参见文档↗。 打开网站的文档改下就行了,注意区分有无下级目录,改好后清空缓存。 后台好像使用js检测的,缓存没清理的话,会一直报错。 7、你还没有设置或验证你的电子邮件服务器配置。请前往基本设置,以便进行设置。之后,使用表单下方的 "发送电子邮件 "按钮来验证您的设置。 根据实际参数配置好邮件服务器即可。 9、您的安装没有设置默认的电话区域。这对验证配置设定中没有国家代码的电话号码而言是必需的。要允许没有国家代码的电话号码,请添加带区域相应的 ISO 3166-1 code ↗ 的“默认_电话_区域”到你的配置文件中。 配置文件中加一行代码即可,注意要清空缓存。 10、内存缓存未配置。为了提升性能,请尽量配置内存缓存。更多信息请参见文档↗。 The PHP OPcache module is not properly configured. See the documentation ↗ for more information. The OPcache buffer is nearly full. To assure that all scripts can be hold in cache, it is recommended to apply opcache.memory_consumption to your PHP configuration with a value higher than 128. The OPcache interned strings buffer is nearly full. To assure that repeating strings can be effectively cached, it is recommended to apply opcache.interned_strings_buffer to your PHP configuration with a value higher than 8. 开启PHP OPcache可参考网上的配置部署,可以参考 普通人在修行中:Nextcloud私有云盘配置和优化技巧 11、该实例缺失了一些推荐的 PHP 模块。为提高性能和兼容性,我们强烈建议安装它们。 gmp imagick 缺啥安装啥即可 apt install php-gmp php-imagick 12、关于apcu,我遇到一个问题。 sudo apt-get update sudo apt-get install php-apcu -y 安装了apcu拓展库,也修改了config.php但就是报错。 查了一个教程,最近更新Debian10与NextCloud21遇到的问题 - SGTfz 就是说php有php-fpm和php-cli两种运行方式,都要开启apcu 接着我根据文章教程,用了php -i和php --ini发现了问题,果然php-cli里没启用,接着就添加一行代码 vim /etc/php/7.4/cli/php.ini 加入内容:apc.enable_cli=1 接着重启,问题终于解决。最后完美了。 13、关于cron.php定时任务,使用系统的最方便了 Nextcloud添加系统 cron 服务 但是注意权限必须是www-data,不能用root或者其他用户,否则报错。 完成了所有,我感觉自己想吐了,代码看到头疼,压根不想再动代码了,心很累的感觉,想好好歇息几天。 (编辑:百科站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐

