نحوه نصب و پیکربندی Nextcloud در اوبونتو 20.04
07 آوریل 2022
خواندن 2 دقیقه
ترلان شاهماری

نحوه نصب و پیکربندی Nextcloud در اوبونتو 20.04

Nextcloud توزیعی از ownCloud و یک سرور اشتراک گذاری فایل است که به شما امکان می دهد محتوای شخصی خود، مانند اسناد و تصاویر، را در یک مکان متمرکز مثل Dropbox ذخیره کنید. تفاوت با Nextcloud این است که همه ویژگی های آن متن باز هستند. همچنین کنترل و امنیت داده های حساس را در اختیار شما قرار می دهد. بنابراین استفاده از سرویس میزبانی ابری شخص ثالث را حذف می کند. در این آموزش نحوه نصب و پیکربندی Nextcloud در اوبونتو 20.04 را بررسی خواهیم کرد!

آموزش نصب و پیکربندی Nextcloud در اوبونتو 20.04

پیش نیازها

برای تکمیل مراحل این راهنما، به موارد زیر نیاز دارید:

  • داشتن یک کاربر و فایروال non-root sudo-enabled که روی سرور شما پیکربندی شده است: می‌توانید یک کاربر با امتیازات sudo ایجاد کنید و با دنبال کردن تنظیمات اولیه سرور با اوبونتو 20.04، یک فایروال اساسی راه‌اندازی کنید.
  • داشتن نام دامنه ای که به سرور شما اشاره می کند: ما اتصالات را به نصب Nextcloud با TLS/SSL ایمن می کنیم. اگر سرور شما نام دامنه داشته باشد، Nextcloud می تواند یک گواهی SSL رایگان و قابل اعتماد از Let’s Encrypt را تنظیم و مدیریت کند. در غیر این صورت، Nextcloud می تواند یک گواهی SSL با امضای خود تنظیم کند که می تواند اتصالات را رمزگذاری کند، اما این مورد به طور پیش فرض در مرورگرهای وب قابل اعتماد نخواهد بود.

پس از انجام مراحل بالا، برای یادگیری نحوه راه اندازی Nextcloud بر روی سرور خود، ادامه کار را پیش می گیریم.

نصب و پیکربندی Nextcloud در اوبونتو 20.04

مرحله 1 – نصب Nextcloud

Nextcloud را با استفاده از سیستم بسته بندی Snap نصب کنید. این سیستم بسته‌بندی که به طور پیش‌فرض در اوبونتو 20.04 موجود است، به سازمان‌ها اجازه می‌دهد تا نرم‌افزار را به همراه تمام وابستگی‌ها و پیکربندی‌های مرتبط، در یک واحد مستقل با به‌روزرسانی‌های خودکار ارسال کنند. این بدان معناست که به جای نصب و پیکربندی یک سرور وب و پایگاه داده و سپس پیکربندی برنامه Nextcloud برای اجرا روی آن، می‌توانید بسته snap را نصب کنید که سیستم‌های اصولی را به طور خودکار مدیریت می‌کند.

برای دانلود بسته Nextcloud snap و نصب آن بر روی سیستم، دستور زیر را تایپ کنید:

sudo snap install nextcloud

به این صورت بسته Nextcloud دانلود و بر روی سرور شما نصب خواهد شد. با فهرست کردن تغییرات مرتبط با snap می‌توانید تأیید کنید که فرآیند نصب با موفقیت انجام شده است:

snap changes nextcloud

دریافت اطلاعات اضافی درباره Nextcloud Snap

اگر اطلاعات بیشتری در مورد Nextcloud snap می‌خواهید، چند دستور مفید وجود دارد.

دستور snap info می تواند توضیحات و دستورات مدیریت Nextcloud موجود، و همچنین نسخه نصب شده و کانال snap را که ردیابی می شود، به شما نشان دهد:

snap info nextcloud

snap ها می‌توانند اتصالاتی را که پشتیبانی می‌کنند تعریف کنند، این اتصالات شامل یک شکاف و دوشاخه است که وقتی به هم متصل می‌شود، دسترسی فوری به قابلیت‌ها یا سطوح دسترسی خاص را فراهم می کند. به عنوان مثال، snap هایی که به عنوان مشتری شبکه عمل می کنند، باید اتصال شبکه را داشته باشند. برای اینکه ببینیم این snap چه اتصالاتی را تعریف می کند، دستور زیر را تایپ کنید:

snap connections nextcloud

برای اطلاع از همه خدمات و برنامه‌های خاصی که این snap ارائه می‌کند، می‌توانید با تایپ کردن، نگاهی به فایل تعریف snap بیندازید:

cat /snap/nextcloud/current/meta/snap.yaml

این کار امکانی فراهم می کند تا در صورت نیاز به رفع اشکال، اجزای جداگانه موجود در اسنپ را ببینید.

مرحله 2 – پیکربندی یک حساب اداری

چند راه مختلف برای پیکربندی Nextcloud snap وجود دارد. در این راهنما، به جای ایجاد یک کاربر مدیریتی از طریق رابط وب، یک کاربر را در خط فرمان ایجاد کنید تا از دسترسی به پنجره کوچکی که نمایش صفحه ثبت نام مدیر را برای هر کسی با آدرس IP شما ممکن می کند، جلوگیری کنید.

برای پیکربندی Nextcloud با یک حساب کاربری جدید، از دستور nextcloud.manual-install استفاده کنید. باید یک نام کاربری و یک رمز عبور را به عنوان آرگومان وارد کنید:

sudo nextcloud.manual-install admin password

پیام زیر نشان می دهد که Nextcloud به درستی پیکربندی شده است:

Output
Nextcloud was successfully installed

اکنون که Nextcloud نصب شده است، باید دامنه های مورد اعتماد را طوری تنظیم کنید که Nextcloud با استفاده از نام دامنه یا آدرس IP سرور به درخواست ها پاسخ دهد.

مرحله 3 – تنظیم دامنه های مورد اعتماد

هنگام نصب از خط فرمان، Nextcloud نام میزبان هایی را که نمونه به آن ها پاسخ می دهد محدود می کند. به‌طور پیش‌فرض، این سرویس تنها به درخواست‌های ارسال شده به نام میزبان «localhost» پاسخ می‌دهد. شما از طریق نام دامنه یا آدرس IP سرور به Nextcloud دسترسی خواهید داشت، بنابراین باید این مورد را برای پذیرش این نوع درخواست‌ها تنظیم کنید.

با پرس و جو کردن مقدار آرایه trusted_domains می توانید تنظیمات فعلی را مشاهده کنید:

sudo nextcloud.occ config:system:get trusted_domains
Output
localhost

در حال حاضر، فقط localhost به عنوان اولین مقدار در آرایه وجود دارد. می‌توانیم یک ورودی برای نام دامنه یا آدرس IP سرور خود با تایپ کردن اضافه کنید:

sudo nextcloud.occ config:system:set trusted_domains 1 --value=example.com
Output
System config value trusted_domains => 1 set to string example.com

اگر دوباره دامنه های مورد اعتماد را پرس و جو کنید، خواهید دید که اکنون دو ورودی داریم:

sudo nextcloud.occ config:system:get trusted_domains
Output
localhost
example.com

اگر نیاز به افزودن راه دیگری برای دسترسی به نمونه Nextcloud داشته باشید، می‌توانید با اجرای مجدد دستور config:system:set با یک عدد فهرست افزایش‌ یافته («1» در دستور اول) و تنظیم مقدار — دامنه‌ها یا آدرس‌های اضافی، را اضافه کنید.

مرحله 4 – ایمن سازی Nextcloud Web Interface با SSL

قبل از شروع استفاده از Nextcloud، باید web interface را ایمن کنید.

اگر یک نام دامنه مرتبط با سرور Nextcloud داشته باشید، snap Nextcloud می تواند به شما کمک کند یک گواهی SSL قابل اعتماد را از Let’s Encrypt دریافت و پیکربندی کنید. اگر سرور Nextcloud نام دامنه ندارد، Nextcloud می تواند یک گواهی امضا شده را پیکربندی کند که ترافیک وب را رمزگذاری می کند اما به طور خودکار توسط مرورگر وب ما قابل اعتماد نخواهد بود.

با در نظر گرفتن این موضوع، بخش زیر را دنبال کنید که با سناریوی شما مطابقت دارد.

گزینه 1: راه اندازی SSL با Let’s Encrypt

اگر یک نام دامنه مرتبط با سرور Nextcloud خود دارید، بهترین گزینه برای ایمن سازی web interface خود دریافت گواهی Let’s Encrypt SSL است.

با باز کردن پورت‌هایی در فایروال که Let’s Encrypt برای تأیید مالکیت دامنه استفاده می‌کند، شروع کنید. با این کار صفحه ورود Nextcloud شما به صورت عمومی قابل دسترسی خواهد بود، اما از آن جایی که ما قبلا یک حساب سرپرست پیکربندی شده‌ایم، هیچ‌کس نمی‌تواند نصب را هک کند:

sudo ufw allow 80,443/tcp

سپس با تایپ کردن، یک گواهی Let’s Encrypt درخواست کنید:

sudo nextcloud.enable-https lets-encrypt

ابتدا ز شما سوال می شود که آیا سرور شما شرایط لازم برای درخواست گواهی از سرویس Let’s Encrypt را دارد یا خیر:

Output
In order for Let's Encrypt to verify that you actually own the
domain(s) for which you're requesting a certificate, there are a
number of requirements of which you need to be aware:
1. In order to register with the Let's Encrypt ACME server, you must
   agree to the currently-in-effect Subscriber Agreement located
   here:
       https://letsencrypt.org/repository/
   By continuing to use this tool you agree to these terms. Please
   cancel now if otherwise.
2. You must have the domain name(s) for which you want certificates
   pointing at the external IP address of this machine.
3. Both ports 80 and 443 on the external IP address of this machine
   must point to this machine (e.g. port forwarding might need to be

   setup on your router).

Have you met these requirements? (y/n)

برای ادامه y را تایپ کنید.

در مرحله بعد، از شما خواسته می شود یک آدرس ایمیل برای استفاده برای عملیات بازیابی ارائه دهید:

Output
Please enter an email address (for urgent notices or key recovery):

ایمیل خود را وارد کنید و برای ادامه Enter را فشار دهید.

در نهایت، نام دامنه مرتبط با سرور Nextcloud خود را وارد کنید:

Output
Please enter your domain name(s) (space-separated): example.com

گواهی Let’s Encrypt شما درخواست می شود و به شرطی که همه چیز به خوبی پیش برود، نمونه داخلی آپاچی مجددا راه اندازی می شود تا بلافاصله SSL پیاده سازی شود:

Output
Attempting to obtain certificates... done
Restarting apache... done

اکنون می‌توانید به مرحله بعدی بروید تا برای اولین بار وارد Nextcloud شوید.

گزینه 2: راه اندازی SSL با Self-Signed Certificate

اگر سرور Nextcloud شما نام دامنه ندارد، همچنان می‌توانید web interface را با ایجاد یک گواهی SSL با امضای خود ایمن کنید. این گواهی اجازه دسترسی به رابط وب را از طریق یک اتصال رمزگذاری شده می دهد، اما نمی تواند هویت سرور شما را تأیید کند، بنابراین مرورگر شما احتمالا هشداری را نمایش می دهد.

برای ایجاد یک گواهی self-signed و پیکربندی Nextcloud برای استفاده از آن، دستور زیر را تایپ کنید:

sudo nextcloud.enable-https self-signed

اکنون که web interface است، پورت های وب را در فایروال باز کنید تا امکان دسترسی به web interface فراهم شود:

sudo ufw allow 80,443/tcp

اکنون برای اولین بار آماده ورود به Nextcloud هستید.

مرحله 5 – وارد شدن به Nextcloud Web Interface

اکنون که Nextcloud پیکربندی شده است، از نام دامنه یا آدرس IP سرور خود در مرورگر وب بازدید کنید:

https://example.com

توجه: اگر گواهی self-signed SSL را تنظیم کنید، مرورگر شما ممکن است هشداری مبنی بر ناامن بودن اتصال نشان دهد زیرا گواهی سرور توسط یک مرجع گواهی معتبر امضا نشده است. این مورد مختص گواهی‌های self-signed شده است، بنابراین برای رفتن به سایت روی اخطار کلیک کنید.

از آن جایی که قبلا یک حساب مدیر را از خط فرمان پیکربندی کرده اید، به صفحه ورود Nextcloud هدایت می شوید. اعتبارنامه هایی را که برای کاربر مدیریت ایجاد کرده اید وارد کنید:

نحوه نصب و پیکربندی Nextcloud در اوبونتو 20.04

برای ورود به Nextcloud web interface روی دکمه ورود به سیستم کلیک کنید.

اولین باری که وارد می شوید، پنجره ای با چند متن مقدماتی و پیوندهایی به کلاینت های مختلف Nextcloud نمایش داده می شود که می توان از آن‌ها برای دسترسی به نمونه Nextcloud خود استفاده کرد:

نحوه نصب و پیکربندی Nextcloud در اوبونتو 20.04

برای دانلود هر یک از کلاینت های مورد علاقه خود کلیک کنید یا با کلیک بر روی X در گوشه سمت راست بالا از پنجره خارج شوید. شما به رابط اصلی Nextcloud هدایت می شوید، جایی که می توانید شروع به آپلود و مدیریت فایل ها کنید:

نحوه نصب و پیکربندی Nextcloud در اوبونتو 20.04

نصب شما اکنون کامل و ایمن شده است. برای آشنایی بیشتر با ویژگی ها و عملکرد سیستم جدید خود، می توانید رابط کاربری را بررسی کنید.

نتیجه گیری

Nextcloud می‌تواند قابلیت‌های سرویس‌های ذخیره‌سازی ابری شخص ثالث را تکرار کند و محتوا را بین کاربران یا به صورت خارجی با URL های عمومی به اشتراک بگذارد. مزیت Nextcloud این است که اطلاعات به صورت امن در مکانی که شما کنترل می کنید ذخیره می شوند. برای عملکردهای بیشتر، نگاهی به فروشگاه برنامه Nextcloud بیندازید، جایی که می‌توانید افزونه‌هایی را برای گسترش قابلیت‌های سرویس نصب کنید.

نویسنده مقاله
مقالات مرتبط
دیدگاه بگذارید