
مقدمة
Nextcloud هو منصة مفتوحة المصدر لمشاركة الملفات والتعاون، مصممة لتخزين البيانات والاتصال الآمن. يوفر بديلًا قويًا للخدمات السحابية التجارية، مما يتيح لك التحكم الكامل في بياناتك. سيوضح لك هذا الدليل كيفية تثبيت Nextcloud على Ubuntu 24.04/22.04، وضمان أن تكون إعداداتك آمنة ومحسنة.
المتطلبات الأساسية
قبل البدء، تأكد من وجود العناصر التالية:
- خادم Ubuntu 24.04/22.04.
- مستخدم غير جذر (non-root) يمتلك صلاحيات sudo.
- اسم نطاق مؤهل بالكامل (FQDN) موجه إلى عنوان IP الخاص بخادمك.
- معرفة أساسية بعمليات سطر الأوامر.
الخطوة 1: تحديث نظامك
أولاً، تأكد من أن نظامك محدث. قم بتشغيل الأوامر التالية:
$ sudo apt update
$ sudo apt upgrade -yالخطوة 2: تثبيت خادم الويب Apache
يحتاج Nextcloud إلى خادم ويب لخدمة واجهته. سنستخدم Apache لهذا الغرض.
$ sudo apt install apache2 -yقم بتمكين وتشغيل Apache:
$ sudo systemctl enable apache2
$ sudo systemctl start apache2تحقق من الحالة للتأكد من أن Apache يعمل:
$ sudo systemctl status apache2الخطوة 3: تثبيت PHP والامتدادات اللازمة
Nextcloud مبني على PHP، لذا نحتاج إلى تثبيت PHP بالإضافة إلى العديد من الامتدادات المطلوبة بواسطة Nextcloud.
$ sudo apt install php libapache2-mod-php php-mysql php-gd php-json php-curl php-mbstring php-intl php-imagick php-xml php-zip -yتحقق من إصدار PHP للتأكد من تثبيته بشكل صحيح:
$ php -vالخطوة 4: تثبيت خادم قاعدة البيانات MariaDB
يحتاج Nextcloud إلى قاعدة بيانات لتخزين بياناته. سنستخدم MariaDB، وهو فورك شائع من MySQL.
$ sudo apt install mariadb-server -yأمّن تثبيت MariaDB:
$ sudo mysql_secure_installationاتبع التعليمات لتعيين كلمة مرور الجذر وإزالة المستخدمين وقواعد البيانات غير الضرورية.
الخطوة 5: إنشاء قاعدة بيانات لـ Nextcloud
تسجيل الدخول إلى واجهة MariaDB كمستخدم الجذر:
$ sudo mysql -u root -pإنشاء قاعدة بيانات ومستخدم لـ Nextcloud:
CREATE DATABASE nextcloud;
CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextclouduser'@'localhost';
FLUSH PRIVILEGES;
EXIT;الخطوة 6: تنزيل وتكوين Nextcloud
انتقل إلى الدليل /var/www وقم بتنزيل أحدث إصدار من Nextcloud:
$ cd /var/www
$ sudo wget https://download.nextcloud.com/server/releases/latest.zipاستخراج الأرشيف الذي تم تنزيله:
$ sudo apt install unzip -y
$ sudo unzip latest.zipضبط الأذونات الصحيحة:
$ sudo chown -R www-data:www-data nextcloud
$ sudo chmod -R 755 nextcloudالخطوة 7: تكوين Apache لـ Nextcloud
إنشاء ملف تكوين Apache جديد لـ Nextcloud:
$ sudo nano /etc/apache2/sites-available/nextcloud.confأضف التكوين التالي:
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/nextcloud
ServerName your_domain
<Directory /var/www/nextcloud/>
Options +FollowSymlinks
AllowOverride All
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/nextcloud
SetEnv HTTP_HOME /var/www/nextcloud
</Directory>
ErrorLog ${APACHE_LOG_DIR}/nextcloud_error.log
CustomLog ${APACHE_LOG_DIR}/nextcloud_access.log combined
</VirtualHost>تمكين التكوين الجديد والوحدات المطلوبة لـ Apache:
$ sudo a2ensite nextcloud.conf
$ sudo a2enmod rewrite headers env dir mimeإعادة تشغيل Apache لتطبيق التغييرات:
$ sudo systemctl restart apache2الخطوة 8: تثبيت وتكوين SSL
للحفاظ على الأمان، من الضروري استخدام SSL/TLS لتشفير الاتصال بين الخادم والعملاء. سنستخدم Certbot للحصول على شهادة SSL مجانية من Let’s Encrypt.
تثبيت Certbot والمكون الإضافي لـ Apache:
$ sudo apt install certbot python3-certbot-apache -yاحصل على شهادة SSL وثبتها:
$ sudo certbot --apache -d your_domainاتبع التعليمات لإكمال تثبيت SSL. سيقوم Certbot تلقائيًا بتكوين Apache لاستخدام الشهادة الجديدة.
الخطوة 9: إكمال إعداد Nextcloud في المتصفح
افتح متصفح الويب وانتقل إلى نطاقك:
https://your_domainستتم استقبال بصفحة إعداد Nextcloud. أكمل الخطوات التالية:
- إنشاء حساب مسؤول: قدم اسم مستخدم وكلمة مرور لحساب المسؤول في Nextcloud.
- تكوين قاعدة البيانات: أدخل تفاصيل قاعدة البيانات التي أنشأتها سابقًا:
- مستخدم قاعدة البيانات: nextclouduser
- كلمة مرور قاعدة البيانات: your_password
- اسم قاعدة البيانات: nextcloud
- إنهاء الإعداد: انقر فوق “إنهاء الإعداد” لإكمال التثبيت.
الخطوة 10: تأمين تثبيت Nextcloud
تكوين النطاقات الموثوقة
افتح ملف تكوين Nextcloud:
$ sudo nano /var/www/nextcloud/config/config.phpأضف نطاقك إلى مصفوفة النطاقات الموثوقة:
'trusted_domains' =>
array (
0 => 'localhost',
1 => 'your_domain',
),إعداد مهمة cron للمهام الخلفية
يحتاج Nextcloud إلى تنفيذ المهام الخلفية بانتظام. إعداد مهمة cron للتعامل مع ذلك:
$ sudo crontab -u www-data -eأضف السطر التالي لتشغيل مهمة cron كل 5 دقائق:
*/5 * * * * php -f /var/www/nextcloud/cron.phpالخطوة 11: تحسين أداء Nextcloud
تثبيت وتكوين Opcache
Opcache هو امتداد PHP يقوم بتخزين البرامج النصية PHP المترجمة مؤقتًا لتحسين الأداء.
تثبيت Opcache:
$ sudo apt install php-opcache -yتكوين Opcache عن طريق تعديل ملف تكوين PHP:
$ sudo nano /etc/php/8.1/apache2/php.iniأضف أو عدل الأسطر التالية:
opcache.enable=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1إعادة تشغيل Apache لتطبيق التغييرات:
$ sudo systemctl restart apache2الخطوة 12: تكوينات إضافية
تمكين عناوين URL الجميلة
لتمكين عناوين URL سهلة الاستخدام في Nextcloud، قم بتحرير ملف .htaccess:
$ sudo nano /var/www/nextcloud/.htaccessأضف السطور التالية في النهاية:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteRule ^\.well-known/carddav /remote.php/dav/ [R=301,L]
RewriteRule ^\.well-known/caldav /remote.php/dav/ [R=301,L]
</IfModule>تمكين mod_rewrite في Apache:
$ sudo a2enmod rewrite
$ sudo systemctl restart apache2زيادة حد ذاكرة PHP
قم بتحرير ملف تكوين PHP لزيادة حد الذاكرة لتحسين الأداء:
$ sudo nano /etc/php/8.1/apache2/php.iniقم بتعيين حد الذاكرة إلى 512MB أو أعلى:
memory_limit = 512Mإعادة تشغيل Apache:
$ sudo systemctl restart apache2الخطوة 13: استخدام Nextcloud
تم الآن اكتمال تثبيت Nextcloud. يمكنك البدء في استخدام Nextcloud من خلال الوصول إليه عبر متصفح الويب الخاص بك. استكشف ميزاته مثل مشاركة الملفات والتقويم وجهات الاتصال والتطبيقات المختلفة التي تعزز وظيفته.
الخلاصة
يتطلب تثبيت Nextcloud على Ubuntu 24.04/22.04 عدة خطوات، بما في ذلك إعداد خادم ويب وPHP وخادم قاعدة بيانات، تليها تكوين SSL للاتصالات الآمنة. باتباع هذا الدليل، يجب أن يكون لديك مثيل Nextcloud وظيفي بالكامل يوفر حلاً قويًا لتخزين السحابة الذاتية. تذكر تحديث مثيل Nextcloud والتبعيات بانتظام للحفاظ على الأمان والأداء.
