{"id":17508152,"url":"https://github.com/feralducka/zero-to-nextcloud","last_synced_at":"2026-04-06T09:32:50.352Z","repository":{"id":260067005,"uuid":"877372483","full_name":"FeralDucka/Zero-to-Nextcloud","owner":"FeralDucka","description":"A setup script for making a fresh-installed, bare-metal, Ubuntu/Debian machine a full fledged Nextcloud server.","archived":false,"fork":false,"pushed_at":"2025-02-10T18:45:13.000Z","size":99,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-10T19:39:58.885Z","etag":null,"topics":["apache","apache2","apcu","debian","duckdns","fail2ban","infiniband","installation-scripts","installer","mariadb","mysql","nextcloud","nextcloud-installation","nut","php","php-fpm","redis","ubuntu","ufw","ufw-firewall"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FeralDucka.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-23T14:37:48.000Z","updated_at":"2025-02-10T18:45:16.000Z","dependencies_parsed_at":null,"dependency_job_id":"a67468df-072d-4694-96fd-b1da00826f78","html_url":"https://github.com/FeralDucka/Zero-to-Nextcloud","commit_stats":null,"previous_names":["feralducka/zero-to-nextcloud"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FeralDucka%2FZero-to-Nextcloud","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FeralDucka%2FZero-to-Nextcloud/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FeralDucka%2FZero-to-Nextcloud/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FeralDucka%2FZero-to-Nextcloud/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FeralDucka","download_url":"https://codeload.github.com/FeralDucka/Zero-to-Nextcloud/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246103853,"owners_count":20724034,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apache","apache2","apcu","debian","duckdns","fail2ban","infiniband","installation-scripts","installer","mariadb","mysql","nextcloud","nextcloud-installation","nut","php","php-fpm","redis","ubuntu","ufw","ufw-firewall"],"created_at":"2024-10-20T04:12:32.514Z","updated_at":"2025-12-30T20:31:08.570Z","avatar_url":"https://github.com/FeralDucka.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# \u0026#10024; Zero-to-Nextcloud \u0026#10024;\nMy personal setup script for making a fresh-installed, bare-metal, Ubuntu/Debian machine in to a hardened full-fledge NextCloud server.\u003cbr\u003e\n\u003cbr\u003e\nThe setup include:\n\u003cul\u003e\n    \u003cli\u003eNextcloud\u003c/li\u003e\n    \u003cli\u003eApache2 (with ModSecurity and ModEvasive) as WebServer\u003c/li\u003e\n    \u003cli\u003ePHP-FPM as PHP engine\u003c/li\u003e\n    \u003cli\u003eCertBot for HTTPS certificate\u003c/li\u003e\n    \u003cli\u003eMySQL as DBMS\u003c/li\u003e\n    \u003cli\u003eRedis and APCu for caching\u003c/li\u003e\n    \u003cli\u003eNUT for monitoring the UPS\u003c/li\u003e\n    \u003cli\u003eFail2Ban and UFW firewall for security\u003c/li\u003e\n    \u003cli\u003e+ various scripts to keep everything in check\u003c/li\u003e\n\u003c/ul\u003e\n\u003cbr\u003e\n\u003cbr\u003e\nThe setup take in consideration that \u003cb\u003emy\u003c/b\u003e Nextcloud instance is divided on multiple server (one for compute and one for storage) connected via InfiniBand.\u003cbr\u003e\n\u003cbr\u003e\nThis setup is personal, but feel free to fork it and use it as you want. \u003cbr\u003e\n\u003cbr\u003e\n\u003cb\u003e* \\( ﾟヮﾟ)/ *\u003c/b\u003e\n\n\u003cbr\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\n# Setup \u0026#9989;\nRemember to customize the variables, in ```setup.sh```, and the configuration files, in base of your needs. \u003cbr\u003e\nThe script must be run as **root**.\u003cbr\u003e\n```\nwget https://raw.githubusercontent.com/FeralDucka/zero-to-nextcloud/main/setup.sh\n```\n```\nchmod +x setup.sh\n```\n```\nsudo ./setup.sh\n```\n\n\u003cbr\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\n# If things go wrong \u0026#9888;\nIf the installation process does not complete successfully, is possbile to restart the process.\u003cbr\u003e\nFirst must be run ```reset.sh``` to prepare the files and MariaDB database (if it was installed).\u003cbr\u003e\nThen is possible to run ```setup.sh``` again.\u003cbr\u003e\n\u003cbr\u003e\nRemember to customize the variables, in ```reset.sh``` and ```setup.sh```\u003cbr\u003e\nThe script must be run as **root**.\u003cbr\u003e\n```\nwget https://raw.githubusercontent.com/FeralDucka/zero-to-nextcloud/main/reset.sh\n```\n```\nchmod +x reset.sh\n```\n```\nsudo ./reset.sh\n```\n\n\u003cbr\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\n# Recommended enabled/disabled default Apps \u0026#128295; \u0026#128296;\n```\nsudo -u www-data php /var/www/nextcloud/occ app:disable app_api\nsudo -u www-data php /var/www/nextcloud/occ app:disable circles\nsudo -u www-data php /var/www/nextcloud/occ app:disable dashboard\nsudo -u www-data php /var/www/nextcloud/occ app:disable firstrunwizard\nsudo -u www-data php /var/www/nextcloud/occ app:disable nextcloud_announcements\nsudo -u www-data php /var/www/nextcloud/occ app:disable photos\nsudo -u www-data php /var/www/nextcloud/occ app:disable sharebymail\nsudo -u www-data php /var/www/nextcloud/occ app:disable support\nsudo -u www-data php /var/www/nextcloud/occ app:disable weather_status\nsudo -u www-data php /var/www/nextcloud/occ app:disable webhook_listeners\n```\n```\nsudo -u www-data php /var/www/nextcloud/occ app:enable suspicious_login\nsudo -u www-data php /var/www/nextcloud/occ app:enable twofactor_nextcloud_notification\nsudo -u www-data php /var/www/nextcloud/occ app:enable twofactor_totp\n```\n\n\u003cbr\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\n# Recommended Apps to install \u0026#128301; \u0026#127776;\n```\nsudo -u www-data php /var/www/nextcloud/occ app:install camerarawpreviews --force\nsudo -u www-data php /var/www/nextcloud/occ app:install checksum --force\nsudo -u www-data php /var/www/nextcloud/occ app:install duplicatefinder --force\nsudo -u www-data php /var/www/nextcloud/occ app:install epubviewer --force\nsudo -u www-data php /var/www/nextcloud/occ app:install files_3dmodelviewer --force\nsudo -u www-data php /var/www/nextcloud/occ app:install files_archive --force\nsudo -u www-data php /var/www/nextcloud/occ app:install files_automatedtagging --force\nsudo -u www-data php /var/www/nextcloud/occ app:install files_downloadactivity --force\nsudo -u www-data php /var/www/nextcloud/occ app:install files_markdown --force\nsudo -u www-data php /var/www/nextcloud/occ app:install geoblocker --force\nsudo -u www-data php /var/www/nextcloud/occ app:install htmlviewer --force\nsudo -u www-data php /var/www/nextcloud/occ app:install integration_giphy --force\nsudo -u www-data php /var/www/nextcloud/occ app:install integration_openstreetmap --force\nsudo -u www-data php /var/www/nextcloud/occ app:install logcleaner --force\nsudo -u www-data php /var/www/nextcloud/occ app:install memories --force\nsudo -u www-data php /var/www/nextcloud/occ app:install metadata --force\nsudo -u www-data php /var/www/nextcloud/occ app:install music --force\nsudo -u www-data php /var/www/nextcloud/occ app:install ownershiptransfer --force\nsudo -u www-data php /var/www/nextcloud/occ app:install previewgenerator --force\nsudo -u www-data php /var/www/nextcloud/occ app:install quota_warning --force\nsudo -u www-data php /var/www/nextcloud/occ app:install richdocuments --force\nsudo -u www-data php /var/www/nextcloud/occ app:install richdocumentscode --force\nsudo -u www-data php /var/www/nextcloud/occ app:install thesearchpage --force\nsudo -u www-data php /var/www/nextcloud/occ app:install twofactor_webauthn --force\nsudo -u www-data php /var/www/nextcloud/occ app:install user_usage_report --force\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fferalducka%2Fzero-to-nextcloud","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fferalducka%2Fzero-to-nextcloud","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fferalducka%2Fzero-to-nextcloud/lists"}