Nextcloud started in 2016 as a fork of the popular ownCloud software. The Nextcloud team focuses on an open and transparent development process between its developers and users. As such, anyone can get involved in all aspects of Nextcloud, such as improvement, design, and testing.
Upon logging into Nextcloud, you'll feel right at home with its web-based file sharing features that you would normally see on commercial file-sharing websites. Uploading and downloading files takes just a few clicks. You won't need to bother with hefty email attachments anymore either. Any files uploaded into Nextcloud can be converted to a URL and shared. The Nextcloud team also provides desktop clients which can connect to your personal Nextcloud server.
Additionally, NextCloud is quite modular. The "Apps" portion allows you to customize Nextcloud with new features such as Calendar, Contacts, enhanced authentication, and more.
To view the publicly accessible instance, visit https://use.your.ip/. See our instructions to bypass the HTTPS warning for self-signed SSL/TLS certificates if a Commercial or Let's Encrypt SSL/TLS certificate is not going to be installed (instructions for both options are below).
Once the instance has finished booting and installing the required software, navigate to https://use.your.ip/ to complete the installation process. The installer will prompt for login credentials, which are as follows:
* User: userAdministrator Username
* Password: Administrator Password
A script is available if you connect to the server via console or SSH as the root
user. After verifying sufficient space is available and unused in the /root
filesystem to account for a duplication of data stored in Nextcloud, initiate the backup via:
# /root/backup-nextcloud.sh
This will result in a backup of the database, source code of the running Nextcloud instance, and uploaded files in a directory under /root/nextcloud-backup-YYYYMMDD
.
Cockpit control panel is accessible via https://use.your.ip:9080/:
* Credentials are the same as provided on the Server Information page
If you use the Vultr Firewall, make sure to allow access to port 9080.
Cockpit can be disabled by connecting as the root user and running:
# systemctl disable --now cockpit.socket
To access the server with a domain name, instead of use.your.ip, it is possible to register a domain name from a domain registrar, and either follow the registrar's documentation on updating DNS records, or utilize Vultr's DNS.
Once DNS has finished propagating, and the registered domain name resolves to use.your.ip, connect to the server via console or SSH as the root
user.
Certbot is installed by default on Vultr's Nextcloud Marketplace app. If you need to update or reinstall, please see the recommended installation steps at eff.org.
The below example shows installing multi-domain certificate for the bare or root domain of example.com
as well as the fully-qualified domain name (FQDN) of www.example.com
. The email provided is used for registering an account with Let's Encrypt and is not sent to Vultr:
# certbot --nginx --redirect -d www.example.com -d example.com -m admin@example.com --agree-tos --no-eff-email
Upon successfully requesting certificates, a message should be shown that includes text similar to the following:
Successfully deployed certificate for www.example.com to /etc/nginx/conf.d/nextcloud_https.conf
Congratulations! You have successfully enabled HTTPS on https://www.example.com
(Optional) To update the Cockpit Control Panel to use the same certificate, a script is available to be invoked via:
# /opt/vultr/cockpit-certificate.sh
If a commercial certificate is desired instead of the free Let's Encrypt certificate, install the public certificate as /etc/nginx/ssl/server.crt
and the private key as /etc/nginx/ssl/server.key
. Refer to the certificate vendor's documentation for any further details. Once these files are in place, reboot the server to ensure all services are using the correct certificate: # reboot
Nextcloud requires that a server's domain name be added to the trusted_domains array.
After following the steps provided by Nextcloud, accessing the instance via the configured domain name should succeed without error.
In case a certificate issued by Let's Encrypt via certbot
is to be revoked, or otherwise needs to be uninstalled, these steps should be followed:
1. Back up current web server configuration files:
# cp -r /etc/nginx /root/nginx
2. Revoke the certificate:
# certbot delete
3. Restore default web server configuration:
# /opt/vultr/fix-vhost.sh
To access the MariaDB (MySQL) database server, connect as the root user via console or SSH and run:
# mysql -u root
The root password is located in the configuration file /root/.my.cnf
.
Logs for the database server can be viewed with:
# journalctl -eu mariadb.service
After connecting as the root user via console or SSH as the root
user, the following scripts can be invoked to assist in configuration tasks.
To reset the NGINX web server configuration to its original settings, use:
# /opt/vultr/fix-vhost.sh
Our support team may request OS and Nextcloud version information, which can be obtained via:
# /opt/vultr/version.sh
/etc/php/8.2/fpm/php.ini
/etc/nginx/conf.d/
Certbot
has been utilized to generate Let's Encrypt certificates) : /etc/nginx/ssl/
Report an application with malicious intent or harmful content.