سفارش تبلیغ
صبا ویژن

ایجاد یک برنامه Django و اتصال آن به یک بانک اطلاعاتی

به خاطر چارچوب وب آزاد و منبع باز که در پایتون نوشته شده است ، Django امکان مقیاس پذیری ، قابلیت استفاده مجدد و توسعه سریع را فراهم می آورد.
در این آموزش می بینید که چگونه پایه و اساس اولیه یک سایت وبلاگی با اتصال به یک پایگاه داده MySQL را تنظیم کنید. این امر شامل ایجاد ساختار اسکلت برنامه وبلاگ با استفاده از django-admin ، ایجاد بانک اطلاعاتی MySQL و سپس اتصال برنامه وب به دیتابیس خواهد بود.
توجه داشته باشید که این امر محیط توسعه را برای شما فراهم می کند تا بتوانید در برنامه وبلاگ خود کار کنید ، اما شما باید قبل از اینکه وبلاگ خود را به صورت زنده در اینترنت قرار دهید ، کارهای دیگری انجام دهید ، نام های دامنه را تعیین و لایه های امنیتی بیشتری اضافه کنید.
پیش نیازها
باید یک محیط Python در سرور مجازی خود تنظیم کنید. در این آموزش ، ما از سرور مجازی اوبونتو 20.04 استفاده خواهیم کرد ، اما از آنجا که تمرکز این آموزش بر روی Django است ، این اصول باید برای سایر سیستم عامل ها نیز کاربرد داشته باشد.
برای راه اندازی پایتون ، آموزش نحوه نصب پایتون 3 و تنظیم یک محیط برنامه نویسی را در سرور مجازی اوبونتو 20.04 دنبال کنید.
با قرارگیری پایتون در جای خود ، می توانیم به سراغ ایجاد برنامه خود برویم.
مرحله 1 – MySQL را نصب کنید
ما از MySQL به عنوان بانک اطلاعاتی خود استفاده خواهیم کرد. ممکن است شما بخواهید از بانک اطلاعاتی دیگری استفاده کنید یا از قبل یک پایگاه داده نصب کرده باشید ، در این صورت باید این مرحله را رد کنید.
برای نصب MySQL در سرور مجازی Ubuntu 20.04 ، دستور زیر را تایپ کنید:
? $ sudo apt install mysql-server
?
باید خروجی زیر را دریافت کنید:
Output
? mysql.service – MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2020-05-07 20:22:51 UTC; 3min 7s ago
Main PID: 2052 (mysqld)
Status: “Server is operational”
Tasks: 38 (limit: 1137)
Memory: 317.4M
CGroup: /system.slice/mysql.service
??2052 /usr/sbin/mysqld

اطمینان حاصل کنید که بازخورد دریافتی بیانگر فعال بودن سرور مجازی MySQL شماست. پس از تایید این موضوع ، می توانید این آموزش را ادامه دهید.
مرحله 2 – اسکلت اولیه پروژه Django را ایجاد کنید
به منظور ایجاد زمینه کاری برای برنامه خود ، باید اسکلت پروژه را با استفاده از دستور django-admin تولید کنیم. این پروژه تولید شده پایه و اساس برنامه وبلاگ ما خواهد بود.
به دایرکتوری بروید که می خواهید برنامه وبلاگ خود را بسازید. در این دیرکتوری ، یک دیرکتوری خاص برای ساخت برنامه ایجاد خواهیم کرد. برای برنامه ای که در حال ساخت هستید ، نام دیرکتوری را چیزی معنی دار در نظر بگیرید. به عنوان نمونه ، ما آن را my_blog_app می نامیم.
? $ mkdir my_blog_app
?
اکنون به پوشه تازه ایجاد شده بروید:
? $ cd my_blog_app
?
در مرحله بعد ، وارد محیط برنامه نویسی شوید که می خواهید برای کار در Django استفاده کنید. می توانید از یک دیرکتوری موجود استفاده کنید یا یک دیرکتوری جدید ایجاد کنید. ما دیرکتوری خود را env می نامیم ، اما شما باید از اسمی استفاده کنید که برای شما معنی دارد. پس از ایجاد ، می توانید آن را فعال کنید.
? $ python3 -m venv env
?
? . env/bin/activate
اگر قبلا Django را نصب نکرده اید ، آن را در این محیط نصب کنید:
? (env) Sammy@ubuntu:$ pip install django
?
در حالی که در دیرکتوری my_blog_app هستیم، با اجرای دستور زیر ، پروژه ای را تولید می کنیم:
? (env) Sammy@ubuntu:$ django-admin startproject blog
?
با رفتن به دایرکتوری blog/ تأیید کنید که کار کرده است:
? (env) Sammy@ubuntu:$ cd blog
?

دایرکتوریblog/ باید پس از اجرای دستور قبلی django-admin در دایرکتوری فعلی ، ~ / my_blog_app / ایجاد شود.
برای تأیید اینکه موارد لازم ایجاد شده است ، ls را اجرا کنید. باید یک دیرکتوری وبلاگ و یک فایل management.py وجود داشته باشد:
Output
blog manage.py

اکنون که دایرکتوری پروژه را ایجاد کرده اید که شامل شروع اولیه برنامه وبلاگ شماست ، می توانیم به مرحله بعدی برویم.
مرحله 3 – تنظیمات را ویرایش کنید
از آنجا که ما پروژه اسکلت را تولید کرده ایم ، اکنون یک فایل settings.py داریم.
برای اینکه وبلاگ ما زمان صحیحی با ناحیه ما ارتباط داشته باشد ، فایل settings.py را ویرایش می کنیم تا از منطقه زمانی فعلی شما استفاده کند. می توانید از این لیست مناطق زمانی به عنوان مرجع استفاده کنید. به عنوان مثال ، ما از وقت America/New_York استفاده خواهیم کرد.
می خواهیم فایل را ویرایش کنیم ، بنابراین بیایید مسیر فایل را با ویرایشگر متن مورد نظر خود باز کنیم. در اینجا ، ما از nano استفاده خواهیم کرد.
? (env) Sammy@ubuntu:$ nano ~/my_blog_app/blog/blog/settings.py
?
از آنجا که ما در حال ویرایش قسمت TIME_ZONE هستیم ، مانند زیر به قسمت پایین فایل خواهیم رفت.
settings.py

# Internationalization
# https://docs.djangoproject.com/en/2.0/topics/i18n/

LANGUAGE_CODE = ‘en-us’

TIME_ZONE = ‘UTC’

USE_I18N = True

USE_L10N = True

USE_TZ = True

ما می خواهیم خط TIME_ZONE را طوری تغییر دهیم که در منطقه زمانی فعلی شما تنظیم شود. در این مثال از منطقه زمانی نیویورک استفاده خواهیم کرد:
settings.py

# Internationalization
# https://docs.djangoproject.com/en/2.0/topics/i18n/

LANGUAGE_CODE = ‘en-us’

TIME_ZONE = ‘America/New_York’

USE_I18N = True

بیایید فایل را باز نگه داریم زیرا باید مسیری را برای فایل های استاتیک خود اضافه کنیم. فایلهایی که از برنامه وب Django شما دریافت می شوند به فایل های استاتیک شناخته می شوند. این فایل ها می تواند شامل تمام فایل های لازم برای ارائه کامل صفحه وب از جمله JavaScript ، CSS و تصاویر باشد.
به انتهای فایل تنظیمات بروید و مطابق شکل زیر STATIC_ROOT را اضافه کنید:
settings.py

# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/2.0/howto/static-files/

STATIC_URL = ‘/static/’
STATIC_ROOT = os.path.join(BASE_DIR, ‘static’)

اکنون که منطقه زمانی و مسیر فایل های استاتیک را اضافه کرده ایم ، باید IP بعدی خود را به لیست هاست های مجاز اضافه کنیم. به خط فایل settings.pyبروید. جایی که ALLOWED_HOSTS نوشته شده، در قسمت بالای فایل settings.py خواهد بود.
settings.py

# SECURITY WARNING: don’t run with debug turned on in production!
DEBUG = True

ALLOWED_HOSTS = [‘your server IP address’]

# Application definition

آدرس IP سرور مجازی خود را بین براکت و علامت تک نقل قول اضافه کنید.
پس از رضایت از تغییراتی که ایجاد کرده اید ، فایل را ذخیره کنید. اگر در حال استفاده از nano هستید ، می توانید این کار را با فشار دادن CTRL + X و سپس y برای تأیید تغییرات انجام دهید.
شما فایل settings.pyخود را با موفقیت ویرایش کرده اید تا منطقه زمانی مناسب پیکربندی شده باشد. همچنین مسیر فایل های استاتیک خود را اضافه کرده اید و آدرس IP را برای برنامه خود ALLOWED_HOST قرار داده اید.
در آخر ، اجازه دهید یک کاربر ادمین ایجاد کنیم تا بتوانید از رابط مدیر Djano استفاده کنید. بیایید این کار را با دستور Creatuperuser انجام دهیم:
? (me_env) $ python manage.py createsuperuser
?
از شما یک نام کاربری ، یک آدرس ایمیل و رمز عبور برای کاربر خواسته می شود.
در این مرحله می توانیم به تنظیم اتصال بانک اطلاعاتی خود بپردازیم.
مرحله 4 – اتصال دهنده پایگاه داده MySQL را نصب کنید
برای استفاده از MySQL با پروژه خود ، به یک کتابخانه اتصال دهنده پایگاه داده Python 3 که سازگار با Django است ، نیاز خواهیم داشت. بنابراین ، ما اتصال دیتابیس را نصب خواهیم کرد ، mysqlclient ، که یک نسخه forked از MySQLdb است.
ابتدا اطمینان حاصل کنید که python3-dev را نصب کرده اید. با اجرای دستور زیر می توانید python3-dev را نصب کنید:
? (env) Sammy@ubuntu:$ sudo apt install python3-dev
?
اکنون می توانیم هدرها و کتابخانه های توسعه Python و MySQL را نصب کنیم:
? (env) Sammy@ubuntu:$ sudo apt install python3-dev libmysqlclient-dev default-libmysqlclient-dev
?

برای پذیرش نصب ، y و ENTER را فشار دهید.
پس از اتمام نصب ، از pip3 برای نصب کتابخانه mysqlclient از PyPi استفاده خواهیم کرد. از آنجا که نسخه pip به pip3 اشاره می کند ، می توانیم از pip استفاده کنیم.
? (env) Sammy@ubuntu:$ pip install mysqlclient
?
خروجی مشابه این را دریافت خواهید کرد ، تأیید میکند که به درستی در حال نصب است:
successfully installed mysqlclient

Successfully installed mysqlclient-1.4.6
اکنون با استفاده از کتابخانه اتصال دهنده mysqlclient PyPi با موفقیت MySQL را نصب کردیم.
مرحله 5 – ایجاد بانک اطلاعاتی
اکنون که اسکلت برنامه Django شما راه اندازی شده است و mysqlclient و mysql-server نصب شده اند ، باید برای سازگاری MySQL ، backend Django را پیکربندی کنیم.
به صورت ریشه MySQL با دستور زیر وارد شوید:
? (env) Sammy@ubuntu:$ sudo mysql -u root
?
وقتی اعلان تغییر می کند می دانیم که در سرور مجازی MySQL قرار داریم:
Mysql>
بگذارید پایگاه داده های فعلی را با دستور زیر بررسی کنیم:
? Mysql> SHOW DATABASES;
?
با فرض اینکه هنوز هیچ پایگاه داده ای ایجاد نکرده اید ، خروجی مشابه زیر را مشاهده خواهید کرد:
Output
+——————–+
| Database |
+——————–+
| information_schema |
| mysql |
| performance_schema |
| sys |
+——————–+
4 rows in set (0.00 sec)

توجه: اگر هنگام تلاش برای اتصال با خطایی مواجه شدید ، تأیید کنید که رمزعبورتان درست است و MySQL را به درستی نصب کرده اید. در غیر اینصورت آموزش نحوه نصب و پیکربندی MySQL را دوباره مرور کنید.

به طور پیش فرض ، شما 4 پایگاه داده را تاکنون ایجاد کرده اید ، data_schema ، MySQL ، performance_schema و sys. نیازی به اتصال به این موارد نداریم ، زیرا حاوی اطلاعاتی مهم برای خود سرور مجازی MySQL هستند.
اکنون ، که با موفقیت به سرور مجازی MySQL خود وارد شده اید ، بانک اطلاعاتی اولیه را ایجاد می کنیم که داده ها را برای وبلاگ مان نگه می دارد.
برای ایجاد یک پایگاه داده در MySQL ، دستور زیر را با استفاده از یک اسم معنی دار برای پایگاه داده خود اجرا کنید:
? Mysql> CREATE DATABASE blog_data;
?
پس از ایجاد موفقیت آمیز پایگاه داده ، خروجی زیر را مشاهده خواهید کرد:
Output
Query OK, 1 row affected (0.00 sec)
توجه: اگر خروجی زیر را مشاهده می کنید:
database creation failed
ERROR 1007 (HY000): Can’t create database blog_data; database exists

یعنی ، همانطور که خطا بیان می کند ، یک بانک اطلاعاتی با نام blog_data از قبل وجود دارد.
و اگر خطای MySQL زیر را مشاهده کردید ، به این معنی است که یک خطای نحوی MySQL وجود دارد. بررسی کنید که فرمان را دقیقاً مطابق با این آموزش وارد کرده اید.
database creation failed
ERROR 1064 (42000): You have an error in your SQL syntax;

سپس ، تأیید کنید که اکنون پایگاه داده در لیست پایگاههای داده موجود شما قرار دارد:
? $ SHOW DATABASES;
?
باید ببینید که پایگاه داده blog_data در میان پایگاه داده های موجود در خروجی است:
output
+——————–+
| Database |
+——————–+
| information_schema |
| blog_data |
| mysql |
| performance_schema |
| sys |
+——————–+
5 rows in set (0.00 sec)

در مرحله بعد ، قصد داریم یک حساب کاربری MySQL جداگانه ایجاد کنیم که ما بطور انحصاری برای کار با بانک اطلاعات جدید خود استفاده خواهیم کرد. ایجاد بانکهای اطلاعاتی و حسابهای خاص می تواند ما را از منظر مدیریتی و امنیتی پشتیبانی کند. ما در این راهنما از نام djangouser استفاده خواهیم کرد ، اما شما میتوانید از هر نامی استفاده کنید.
ما قصد داریم این حساب را ایجاد کنیم ، رمزعبور راتنظیم کنیم و به دیتابیس ایجاد شده دسترسی پیدا کنیم. می توانیم با تایپ دستور زیر این کار را انجام دهیم. به یاد داشته باشید یک رمزعبور قوی برای کاربر پایگاه داده خود در جایی که password را داریم انتخاب کنید:
? Mysql> CREATE USER ‘djangouser’@’%’ IDENTIFIED WITH mysql_native_password BY ‘password’;
?
در مرحله بعد ، به دیتابیس اطلاع دهید که djangouser ما باید دسترسی کامل به دیتابیسی که ایجاد میکنیم داشته باشد:
? Mysql> GRANT ALL ON blog_data.* TO ‘djangouser’@’%’;
?
اکنون یک بانک اطلاعاتی و یک حساب کاربری دارید که هرکدام به طور خاص برای Django ساخته شده است. باید امتیازات را flush کنیم تا نمونه فعلی MySQL از تغییرات اخیر ما اطلاع یابد:
? Mysql> FLUSH PRIVILEGES;
?
با اتمام آن ، می توانید با وارد کردن EXIT یا با فشار دادن CTRL + D از سرور مجازی MySQL خارج شوید.
مرحله 6 – اتصال پایگاه داده MySQL را به برنامه خود اضافه کنید
سرانجام ، اعتبارات اتصال بانک اطلاعاتی را به برنامه Django شما اضافه خواهیم کرد.
توجه: لازم است به یاد داشته باشید که تنظیمات اتصال ، مطابق مستندات Django ، به ترتیب زیر استفاده می شوند:
OPTIONS
– NAME, USER, PASSWORD, HOST, PORT
– MySQL option files.
بیایید تغییرات لازم را برای اتصال برنامه وبلاگ Django به MySQL ایجاد کنیم.
به فایل settings.py بروید و خطوط فعلی DATABASES را با موارد زیر جایگزین کنید. ما دیکشنری پایگاه داده شما را پیکربندی خواهیم کرد تا بداند که از MySQL به عنوان backend دیتابیس شما استفاده کند و از چه فایلی برای خواندن اعتبارات اتصال بانک اطلاعاتی شما استفاده کند.
? (env) Sammy@ubuntu:$ nano ~/my_blog_app/blog/blog/settings.py
?
خطوط موجود را در آنجا پاک کرده و آن را با خطوط زیر جایگزین کنید ، حتماً تعداد مناسب پرانتز را حفظ کنید.
settings.py

# Database
# https://docs.djangoproject.com/en/3.0/ref/settings/#databases

DATABASES = {
‘default’: {
‘ENGINE’: ‘django.db.backends.mysql’,
‘OPTIONS’: {
‘read_default_file’: ‘/etc/mysql/my.cnf’,
},
}
}

فایل را ذخیره کنید و ببندید.
سپس ، اجازه دهید فایل پیکربندی را ویرایش کنیم تا اعتبارات MySQL شما را داشته باشد. برای ویرایش فایل و افزودن اطلاعات زیر از nano به عنوان sudo استفاده کنید:
? (env) Sammy@ubuntu:$ sudo nano /etc/mysql/my.cnf
?
خطوط زیر را اضافه کنید و اطلاعات مربوط به خود را درج کنید.
my.cnf

[client]
database = blog_data
user = djangouser
password = your_actual_password
default-character-set = utf8

توجه خواهید کرد که utf8 به عنوان رمزگذاری پیش فرض تنظیم شده است ، که یک روش معمول برای رمزگذاری داده های تک کد در MySQL است. وقتی مطمئن شدید که جزئیات شما صحیح است ، فایل را ذخیره کنید و ببندید.
پس از ویرایش فایل ، لازم است که MySQL را مجدداً راه اندازی کنیم تا تغییرات به مرحله اجرا درآیند.
? (env) Sammy@ubuntu:$ sudo systemctl daemon-reload
?
? (env) Sammy@ubuntu:$ sudo systemctl restart mysql

لطفاً توجه داشته باشید که راه اندازی مجدد MySQL چند ثانیه طول می کشد ، بنابراین لطفاً صبور باشید.
مرحله 7 – اتصال MySQL به برنامه را آزمایش کنید
لازم است تأیید کنیم که تنظیمات موجود در Django سرور مجازی MySQL را به درستی تشخیص می دهد. ما می توانیم این کار را با اجرای سرور مجازی انجام دهیم. در صورت عدم موفقیت ، این بدان معنی است که اتصال به درستی کار نمی کند. در غیر این صورت ، اتصال معتبر است.
بیایید ابتدا تغییرات خود را در django با دستور زیر اعمال کنیم:
? (env) Sammy@ubuntu:$ python manage.py migrate
?
باید به دیرکتوری زیر برویم:
? (env) Sammy@ubuntu:$ cd ~/my_blog_app/blog/
?
از آنجا ، می توانیم دستور زیر را اجرا کنیم:
? (env) Sammy@ubuntu:$ python manage.py runserver your-server-ip:8000
?
اکنون خروجی مشابه زیر را مشاهده خواهید کرد:
Output
Performing system checks…

System check identified no issues (0 silenced).

You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run ‘python manage.py migrate’ to apply them.

January 4, 2018 – 15:45:39
Django version 2.0.1, using settings ‘blog.settings’
Starting development server at http://your-server-ip:8000/
Quit the server with CONTROL-C.

توجه: در خروجی خواهید دید که جابه جایی های بی رویه داشته اید. اما نگران نباشید ، در آموزش های بعدی به این موضوع پرداخته می شود. این مسئله بر تنظیم اولیه برنامه ما تأثیر نمی گذارد. لطفا پیش بروید.

دستورالعمل های خروجی را دنبال کنید و پیوند پیشنهادی ، http: // your-server-ip: 8000 / را دنبال کنید تا برنامه وب خود را مشاهده کنید و تأیید کنید که به درستی کار می کند.

اگر صفحه شما شبیه به تصویر بالا ظاهر می شود ، برنامه Django شما مطابق آنچه انتظار می رود کار می کند!
هنگامی که آزمایش برنامه تان به پایان رسید ، می توانید CTRL + C را فشار دهید تا دستور Runnerver متوقف شود. با این کار شما به محیط برنامه نویسی خود باز خواهید گشت.
هنگامی که آماده ترک محیط Python خود هستید ، می توانید دستور غیرفعال کردن را اجرا کنید:
? (env) Sammy@ubuntu:$ deactivate
?
غیرفعال کردن محیط برنامه نویسی شما را به سمت فرمان نهایی ترمینال باز می گرداند.
نتیجه
در این آموزش پایه و اساس اولیه وبلاگ Django خود را ایجاد کرده اید. MySQL را نصب و پیکربندی کرده و به backend Django وصل کرده اید. همچنین برخی از اطلاعات مهم مانند TIME_ZONE و ALLOWED_HOSTS را به فایل تنظیمات برنامه خود اضافه کرده اید.
اکنون که این تنظیمات و پیکربندی های اولیه کامل شده است ، می توانید شروع به توسعه مدل ها و اعمال برنامه های جابه جایی در برنامه Django خود کنید.

 

از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :

نصب و پیکربندی Ansible در اوبونتو 18.04 – نصب MySQL در اوبونتو 18.04

نظارت بر سلامت سرور با Checkmk در اوبونتو – اجرای چند نسخه PHP بر روی یک سرور

نصب Nginx، MySQL، PHP در CentOS 7 –  نصب و پیکربندی Elasticsearch در اوبونتو 18.04

راه اندازی سرور اولیه با اوبونتو 20.04 – تنظیم کلیدهای SSH در Ubuntu 20.04

نصب و استفاده از PostgreSQL در اوبونتو 20.0 – نحوه نصب MySQL در اوبونتو 20.04

نصب Python 3 روی سرور Ubuntu 18.04 –  نحوه نصب Python 3 روی سرور Ubuntu 20.04

نصب Linux،Apache،MySQL،PHP LAMP در اوبونتو 20.04 –  نصب وب سرور Apache در CentOS 8

نحوه نصب Drupal با Docker Compose –  نحوه نصب Nginx در اوبونتو 20.04

7 مورد از اقدامات امنیتی برای محافظت از سرورهای شما –  نحوه نصب و ایمن سازی Redis در اوبونتو 20.04

نحوه نصب و ایمن سازی Redis در اوبونتو 18.04 – اضافه کردن فضای Swap در اوبونتو 20.04

چگونه می توان فایروال را با UFW در اوبونتو 20.04 تنظیم کرد – نظارت بر اطلاعیه و مسیر BGP با BGPalerter اوبونتو 18.04

نصب و ایمن سازی phpMyAdmin در اوبونتو 20.04  –  نصب و استفاده از Composer در اوبونتو 20.04

ریست کردن رمز ورود ریشه MySQL یا MariaDB –  استفاده از نوع داده MySQL BLOB برای ذخیره تصاویر

نصب Nginx در اوبونتو 18.04 – نصب توزیع Anaconda پایتون در اوبونتو 20.04

نحوه نصب جاوا با Apt در اوبونتو 18.04 –  نحوه نصب Django و تنظیم محیط توسعه در اوبونتو 16.04

نصب جنگو و تنظیم محیط توسعه در اوبونتو 20.04 – نحوه ایجاد سرور Minecraft در اوبونتو 18.04

نحوه راه اندازی یک پروژه Node با Typescript –  نحوه نصب و پیکربندی VNC در اوبونتو 18.04

ایجاد یک برنامه Django و اتصال آن به یک بانک اطلاعاتی – نصب و پیکربندی VNC در اوبونتو 20.04

نصب MariaDB در اوبونتو 20.04  –  فعال سازی و اتصال رابط کاربری Django

تنظیم پلتفرم Cloud IDE کد سرور را در اوبونتو 18.04 – پیکربندی Apache HTTP با رویداد MPM و PHP-FPM

 

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان – 

 

 

 


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

Virtual Network Computing یا VNC یک سیستم اتصال است که به شما امکان می دهد از صفحه کلید و ماوس خود برای تعامل با یک محیط دسکتاپ گرافیکی روی یک سرور مجازی از راه دور استفاده کنید. این امر باعث می شود مدیریت فایل ها ، نرم افزارها و تنظیمات روی یک سرور مجازی از راه دور برای کاربرانی که همچنان با خط فرمان احساس راحتی نمیکنند ، آسانتر شود.
در این راهنما ، با TightVNC یک سرور مجازی VNC را روی سرور مجازی اوبونتو 20.04 تنظیم کرده و از طریق یک تونل SSH با ایمنی به آن وصل می شوید. سپس از یک برنامه کلاینت VNC بر روی دستگاه محلی خود استفاده میکنید تا از طریق محیط دسکتاپ گرافیکی با سرور مجازی خود ارتباط برقرار کنید.
پیش نیازها
برای تکمیل این آموزش ، به موارد زیر نیاز دارید:
• یک سرور مجازی Ubuntu 20.04 شامل یک کاربر ادمین غیر ریشه و فایروال تنظیم شده با UFW .
• یک کامپیوتر محلی با یک کلاینت VNC نصب شده . کلاینتVNC که استفاده میکنید باید از طریق تونل های SSH اتصالات را پشتیبانی کند.
o در ویندوز ، می توانید از TightVNC ، RealVNC یا UltraVNC استفاده کنید.
o در macOS ، می توانید از برنامه داخلی اشتراک گذاری صفحه استفاده کنید ، یا می توانید از یک برنامه cross-platform مانند RealVNC استفاده کنید.
o در لینوکس ، می توانید گزینه های بسیاری از جمله vinagre ، krdc ، RealVNC یا TightVNC را انتخاب کنید.
مرحله 1 – نصب محیط دسکتاپ و سرور مجازی VNC
به طور پیش فرض ، یک سرور مجازی Ubuntu 20.04 با محیط دسکتاپ گرافیکی یا سرور مجازی VNC همراه نیست ، بنابراین ما با نصب آن ها کار را شروع خواهیم کرد.
برای انتخاب سرور مجازی VNC و محیط دسک تاپ گزینه های بسیاری برای شما وجود دارد. در این آموزش بسته هایی را برای جدیدترین محیط دسک تاپ Xfce و بسته TightVNC موجود از مخزن رسمی اوبونتو نصب خواهید کرد. Xfce و TightVNC هر دو به دلیل وزن کم و سرعت شناخته شده اند که اطمینان حاصل می کند اتصال VNC حتی در اتصالات کندتر اینترنت هموار و پایدار خواهد بود.
بعد از اتصال به سرور مجازی با SSH ، لیست بسته های خود را به روز کنید:
? $ sudo apt update
?
اکنون Xfce را به همراه بسته xfce4-goodies نصب کنید ، که حاوی چند تغییر برای محیط دسک تاپ است:
? $ sudo apt install xfce4 xfce4-goodies
?
در حین نصب ، ممکن است از شما خواسته شود یک مدیر نمایشگر پیش فرض برای Xfce انتخاب کنید. مدیر نمایشگر برنامه ای است که به شما امکان می دهد از طریق یک رابط گرافیکی وارد یک محیط دسک تاپ شوید. فقط هنگام اتصال با کلاینت VNC از Xfce استفاده خواهید کرد و در این بخش های Xfce از قبل به عنوان کاربر غیر ریشه اوبونتو وارد سیستم می شوید. بنابراین برای اهداف این آموزش ، انتخاب شما برای مدیر صفحه نمایش اهمیتی ندارد. یکی را انتخاب کنید و ENTER را فشار دهید.
پس از اتمام نصب ، سرور مجازی TightVNC را نصب کنید:
? $ sudo apt install tightvncserver
?
در مرحله بعدی ، دستور vncserver را برای تنظیم رمز ورود دسترسی VNC ، ایجاد فایل های پیکربندی اولیه و شروع یک مثال سرور مجازی VNC اجرا کنید:
$ vncserver
?
از شما خواسته می شود یک رمز ورود را برای دسترسی از راه دور به دستگاه خود وارد کرده و تأیید کنید:
Output
You will require a password to access your desktops.

Password:
Verify:

رمز عبور باید بین شش تا هشت کاراکتر باشد. گذرواژه‌های بیش از 8 کاراکتر به صورت خودکار کوتاه خواهند شد.
پس از تأیید گذرواژه ، می توانید یک گذرواژه view-only ایجاد کنید. کاربرانی که با رمز ورود view-only به سیستم وارد می شوند ، قادر به کنترل نمونه VNC با ماوس یا صفحه کلید خود نخواهند بود. اگر می خواهید چیزی را با استفاده از سرور VNC خود به دیگران نشان دهید ، این گزینه مفید میباشد ، اما ضروری نیست.
سپس این فرآیند فایلهای تنظیمات پیش فرض لازم و اطلاعات اتصال را برای سرور ایجاد می کند. علاوه بر این ، یک نمونه سرور پیش فرض را در پورت 5901 راه اندازی می کند. این پورت ، پورت نمایشگر گفته می شود و توسط VNC به :1 شناخته میشود. VNC می تواند چندین نمونه را در سایر پورت های نمایش راه اندازی کند: :2 به پورت 5902 و :3 به 5903 اشاره میکند و به همین ترتیب:
Output
Would you like to enter a view-only password (y/n)? n
xauth: file /home/sammy/.Xauthority does not exist

New ‘X’ desktop is your_hostname:1

Creating default startup script /home/sammy/.vnc/xstartup
Starting applications specified in /home/sammy/.vnc/xstartup
Log file is /home/sammy/.vnc/your_hostname:1.log

توجه داشته باشید که اگر هر زمان خواستید رمزعبور خود را تغییر دهید یا یک رمز ورود view-only اضافه کنید ، می توانید با دستور vncpasswd این کار را انجام دهید:
? $ vncpasswd
?
در این مرحله ، سرور مجازی VNC نصب و راه اندازی می شود. اکنون بیایید آن را پیکربندی کنیم تا Xfce را راه اندازی کرده و از طریق یک رابط گرافیکی به سرور مجازی دسترسی داشته باشیم.
مرحله 2 – پیکربندی سرور مجازی VNC
سرور مجازی VNC باید بداند که در هنگام راه اندازی چه دستوراتی را اجرا کند. به طور خاص ، VNC باید بداند که به کدام دسکتاپ گرافیکی وصل شود.
این دستورات در یک فایل پیکربندی به نام xstartup در پوشه .vnc تحت دیرکتوری هوم شما قرار دارند. اسکریپت راه اندازی هنگامی ایجاد شد که در مرحله قبل vncserver را اجرا کردید ، اما برای راه اندازی دسکتاپ Xfce ، اسکریپت خودمان را ایجاد خواهیم کرد.
از آنجا که می خواهیم نحوه پیکربندی سرور مجازی VNC را تغییر دهیم ، ابتدا نمونه سرور مجازی VNC را که با استفاده از پورت 5901 در حال اجرا است با دستور زیر متوقف کنید:
? $ vncserver -kill :1
?
خروجی باید به این شکل باشد ، اگرچه یک PID متفاوت را مشاهده خواهید کرد:
Output
Killing Xtightvnc process ID 17648
قبل از تغییر فایل xstartup ، از نسخه اصلی نسخه پشتیبان تهیه کنید:
? $ mv ~/.vnc/xstartup ~/.vnc/xstartup.bak
?
اکنون یک فایل xstartup جدید ایجاد کرده و آن را در ویرایشگر متن خود باز کنید:
? $ nano ~/.vnc/xstartup
?
خطوط زیر را به فایل اضافه کنید:
~/.vnc/xstartup
#!/bin/bash
xrdb $HOME/.Xresources
startxfce4 &

خط اول یک  shebangاست. در فایل های قابل اجرای متن ساده در پلتفرم های * nix ، یک shebang به سیستم می گوید که چه مفسری را برای انتقال آن فایل برای اجرا وارد می کند. در این حالت ، شما فایل را به مفسر Bash ارائه می دهید. این امر به شما امکان می دهد که هر خط پی در پی را به صورت دستوراتی اجرا کنید.
اولین دستورالعمل موجود در فایل ، xrdb $ HOME / .Xresource ، به چارچوب رابط کاربری گرافیکی VNC میگوید فایل .Xresources کاربر سرور مجازی را بخواند. Xresource جایی است که یک کاربر می تواند تنظیمات خاصی از دسکتاپ گرافیکی ، مانند رنگ های ترمینال ، تم های مکان نما و رندر فونت ، تغییراتی ایجاد کند. دستور دوم به سرور مجازی می گوید که Xfce را راه اندازی کند ، در این قسمت تمام نرم افزارهای گرافیکی مورد نیاز خود را برای مدیریت راحت سرور مجازی خود پیدا خواهید کرد.
پس از افزودن این خطوط ، فایل را ذخیره کنید و ببندید. اگر از nano استفاده کرده اید ، این کار را با فشار دادن CTRL + X ، Y ، سپس enter انجام دهید.
برای اطمینان از اینکه سرور مجازی VNC قادر به استفاده صحیح از این فایل راه اندازی جدید خواهد بود ، باید آن را عملیاتی کنیم.
? $ chmod +x ~/.vnc/xstartup
?

اکنون ، سرور مجازی VNC را رستارت کنید.
? $ vncserver -localhost
?
توجه کنید که این بار این دستور شامل گزینه -localhost است که سرور مجازی VNC را به رابط حلقه برگشت سرور مجازی شما متصل می کند. این امر باعث می شود VNC فقط اتصالات منبعی را که روی آن نصب شده است مجاز بداند.
در مرحله بعد ، شما یک تونل SSH بین دستگاه محلی و سرور مجازی خود ایجاد می کنید ، در واقع VNC را فریب میدهید که اتصال حاصل از دستگاه محلی شما را از سمت سرور مجازی تان بداند. این استراتژی یک لایه امنیتی بیشتر در اطراف VNC اضافه خواهد کرد ، زیرا تنها کاربرانی که قادر به دستیابی به آن هستند ، کسانی هستند که از قبل دسترسی به SSH به سرور مجازی شما دارند.
خروجی مشابه این را مشاهده خواهید کرد:
Output
New ‘X’ desktop is your_hostname:1

Starting applications specified in /home/sammy/.vnc/xstartup
Log file is /home/sammy/.vnc/your_hostname:1.log

با پیکربندی موجود ، آماده هستید از دستگاه محلی خود به سرور مجازی VNC وصل شوید.
مرحله 3 – اتصال ایمن به دسکتاپ VNC
VNC در هنگام اتصال از پروتکل های ایمن استفاده نمی کند. ما برای اتصال ایمن به سرور مجازی خود از یک تونل SSH استفاده خواهیم کرد و سپس به کلاینت VNC می گوییم به جای برقراری ارتباط مستقیم از آن تونل استفاده کند.
یک اتصال SSH را روی رایانه محلی خود ایجاد کنید که به طور ایمن به اتصال محلی برای VNC منتقل شود. شما می توانید این کار را از طریق ترمینال در لینوکس یا macOS با دستور SSH زیر انجام دهید:
? $ ssh -L 59000:localhost:5901 -C -N -l sammy your_server_ip
?

در اینجا منظور از گزینه های این دستور ssh چیست:
? -L 59000: localhost: 5901: سوئیچ -L مشخص می کند که پورت داده شده در رایانه محلی (59000) باید به هاست داده شده و پورت روی سرور مجازی مقصد (localhost: 5901) یعنی پورت 5901 در مقصد که به your_server_ip شناخته میشود، ارسال گردد. توجه داشته باشید که پورت محلی که مشخص کرده اید تا حدودی دلخواه است؛ تا زمانی که پورت به سرویس دیگری متصل نشده باشد ، می توانید از آن به عنوان پورت انتقال برای تونل خود استفاده کنید.
? -C: این پرچم فشرده سازی را فعال می کند که می تواند در به حداقل رساندن مصرف منابع و سرعت بخشیدن مفید باشد.
? -N: این گزینه به ssh می گوید که شما نمی خواهید دستورات راه دور را اجرا کنید. این تنظیم هنگامی مفید است که شما فقط می خواهید پورت ها را ارسال کنید.
? -l sammy your_server_ip: سوئیچ -l به شما امکان می دهد تا به محض اتصال به سرور مجازی ، کاربر مورد نظر خود را وارد کنید. حتماً sammy و your_server_ip را با نام کاربر غیر ریشه و آدرس IP سرور مجازی خود جایگزین کنید.
توجه: این دستور یک تونل SSH ایجاد می کند که از طریق پورت 22 در هر دستگاه ، یعنی پورت پیش فرض برای SSH ، اطلاعات را از پورت 5901 در سرور مجازی VNC شما به پورت 59000 در دستگاه محلی شما منتقل می کند. با فرض اینکه از راهنمای پیش نیاز ستاپ اولیه سرور مجازی اولیه برای اوبونتو 20.04 پیروی کرده باشید ، یک قانون UFW اضافه کرده اید تا امکان اتصال به سرور مجازی خود را از طریق OpenSSH فراهم کند.
این کار نسبت به باز کردن فایروال سرور مجازی شما برای اتصال به پورت 5901 ایمن تر است ، زیرا این امر به هر کسی امکان دسترسی به سرور مجازی شما از طریق VNC را می دهد. با اتصال به یک تونل SSH ، دسترسی VNC به ماشین هایی که از قبل دسترسی به SSH به سرور مجازی دارند را محدود می کنید.
اگر از PuTTY برای اتصال به سرور مجازی خود استفاده می کنید ، می توانید با کلیک راست روی نوار بالای پنجره ترمینال ، یک تونل SSH ایجاد کنید و سپس بر روی گزینه Change Settings… کلیک کنید:

شاخه CONNECTION را در منوی درختی در سمت چپ پنجره PuTTY Reconfiguration پیدا کنید. شاخه SSH را باز کرده و بر روی Tunnels کلیک کنید. در صفحه Options controlling SSH port forwarding ،59000 را به عنوان Port Source و localhost: 5901 به عنوان مقصد وارد کنید ، مانند این:

سپس برای اجرای تونل بر روی دکمه Add و سپس دکمه Apply کلیک کنید.
پس از راه اندازی تونل ، از یک کلاینت VNC برای اتصال به localhost:59000استفاده کنید. از شما خواسته می شود با استفاده از رمزعبور تنظیم شده در مرحله 1 ، تأیید اعتبار کنید.
پس از اتصال ، میزکار پیش فرض Xfce را مشاهده خواهید کرد. باید چیزی شبیه به این باشد:

همانطور که در اینجا مشاهده می شود ، می توانید در دیرکتوری هوم خود با مدیر فایل یا از خط فرمان به فایلها دسترسی پیدا کنید:

CTRL + C را در ترمینال محلی خود زده تا تونل SSH را متوقف کرده و به حالت عادی خود بازگردید. این کار بخش VNC شما را نیز قطع می کند.
اکنون می توانید سرور مجازی VNC خود را پیکربندی کنید تا به عنوان یک سرویس سیستمی اجرا شود.
مرحله 4 – اجرای VNC به عنوان یک سرویس سیستم
در مرحله بعدی ، سرور مجازی VNC را به عنوان یک سرویس سیستمی تنظیم خواهیم کرد تا بتوانیم مانند هر سرویس دیگر ، آن را بنا به نیاز ، راه اندازی ، متوقف و مجدداً راه اندازی کنیم. این کار همچنین راه اندازی VNC در حین ریبوت سرور مجازی را تضمین می کند.
ابتدا با استفاده از ویرایشگر متن مورد علاقه خود ، یک فایل واحد جدید با نام /etc/systemd/system/vncserver@.service ایجاد کنید:
? $ sudo nano /etc/systemd/system/vncserver@.service
?
نماد @ در انتهای نام به ما اجازه می دهد تا آرگومانی را که می توانیم در پیکربندی سرویس استفاده کنیم ، وارد کنیم. از آن برای مشخص کردن پورت نمایشگر VNC استفاده خواهیم کرد که می خواهیم هنگام مدیریت سرویس استفاده کنیم .
خطوط زیر را به فایل اضافه کنید. حتماً مقدار کاربر ، گروه ، WorkingDirectory و نام کاربری را در مقدار PIDFILE تغییر دهید تا با نام کاربری شما مطابقت داشته باشد:
/etc/systemd/system/vncserver@.service
[Unit]
Description=Start TightVNC server at startup
After=syslog.target network.target

[Service]
Type=forking
User=sammy
Group=sammy
WorkingDirectory=/home/sammy

PIDFile=/home/sammy/.vnc/%H:%i.pid
ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280×800 -localhost :%i
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target

فرمان ExecStartPre اگر قبلاً در حال اجرا باشد VNC را متوقف می کند. دستور ExecStart ، VNC را شروع می کند و عمق رنگ را به رنگ 24 بیتی با رزولوشن 1280×800 تنظیم می کند. می توانید بنا به نیازهای خود این گزینه های راه اندازی را تغییر دهید. همچنین توجه داشته باشید که فرمان ExecStart  دوباره شامل گزینه -localhost میباشد.
فایل را ذخیره کنید و ببندید.
سپس ، سیستم را از وجود فایل واحد جدید آگاه کنید.
? $ sudo systemctl daemon-reload
?
فایل واحد را فعال کنید.
? $ sudo systemctl enable vncserver@1.service
?
1 بعد از علامت @ نشان می دهد که کدام شماره نمایش سرویس باید روی آن ظاهر شود ، در این حالت پیش فرض : 1 است، همانطور که در مرحله 2 بحث شد.
اگر هنوز نمونه فعلی سرور مجازی VNC در حال اجرا است آن را متوقف کنید.
? $ vncserver -kill :1
?
سپس آن را شروع کنید همانطور که هر سرویس سیستمی دیگری را شروع می کنید.
? $ sudo systemctl start vncserver@1
?
با این دستور می توانید تأیید کنید که شروع شده است:
? $ sudo systemctl status vncserver@1
?
اگر به درستی شروع شود ، خروجی باید به این شکل باشد:
Output
? vncserver@1.service – Start TightVNC server at startup
Loaded: loaded (/etc/systemd/system/vncserver@.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2020-05-07 17:23:50 UTC; 6s ago
Process: 39768 ExecStartPre=/usr/bin/vncserver -kill :1 > /dev/null 2>&1 (code=exited, status=2)
Process: 39772 ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280×800 :1 (code=exited, status=0/SUCCESS)
Main PID: 39795 (Xtightvnc)

سرور مجازی VNC شما اکنون آماده است تا هر زمان که سرور مجازی تان بوت میشود ، استفاده گردد و می توانید آن را با دستورات systemctl مانند سایر سرویس های سیستمی مدیریت کنید.
با این حال ، هیچ تفاوتی در طرف کلاینت وجود نخواهد داشت. برای اتصال مجدد ، دوباره تونل SSH خود را شروع کنید:
? $ ssh -L 59000:localhost:5901 -C -N -l sammy your_server_ip
?
سپس با استفاده از نرم افزار کلاینت VNC خود اتصالی به localhost: 59000 برقرار کنید تا به سرور مجازی خود متصل شوید.
نتیجه
اکنون یک سرور مجازی VNC امن در سرور مجازی Ubuntu 20.04 خود فعال و راه اندازی کرده اید. در حال حاضر می توانید فایلها ، نرم افزارها و تنظیمات خود را با یک رابط گرافیکی آسان و کاربردی مدیریت کنید و قادر خواهید بود نرم افزارهای گرافیکی مانند مرورگرهای وب را از راه دور اجرا کنید.

از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :

نصب و پیکربندی Ansible در اوبونتو 18.04 – نصب MySQL در اوبونتو 18.04

نظارت بر سلامت سرور با Checkmk در اوبونتو – اجرای چند نسخه PHP بر روی یک سرور

نصب Nginx، MySQL، PHP در CentOS 7 –  نصب و پیکربندی Elasticsearch در اوبونتو 18.04

راه اندازی سرور اولیه با اوبونتو 20.04 – تنظیم کلیدهای SSH در Ubuntu 20.04

نصب و استفاده از PostgreSQL در اوبونتو 20.0 – نحوه نصب MySQL در اوبونتو 20.04

نصب Python 3 روی سرور Ubuntu 18.04 –  نحوه نصب Python 3 روی سرور Ubuntu 20.04

نصب Linux،Apache،MySQL،PHP LAMP در اوبونتو 20.04 –  نصب وب سرور Apache در CentOS 8

نحوه نصب Drupal با Docker Compose –  نحوه نصب Nginx در اوبونتو 20.04

7 مورد از اقدامات امنیتی برای محافظت از سرورهای شما –  نحوه نصب و ایمن سازی Redis در اوبونتو 20.04

نحوه نصب و ایمن سازی Redis در اوبونتو 18.04 – اضافه کردن فضای Swap در اوبونتو 20.04

چگونه می توان فایروال را با UFW در اوبونتو 20.04 تنظیم کرد – نظارت بر اطلاعیه و مسیر BGP با BGPalerter اوبونتو 18.04

نصب و ایمن سازی phpMyAdmin در اوبونتو 20.04  –  نصب و استفاده از Composer در اوبونتو 20.04

ریست کردن رمز ورود ریشه MySQL یا MariaDB –  استفاده از نوع داده MySQL BLOB برای ذخیره تصاویر

نصب Nginx در اوبونتو 18.04 – نصب توزیع Anaconda پایتون در اوبونتو 20.04

نحوه نصب جاوا با Apt در اوبونتو 18.04 –  نحوه نصب Django و تنظیم محیط توسعه در اوبونتو 16.04

نصب جنگو و تنظیم محیط توسعه در اوبونتو 20.04 – نحوه ایجاد سرور Minecraft در اوبونتو 18.04

نحوه راه اندازی یک پروژه Node با Typescript –  نحوه نصب و پیکربندی VNC در اوبونتو 18.04

ایجاد یک برنامه Django و اتصال آن به یک بانک اطلاعاتی – نصب و پیکربندی VNC در اوبونتو 20.04

نصب MariaDB در اوبونتو 20.04  –  فعال سازی و اتصال رابط کاربری Django

تنظیم پلتفرم Cloud IDE کد سرور را در اوبونتو 18.04 – پیکربندی Apache HTTP با رویداد MPM و PHP-FPM

 

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان – 

 

 

 

 

برچسب‌ها:

 


نصب MariaDB در اوبونتو 20.04

MariaDB یک سیستم مدیریت پایگاه داده منبع باز است که معمولاً به عنوان جایگزینی برای MySQL به عنوان بخش دیتابیس LAMP محبوب (Linux ، Apache ، MySQL ، PHP / Python / Perl) استفاده می شود. درواقع به عنوان جایگزینی برای MySQL در نظر گرفته شده است.
نسخه کوتاه این راهنمای نصب شامل این سه مرحله است:
• ایندکس بسته خود را با استفاده از APT به روز کنید
• پکیج mariadb-server را با استفاده از APT نصب کنید. این بسته همچنین ابزارهای مرتبط را برای تعامل با MariaDB در نظر می گیرد
• اسکریپت امنیتی شامل mysql_secure_installation را اجرا کنید تا دسترسی به سرور مجازی محدود شود
$ sudo apt update

$ sudo apt install mariadb-server

$ sudo mysql_secure_installation

در این آموزش نحوه نصب MariaDB در سرور مجازی Ubuntu 20.04 توضیح داده خواهد شد و تأیید می شود که در حال اجرا است و از پیکربندی اولیه ایمن برخوردار است.
پیش نیازها
برای دنبال کردن این آموزش ، به یک سرور مجازی Ubuntu 20.04 نیاز دارید. این سرور مجازی باید شامل یک کاربر ادمین غیر ریشه و فایروال پیکربندی شده با UFW باشد. میتوانید طبق راهنمای ستاپ اولیه سرور مجازی این تنظیمات را انجام دهید.
مرحله 1 – نصب MariaDB
در زمان نوشتن این مقاله، مخازن APT پیش فرض Ubuntu 20.04 شامل نسخه 10.3 MariaDB است.
برای نصب آن ، ایندکس بسته را بر روی سرور مجازی خود با apt به روز کنید:
$ sudo apt update

سپس بسته را نصب کنید:
$ sudo apt install mariadb-server

این دستورات MariaDB را نصب می کنند ، اما از شما خواسته نمی شود که رمز عبوری را تنظیم کنید یا تغییرات دیگری در پیکربندی ایجاد کنید. از آنجا که پیکربندی پیش فرض، نصب MariaDB را ناایمن می کند ، ما از اسکریپتی استفاده خواهیم کرد که بسته mariadb-server برای محدود کردن دسترسی به سرور مجازی و حذف حساب های بلااستفاده فراهم می کند.
مرحله 2 – پیکربندی MariaDB
برای نصب های جدید MariaDB ، مرحله بعدی اجرای اسکریپت امنیتی گنجانده شده است. این اسکریپت برخی از گزینه های پیش فرض بدون ایمنی را تغییر می دهد. ما از آن برای مسدود کردن ورود به سیستم ریشه از راه دور و حذف کاربران استفاده نشده پایگاه داده استفاده خواهیم کرد.
اسکریپت امنیتی را اجرا کنید:
$ sudo mysql_secure_installation

این دستور مجموعه ای از اعلان ها را به شما نشان میدهد که می توانید در گزینه های امنیتی نصب MariaDB خود تغییراتی ایجاد کنید. اولین دستور از شما می خواهد رمز ورود ریشه داده فعلی را وارد کنید. از آنجا که ما هنوز تنظیم نکردیم ، ENTER را فشار دهید تا “none” را نشان دهد.
Output
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we’ll need the current
password for the root user. If you’ve just installed MariaDB, and
you haven’t set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):

اعلان بعدی از شما سؤال می کند که آیا می خواهید رمزعبور ریشه دیتابیس را تنظیم کنید یا خیر. در اوبونتو ، حساب اصلی برای MariaDB با نگهداری سیستم خودکار گره خورده است ، بنابراین ما نباید روشهای تأیید صحت تنظیم شده را برای آن حساب تغییر دهیم. با این کار امکان به روزرسانی بسته با حذف دسترسی به حساب ادمین باعث می شود سیستم به روزرسانی بسته شود. . N را تایپ کرده و ENTER را فشار دهید.
Output
. . .
OK, successfully used password, moving on…

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] N

اگر تایید هویت سوکت برای مورد شما مناسب نیست، در ادامه نحوه تنظیم حساب کاربری ادمین اضافه برای دسترسی به پسورد را پوشش خواهیم داد.
از آنجا ، می توانید Y و سپس ENTER را فشار دهید تا جواب پیش فرض همه سؤالات بعدی را بپذیرید. این کار برخی از کاربران ناشناس و بانک اطلاعاتی آزمایشی حذف می کند ، ورود به سیستم ریشه از راه دور را غیرفعال می کند و این قوانین جدید را بارگذاری می کند تا MariaDB سریعاً تغییراتی را که ایجاد کرده اید به مرحله اجرا برساند.
با این کار، پیکربندی ایمن اولی را به پایان میرسانید. مرحله بعدی یک مرحله اختیاری است، با این حال اگر ترجیح میدهید با پسورد تایید هویت را به سرور مجازی MariaDB انجام دهید، آن را دنبال کنید.
مرحله 3 – تنظیم تأیید اعتبار کاربر و امتیازات (اختیاری)
در سیستم های اوبونتو که MariaDB 10.1 در حال اجرا است ، کاربر اصلی MariaDB با استفاده از افزونه unix_socket به طور پیش فرض و نه با رمز عبور ، تأیید اعتبار را انجام می دهد. این امر امکان امنیت و قابلیت استفاده بیشتری را در بسیاری از موارد فراهم می کند ، اما در صورت نیاز به دادن امتیازات اجرایی به یک برنامه خارجی (به عنوان مثال ، phpMyAdmin) می تواند کار را پیچیده تر کند.
از آنجا که سرور مجازی از حساب root برای کارهایی مانند گردش ورود به سیستم و شروع و متوقف کردن سرور مجازی استفاده می کند ، بهتر است جزئیات تأیید اعتبار حساب root را تغییر ندهید. تغییر اعتبار در فایل پیکربندی /etc/mysql/debian.cnf ممکن است در ابتدا کار کند ، اما به روزرسانی های بسته به طور بالقوه می توانند آن تغییرات را بازنویسی کنند. به جای تغییر حساب اصلی ، نگهدارندگان بسته توصیه می کنند یک حساب ادمین جداگانه برای دسترسی مبتنی بر رمز عبور ایجاد کنید.
برای این کار ، یک حساب کاربری جدید با نام admin با همان قابلیت های root ایجاد می کنیم ، که برای احراز هویت رمز عبور پیکربندی شده است. برای انجام این کار ، اعلان MariaDB را از پایانه خود باز کنید:
$ sudo mariadb

اکنون کاربر جدیدی با امتیازات اصلی و دسترسی مبتنی بر رمز عبور ایجاد خواهیم کرد. نام کاربری و رمز عبور را برای مطابقت با موارد برگزیده خود تغییر دهید:
mariaDB [(none)]> GRANT ALL ON *.* TO ‘admin’@’localhost’ IDENTIFIED BY ‘password’ WITH GRANT OPTION;

برای اطمینان از ذخیره و در دسترس بودن آنها در بخش کنونی ، امتیازات را فلاش کنید:
mariaDB [(none)]> FLUSH PRIVILEGES;

پس از این ، از پوسته MariaDB خارج شوید:
mariaDB [(none)]> exit

در آخر ، بیایید نصب MariaDB را آزمایش کنیم.
مرحله 4 – تست MariaDB
هنگام نصب از مخازن پیش فرض ، MariaDB باید به صورت خودکار شروع به کار کند. برای آزمایش این موضوع ، وضعیت آن را بررسی کنید.
$ sudo systemctl status mariadb

خروجی مشابه زیر را دریافت خواهید کرد:
Output
? mariadb.service – MariaDB 10.3.22 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2020-05-12 13:38:18 UTC; 3min 55s ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
Main PID: 25914 (mysqld)
Status: “Taking your SQL requests now…”
Tasks: 31 (limit: 2345)
Memory: 65.6M
CGroup: /system.slice/mariadb.service
??25914 /usr/sbin/mysqld
. . .
اگر MariaDB در حال اجرا نیست، میتوانید با دستور sudo systemctl start mariadb آن را راه اندازی کنید.
برای بررسی بیشتر ، می توانید با استفاده از ابزار mysqladmin ، که یک کلاینت است و به شما امکان اجرای دستورات ادمین را می دهد ، به پایگاه داده وصل شوید. برای مثال ، این دستور می گوید که به عنوان root به MariaDB وصل شوید و با استفاده از سوکت یونیکس نسخه را برگردانید:
$ sudo mysqladmin version

باید خروجی مشابه این دریافت کنید:
Output
mysqladmin Ver 9.1 Distrib 10.3.22-MariaDB, for debian-linux-gnu on x86_64
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Server version 10.3.22-MariaDB-1ubuntu1
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 4 min 49 sec

Threads: 7 Questions: 467 Slow queries: 0 Opens: 177 Flush tables: 1 Open tables: 31 Queries per second avg: 1.615

اگر یک کاربر ادمین جداگانه را با تأیید اعتبار رمزگذاری کرده اید ، می توانید همان کار را با تایپ کردن این دستور انجام دهید:
$ mysqladmin -u admin -p version

این بدان معناست که MariaDB در حال کار است و کاربر شما قادر به تأیید هویت موفقیت آمیز میباشد.
نتیجه
در این راهنما سیستم مدیریت پایگاه داده رابطه ای MariaDB را نصب کرده و با استفاده از اسکریپت mysql_secure_installation که با آن همراه است ، آن را ایمن کردید. همچنین این گزینه را داشتید که قبل از تست عملکرد سرور مجازی MariaDB ، یک کاربر جدید ادمین ایجاد کنید که از تأیید اعتبار مبتنی بر پسورد استفاده کند.
اکنون که سرور مجازی MariaDB را در حال اجرا و ایمن دارید ، در اینجا چند نمونه از مراحل بعدی که می توانید برای کار با سرور مجازی انجام دهید ، آورده شده است:
آموزش نحوه ورود و خروج بانکهای اطلاعاتی
تمرین اجرای پرس و جوهای SQL
گنجاندن MariaDB ذر یک پشته برنامه بزرگتر

 

از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :

نصب و پیکربندی Ansible در اوبونتو 18.04 – نصب MySQL در اوبونتو 18.04

نظارت بر سلامت سرور با Checkmk در اوبونتو – اجرای چند نسخه PHP بر روی یک سرور

نصب Nginx، MySQL، PHP در CentOS 7 –  نصب و پیکربندی Elasticsearch در اوبونتو 18.04

راه اندازی سرور اولیه با اوبونتو 20.04 – تنظیم کلیدهای SSH در Ubuntu 20.04

نصب و استفاده از PostgreSQL در اوبونتو 20.0 – نحوه نصب MySQL در اوبونتو 20.04

نصب Python 3 روی سرور Ubuntu 18.04 –  نحوه نصب Python 3 روی سرور Ubuntu 20.04

نصب Linux،Apache،MySQL،PHP LAMP در اوبونتو 20.04 –  نصب وب سرور Apache در CentOS 8

نحوه نصب Drupal با Docker Compose –  نحوه نصب Nginx در اوبونتو 20.04

7 مورد از اقدامات امنیتی برای محافظت از سرورهای شما –  نحوه نصب و ایمن سازی Redis در اوبونتو 20.04

نحوه نصب و ایمن سازی Redis در اوبونتو 18.04 – اضافه کردن فضای Swap در اوبونتو 20.04

چگونه می توان فایروال را با UFW در اوبونتو 20.04 تنظیم کرد – نظارت بر اطلاعیه و مسیر BGP با BGPalerter اوبونتو 18.04

نصب و ایمن سازی phpMyAdmin در اوبونتو 20.04  –  نصب و استفاده از Composer در اوبونتو 20.04

ریست کردن رمز ورود ریشه MySQL یا MariaDB –  استفاده از نوع داده MySQL BLOB برای ذخیره تصاویر

نصب Nginx در اوبونتو 18.04 – نصب توزیع Anaconda پایتون در اوبونتو 20.04

نحوه نصب جاوا با Apt در اوبونتو 18.04 –  نحوه نصب Django و تنظیم محیط توسعه در اوبونتو 16.04

نصب جنگو و تنظیم محیط توسعه در اوبونتو 20.04 – نحوه ایجاد سرور Minecraft در اوبونتو 18.04

نحوه راه اندازی یک پروژه Node با Typescript –  نحوه نصب و پیکربندی VNC در اوبونتو 18.04

ایجاد یک برنامه Django و اتصال آن به یک بانک اطلاعاتی – نصب و پیکربندی VNC در اوبونتو 20.04

نصب MariaDB در اوبونتو 20.04  –  فعال سازی و اتصال رابط کاربری Django

تنظیم پلتفرم Cloud IDE کد سرور را در اوبونتو 18.04 – پیکربندی Apache HTTP با رویداد MPM و PHP-FPM

 

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان – 

 

 

 

 

برچسب‌ها:

 


فعال سازی و اتصال رابط کاربری Django

 

اگر مجموعه های توسعه Django را دنبال کرده باشید ، یک برنامه Django را راه اندازی کرده ، برنامه خود را به MySQL وصل کرده و مدل های دیتابیس را برای داده های Posts و Comments  در برنامه وب وبلاگ خود ایجاد کرده اید.
در این آموزش ، ما به سایت ادمین Django وصل شده و آن را فعال می کنیم تا بتوانید وبلاگ خود را مدیریت کنید. سایت مدیر Django با یک رابط کاربری ساخته شده است که به گونه ای طراحی شده که به شما و سایر افراد قابل اعتماد امکان مدیریت محتوای وب سایت را می دهد.
شایان ذکر است که مطالب رسمی Django اشاره می کند که اگرچه این برای استفاده داخلی یک سازمان ایده آل است ، اما ساخت یک برنامه وب حول یک رابط کاربری ادمین Django با تولید خودکار توصیه نمی شود. اگر دیدید که رابط کاربری شما لازم است پردازش محورتر باشد یا ثابت شد که جزئیات اجرای جداول و فیلدهای بانک اطلاعاتی را ابسترکت می کند ، بهتر است نظرات خود را برای سمت ادمین بنویسید.
پیش نیازها
این آموزش بخشی از مجموعه های توسعه Django است و ادامه آن مجموعه ها به حساب می آید.
اگر این مجموعه ها را دنبال نکرده اید ، فرضیات زیر مطرح می شود:
• شما نسخه 3 یا بالاتر Django را نصب کرده اید.
• برنامه Django خود را به یک پایگاه داده وصل کرده اید. ما از MySQL استفاده می کنیم ، و می توانید با دنبال کردن قسمت دوم مجموعه Django ، “چگونگی ایجاد یک برنامه Django و اتصال آن به یک بانک اطلاعاتی” ، این کار را انجام دهید.
• شما با یک سیستم عامل مستقر در یونیکس کار می کنید ، ترجیحاً با سرور مجازی ابری اوبونتو 20.04 زیرا این سیستمی است که ما روی آن آزمایش کرده ایم. اگر می خواهید Django را در محیطی مشابه تنظیم کنید ، لطفاً به آموزش ما ، “نحوه نصب Django و ایجاد یک محیط توسعه در اوبونتو 20.04” مراجعه کنید.
از آنجا که این آموزش تا حد زیادی با رابط کاربری ادمین Django سروکار دارد ، حتی در صورت وجود ستاپ کمی متفاوت ، احتمالا میتوانید آن را دنبال کنید.
مرحله 1 – ادمین را فعال کنید
هر وقت کار را در Python و Django شروع کردیم ، باید محیط مجازی Python خود را فعال کرده و به دیرکتوری اصلی برنامه خود برویم. اگر مجموعه ها را دنبال کرده باشید ، می توانید با تایپ کردن دستور زیر به این هدف برسید.
? $ cd ~/my_blog_app
?
? $ . env/bin/activate

برای فعال کردن مدیر Django ، باید اطمینان حاصل کنیم که برنامه ما بخشی از لیست INSTALLED_APPS در فایل settings.py است.
به دیرکتوری فایل تنظیمات بروید:
? (env) Sammy@ubuntu:$ cd ~/my_blog_app/blog/blog/
?
از اینجا ، فایل settings.py را باز کنید. اگر در حال حاضر وجود نداشته باشد ، django.contrib.admin را با استفاده از ویرایشگر متنی مانند nano به لیست INSTALLED_APPS اضافه کنید.
? (env) Sammy@ubuntu:$ nano settings.py
?
بخش INSTALLED_APPS فایل باید مشابه فایل زیر باشد. برنامه ما در لیست یکی از برنامه های موجود در بالا ، blogsite است ، اما اگر برنامه ای با نام دیگری ایجاد کرده اید ، اطمینان حاصل کنید که آن برنامه همانطور که نشان داده شده است در این فایل لیست شده است.
settings.py

# Application definition
INSTALLED_APPS = [
‘blogsite’,
‘django.contrib.admin’,
‘django.contrib.auth’,
‘django.contrib.contenttypes’,
‘django.contrib.sessions’,
‘django.contrib.messages’,
‘django.contrib.staticfiles’,
]

در صورت ایجاد تغییر ، حتما فایل را ذخیره کنید و ببندید. در nano می توانید این کار را با تایپ کردن CTRL و X سپس Y و ENTER انجام دهید.
اکنون می توانیم فایل urls.py را دوباره با nano یا ویرایشگر متن دیگر باز کنیم.
? (env) Sammy@ubuntu:$ nano urls.py
?
در زیر کامنت بالا ، فایل باید به صورت زیر باشد.
urls.py

“””
from django.contrib import admin
from django.urls import path

urlpatterns = [
path(‘admin/’, admin.site.urls),
]

اگر فایل با آنچه در بالا آمده است متفاوت است ، خطوط بالا را در فایل urls.py خود کپی و پیست کنید.
اکنون که اطمینان حاصل کردیم که پروژه وب Django ما دارای کد مناسب در فایل های settings.py و urls.py است ، می دانیم که برنامه ما به مدل های ادمین و رابط کاربری ادمین دسترسی خواهد داشت.
مرحله 2 – تأیید کنید که Admin یک برنامه نصب شده است
باید مدلهای بعدی را به پایگاه داده انتقال دهیم تا مدلهای Admin را که به تازگی اضافه شده است انتخاب کند.
به دایرکتوری که فایل management.py در آن قرار دارد بروید.
? (env) Sammy@ubuntu:$ cd ~/my_blog_app/blog
?
به یاد داشته باشید هر زمان که تغییر در مدل ها انجام می دهید فرمان migrate  را اجرا کنید، مانند این:
? (env) Sammy@ubuntu:$ python manage.py migrate
?
اگر در فایل های فوق هیچ تغییری ایجاد نمی کردیم ، هنگام اجرای دستور migrate باید خروجی مشابه زیر را دریافت میکردیم.
Output
Operations to perform:
Apply all migrations: admin, auth, blogsite, contenttypes, sessions
Running migrations:
No migrations to apply.

در غیر این صورت ، خروجی باید نشان دهد که Django جابه جایی های لازم برای پشتیبانی از برنامه ما را انجام داده است.
اکنون می توانیم سرور مجازی را با اجرای دستور زیر شروع کنیم. می توانید 0.0.0.0 را با آدرس IP خود جایگزین کنید.
? (env) Sammy@ubuntu:$ python manage.py runserver 0.0.0.0:8000
?
سپس در یک مرورگر مورد نظر خود به URL پنل ادمین بروید. حتماً آدرس IP سرور مجازی خود را وارد کنید.
http://your-server-ip:8000/admin/

یک صفحه ورود به سیستم شبیه به این دریافت خواهید کرد.

مشاهده این صفحه به ما اطلاع می دهد که برنامه مدیریت را با موفقیت فعال کرده ایم.
اگرچه این برنامه را فعال کرده ایم ، ممکن است هنوز حساب مدیریت Django را تنظیم نکرده باشیم. می توانیم برای ورود به مرحله بعد ، حساب ادمین ایجاد کنیم.
مرحله 3 – ایجاد حساب فوق کاربری Admin
اگر قبلاً یک حساب ادمین تنظیم کرده اید و می توانید وارد صفحه ادمین خود شوید ، می توانید از این مرحله عبور کنید.
یک ترمینال جدید را برای اتصال به سرور مجازی باز کنید ، یا برنامه Django را با فشار دادن CTRL و C غیرفعال کنید تا بتوانیم در محیط برنامه نویسی ترمینال سرور مجازی خود کار کنیم.
Django به شما امکان می دهد تا یک حساب فوق کاربری تولید کنید ، که می توانیم با اجرای فایل manage.py فرآیند ایجاد ابرکاربر را شروع کنیم.
? (env) Sammy@ubuntu:$ python manage.py createsuperuser
?
پس از انجام این کار ، از شما خواسته می شود تا جزئیات نام کاربری ، ایمیل و رمز عبور خود را وارد کنیم. در این آموزش ، ما با نام کاربری admin_user ، و ایمیل sammy@example.com و پسوردadmin123 یک حساب ادمین ایجاد خواهیم کرد. شما باید این اطلاعات را با تنظیمات برگزیده خودتان پر کنید و حتماً از یک رمز عبور ایمن استفاده کنید که آن را به خاطر میسپارید.
Output
Username (leave blank to use ‘root’): admin_user
Email address: sammy@example.com

سپس هنگامی که اعلان گذرواژه را می بینید ، رمز عبور خود را دو بار وارد کنید. هنگام وارد کردن آن ، و با زدن کلیدهای رمز عبور خروجی دریافت نخواهید کرد. برای تأیید گذرواژه ، Enter را فشار دهید.
Output
Password:
Password (again):

در این مرحله ، اکنون یک حساب کاربری ادمین با نام کاربری admin_user و رمز عبور admin123 داریم.
بیایید وارد آن شده و بررسی کنیم که چه چیزی در صفحه ادمین ما وجود دارد.
در صورت لزوم ، مجدداً برنامه Django را با Python manage.py runserver 0.0.0.0:8000 اجرا کنید و سپس برای مشاهده صفحه ورود به سیستم یک بار دیگر به آدرس http://your-server-ip:8000/admin/ بروید. سپس با نام کاربری و رمز عبور و پسوردی که تازه ایجاد کرده اید وارد شوید.
پس از ورود موفق به سیستم ، صفحه زیر را دریافت خواهید کرد.

در مرحله بعد ، باید روی اتصال برنامه وبلاگ خود به پنل ادمین کار کنیم.
مرحله 4 – ایجاد الگوهای URL برای پست و کامنت
در مرحله قبل ، با موفقیت وارد رابط کاربری شدیم ، اما شاید متوجه شده باشید که برنامه وبلاگ ما هنوز در دسترس نیست. برای ایجاد رابط ادمین با برنامه وبلاگ ، باید آن را با مدل های مرتبط پست و کامنت اضافه و ثبت کنیم.
برای این کار ، یک فایل خالی به نام urls.py ، در دیرکتوری وبلاگ ها ایجاد می کنیم ، مانند این:
? (env) Sammy@ubuntu:$ touch ~/my_blog_app/blog/blogsite/urls.py
?
در این فایل الگوی URL را برای برنامه وبلاگ خود اضافه خواهیم کرد تا بتوانیم از طریق رابط ادمین به آن دسترسی پیدا کنیم.
به مکان آن فایل urls.py که به تازگی ایجاد کردیم بروید.
? (env) Sammy@ubuntu:$ cd ~/my_blog_app/blog/blogsite/
سپس به عنوان نمونه فایل را با nano باز کنید.
?
? (env) Sammy@ubuntu:$ nano urls.py
?
خطوط کد زیر را به فایل اضافه کنید.
urls.py
from django.urls import path
from . import views
urlpatterns = [
path(‘$/’, views.posts, name=’posts’),
path(‘$/’, views.comments, name=’comments’),
]

این ها عبارتهای الگوی URL مورد نیاز برای دسترسی به views  برای Posts و Comments هستند. ما هنوز آن views  را ایجاد نکرده ایم ، اما این مورد را بعداً در این مجموعه پوشش خواهیم داد.
مرحله 5 – برنامه وبلاگ را به مدیر وصل کنید
اتصال وبلاگ ما به رابط ادمین به ما این امکان را می دهد که پیوندها را برای Posts و Comments در داشبورد ادمین مشاهده کنیم. در حال حاضر ، داشبورد فقط لینک ها را برای گروه ها و کاربران نمایش می دهد.
برای اتصال این دو به یکدیگر ، باید مدل های پست ها و کامنت های خود را در داخل فایل blogsite ادمین ثبت کنیم.
به دیرکتوری blogsite بروید:
? (env) Sammy@ubuntu:$ cd ~/my_blog_app/blog/blogsite
?
سپس فایل admin.py را در ویرایشگر متن مورد نظر خود باز کنید.
? (env) Sammy@ubuntu:$ nano admin.py
?
فایل با عبارت ورود و یک کامنت پر می شود.
admin.py
from django.contrib import admin

# Register your models here.

برای پشتیبانی از برنامه خود باید فایل را طوری ویرایش کنید که کد زیر را در خود جای دهد.
admin.py
from django.contrib import admin
from blogsite.models import Post
from blogsite.models import Comment

admin.site.register(Post)
admin.site.register(Comment)

هنگامی که از فایل راضی هستید ، آن را ذخیره کنید و خارج شوید.
اکنون مدل های پست و کامنت را در داخل پنل ادمین ثبت کرده اید. این کار باعث می شود تا رابط کاربری این مدل ها را انتخاب کرده و به کاربرانی که وارد سیستم شده اند و داشبورد ادمین را مشاهده می کنند ، نشان دهد.
مرحله 6 – بررسی کنید که برنامه وبلاگ به ادمین اضافه شده است
اکنون که کد مربوط به Python را اضافه کرده اید ، سرور مجازی را اجرا کنید. http: // your-server-ip: 8000 / admin را باز کنید و اگر از قبل وارد سیستم نشده اید ، با استفاده از اطلاعات خود به صورت ادمین وارد شوید. در این آموزش ، با نام کاربری admin_user و رمز عبور admin123 وارد سیستم شده ایم.
اکنون که به سیستم وارد شده اید ، باید صفحه وب زیر به شما ارائه شود. اگر از قبل تغییر نکرده باشد ، ممکن است لازم باشد مرورگر خود را ریفرش کنید.

این تأیید می کند که ما اکنون برنامه ، blogsite را به داشبورد مدیر Django وصل کرده ایم.
هنگامی که آزمایش برنامه شما به پایان رسید ، می توانید CTRL + C را فشار دهید تا سرور مجازی Django متوقف شود. این کار شما را به محیط برنامه نویسی تان باز می گرداند.
هنگامی که آماده ترک محیط Python خود هستید ، می توانید دستور غیرفعال کردن را اجرا کنید:
? (env) Sammy@ubuntu:$ deactivate
?
غیرفعال کردن محیط برنامه نویسی، شما را به سمت فرمان نهایی ترمینال باز می گرداند.
نتیجه
در این آموزش شما با موفقیت رابط کاربری ادمین را فعال کرده اید ، یک ورود به سیستم به عنوان ادمین ایجاد کرده اید و مدل های پست و کامنت را با ادمین ثبت کرده اید.
رابط ادمین Django به این صورت است که شما قادر خواهید بود تا پست های خود را ایجاد کنید و نظرات را با وبلاگ خود نظارت کنید.
با ورود به این مجموعه ها، views  را برای برنامه وبلاگ ایجاد خواهیم کرد.

 

از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :

نصب و پیکربندی Ansible در اوبونتو 18.04 – نصب MySQL در اوبونتو 18.04

نظارت بر سلامت سرور با Checkmk در اوبونتو – اجرای چند نسخه PHP بر روی یک سرور

نصب Nginx، MySQL، PHP در CentOS 7 –  نصب و پیکربندی Elasticsearch در اوبونتو 18.04

راه اندازی سرور اولیه با اوبونتو 20.04 – تنظیم کلیدهای SSH در Ubuntu 20.04

نصب و استفاده از PostgreSQL در اوبونتو 20.0 – نحوه نصب MySQL در اوبونتو 20.04

نصب Python 3 روی سرور Ubuntu 18.04 –  نحوه نصب Python 3 روی سرور Ubuntu 20.04

نصب Linux،Apache،MySQL،PHP LAMP در اوبونتو 20.04 –  نصب وب سرور Apache در CentOS 8

نحوه نصب Drupal با Docker Compose –  نحوه نصب Nginx در اوبونتو 20.04

7 مورد از اقدامات امنیتی برای محافظت از سرورهای شما –  نحوه نصب و ایمن سازی Redis در اوبونتو 20.04

نحوه نصب و ایمن سازی Redis در اوبونتو 18.04 – اضافه کردن فضای Swap در اوبونتو 20.04

چگونه می توان فایروال را با UFW در اوبونتو 20.04 تنظیم کرد – نظارت بر اطلاعیه و مسیر BGP با BGPalerter اوبونتو 18.04

نصب و ایمن سازی phpMyAdmin در اوبونتو 20.04  –  نصب و استفاده از Composer در اوبونتو 20.04

ریست کردن رمز ورود ریشه MySQL یا MariaDB –  استفاده از نوع داده MySQL BLOB برای ذخیره تصاویر

نصب Nginx در اوبونتو 18.04 – نصب توزیع Anaconda پایتون در اوبونتو 20.04

نحوه نصب جاوا با Apt در اوبونتو 18.04 –  نحوه نصب Django و تنظیم محیط توسعه در اوبونتو 16.04

نصب جنگو و تنظیم محیط توسعه در اوبونتو 20.04 – نحوه ایجاد سرور Minecraft در اوبونتو 18.04

نحوه راه اندازی یک پروژه Node با Typescript –  نحوه نصب و پیکربندی VNC در اوبونتو 18.04

ایجاد یک برنامه Django و اتصال آن به یک بانک اطلاعاتی – نصب و پیکربندی VNC در اوبونتو 20.04

نصب MariaDB در اوبونتو 20.04  –  فعال سازی و اتصال رابط کاربری Django

تنظیم پلتفرم Cloud IDE کد سرور را در اوبونتو 18.04 – پیکربندی Apache HTTP با رویداد MPM و PHP-FPM

 

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان – 

 

 

 

 

برچسب‌ها:


تنظیم پلتفرم Cloud IDE کد سرور را در اوبونتو 18.04

با حرکت ابزارهای گسترش دهنده به سمت cloud ، تطابق پذیری پلتفرم cloud IDE (محیط پیشرفت ادغام شده) در حال رشد است. Cloud IDE ها امکان همکاری در زمان واقعی بین تیم های توسعه دهنده را فراهم می کنند تا در یک محیط توسعه یکپارچه کار کنند و ناسازگاری ها را به حداقل می رساند اما تولید را افزایش میدهد. چون از طریق مرورگرهای وب قابل دسترسی اند ، Cloud IDE ها در هر نوع دستگاه مدرن موجود هستند.
code-server یک کد مایکروسافت ویژوال استودیو است که روی یک سرور مجازی از راه دور اجرا می شود و مستقیماً از مرورگر شما قابل دسترسی است. ویژوال استودیو کد یک ویرایشگر کد مدرن با پشتیبانی Git ادغام شده، یک اشکال زدا برای کد، دارای تکمیل خودکار هوشمند و ویژگی های قابل سفارشی سازی و قابل بسط میباشد. بدان معنی که می توانید از دستگاه های مختلف با سیستم عامل های مختلف استفاده کنید و همیشه یک محیط توسعه مداوم داشته باشید.
در این آموزش ، پلت فرم cloud IDE کد سرور مجازی را بر روی دستگاه Ubuntu 18.04 شما تنظیم کرده و آن را در دامنه شما قرار می دهید ، که با گواهی TLS در Let’s Encrypt ایمن شده است. در اخر، کد ویژوال استودیو را روی سرور مجازی Ubuntu 18.04 خود راه اندازی میکنید که در دامنه شما در دسترس است و با پسورد محافظت میشود.
پیش نیازها
سرور مجازی  که اوبونتو 18.04 را اجرا میکند با حداقل 2 گیگابایت حافظه رم ، دسترسی به ریشه و یک حساب سودو و غیر ریشه. می توانید این کار را با دنبال کردن راهنمای اولیه تنظیم سرور مجازی Ubuntu 18.04 انجام دهید.
? Nginx که روی سرور مجازی شما نصب شده است. برای راهنمایی در مورد نحوه انجام این کار ، مراحل 1 تا 4 نحوه نصب Nginx را در اوبونتو 18.04 مطالعه کنید.
? یک نام دامنه کاملا ثبت شده برای میزبانی کد سرور مجازی ، که به سرور مجازی شما اشاره میکند. در این آموزش از code-server.your-domain استفاده می شود. می توانید نام دامنه را در Namecheap خریداری کنید ، به صورت رایگان در Freenom دریافت کنید ، یا از ثبت دامنه مورد نظر خود استفاده کنید.
مرحله 1 – نصب کد- سرور مجازی
در این بخش کد-سرور مجازی را روی سرور مجازی خود تنظیم می کنید. این مستلزم دانلود آخرین نسخه و ایجاد سرویس سیستمی است که کد-سرور مجازی را همیشه در پس زمینه اجرا می کند. همچنین گزینه ریستارت را برای سرویس تعیین خواهید کرد ، به این ترتیب کد-سرور مجازی پس از خرابی یا ریبوت احتمالی در دسترس خواهد بود.
همه داده های مربوط به کد-سرور مجازی را در پوشه ای به نام ~ / code-server ذخیره می کنید. با اجرای دستور زیر آن را ایجاد کنید:
? $ mkdir ~/code-server
به آن بروید:
? $ cd ~/code-server
?
باید به صفحه نسخه های کد-سرور مجازی Github بروید و آخرین لینوکس را انتخاب کنید (در نام فایل “linux” وجود خواهد داشت). در زمان نوشتن ، آخرین نسخه 3.2.0 بوده است. با اجرای دستور زیر آن را با استفاده از wget دانلود کنید:
? $ wget https://github.com/cdr/code-server/releases/download/3.2.0/code-server-3.2.0-linux-x86_64.tar.gz
?
سپس با اجرای این دستور، بایگانی را باز کنید:
? $ tar -xzvf code-server-3.2.0-linux-x86_64.tar.gz
?
پوشه ای دقیقاً به نام فایل اصلی که دانلود کرده اید ، دریافت میکنید که شامل کد منبع کد-سرور مجازی است. آن را در / usr / lib / code-server کپی کنید تا با اجرای دستور زیر بتوانید به صورت گسترده به آن دسترسی پیدا کنید:
? $ sudo cp -r code-server-3.2.0-linux-x86_64 /usr/lib/code-server
?
سپس ، یک لینک نمادین را در / usr / bin / code-server ایجاد کنید ، که به عملکرد کد-سرور مجازی اشاره کند:
? $ sudo ln -s /usr/lib/code-server/code-server /usr/bin/code-server
?
سپس ، یک پوشه برای کد-سرور مجازی ایجاد کنید ، که در آن داده های کاربر را ذخیره می کند:
? $ sudo mkdir /var/lib/code-server
?
اکنون که کد-سرور مجازی را دانلود کرده اید و آن را در سراسر سیستم در دسترس قرار داده اید ، یک سرویس سیستمی ایجاد خواهید کرد تا کد-سرور مجازی را همیشه در پس زمینه اجرا کنید.
پیکربندی سرویس را در فایلی به نام code-server.service ، در دیرکتوری / lib / systemd / system ذخیره خواهید کرد ، جایی که سیستم عامل سرویس های خود را ذخیره می کند. آن را با استفاده از ویرایشگر متن خود ایجاد کنید:
? $ sudo nano /lib/systemd/system/code-server.service
?
خطوط زیر را اضافه کنید:
/lib/systemd/system/code-server.service
[Unit]
Description=code-server
After=nginx.service

[Service]
Type=simple
Environment=PASSWORD=your_password
ExecStart=/usr/bin/code-server –bind-addr 127.0.0.1:8080 –user-data-dir /var/lib/code-server –auth password
Restart=always

[Install]
WantedBy=multi-user.target

در اینجا ابتدا شرح خدمات را مشخص می کنید. سپس ، اعلام می کنید که سرویس nginx قبل از این باید شروع شود. بعد از بخش [Unit] نوع سرویس را تعریف می کنید (simple بدان معنی است که فرایند باید به سادگی اجرا شود) و فرمانی را که اجرا می شود ارائه می دهد.
همچنین مشخص می کنید که اجرای کد-سرور مجازی جهانی باید با چند آرگومان خاص برای کد-سرور مجازی آغاز شود. –bind-addr 127.0.0.1:8080 آن را به localhost  در پورت 8080 متصل می کند ، بنابراین فقط از داخل سرور مجازی شما قابل دسترسی است. –user-data-dir /var/lib/code-server دایرکتوری داده های کاربر خود را تنظیم می کند ، و –auth password مشخص می کند که باید بازدید کنندگان را با یک رمزعبور ، مشخص شده در متغیر محیط PASSWORD که در خط بالای آن مشخص شده است ، تأیید کند.
به یاد داشته باشید که your_password را با رمز عبور دلخواه خود جایگزین کنید ، سپس فایل را ذخیره کنید و ببندید.
خط بعدی به systemd می گوید تا کد-سرور مجازی را در تمام مواقع عدم کارکرد ریستارت کند (برای مثال ، هنگام خرابی یا سرکوب فرایند). بخش [Install] به سیستم دستور می دهد تا در صورت امکان ورود به سرور مجازی شما ، این سرویس را شروع کند.
با اجرای دستور زیر سرویس کد-سرور مجازی را شروع کنید:
? $ sudo systemctl start code-server
?
با مشاهده وضعیت آن بررسی کنید که درست شروع شده است:
? $ sudo systemctl status code-server
?
خروجی مشابه این مشاهده خواهید کرد:
Output
? code-server.service – code-server
Loaded: loaded (/lib/systemd/system/code-server.service; disabled; vendor preset: enabled)
Active: active (running) since Tue 2020-05-12 20:53:29 UTC; 11s ago
Main PID: 3236 (node)
Tasks: 14 (limit: 2362)
CGroup: /system.slice/code-server.service
??3236 /usr/lib/code-server/node /usr/lib/code-server/out/node/entry.js –bind-addr 127.0.0.1:8080 –user-data-dir /var/lib/code-server –auth pas
??3258 /usr/lib/code-server/node /usr/lib/code-server/out/node/entry.js –bind-addr 127.0.0.1:8080 –user-data-dir /var/lib/code-server –auth pas

May 12 20:53:29 code-server-update systemd[1]: Started code-server.
May 12 20:53:30 code-server-update code-server[3236]: info code-server 3.2.0 fd36a99a4c78669970ebc4eb05768293b657716f
May 12 20:53:30 code-server-update code-server[3236]: info HTTP server listening on http://127.0.0.1:8080
May 12 20:53:30 code-server-update code-server[3236]: info – Using custom password for authentication
May 12 20:53:30 code-server-update code-server[3236]: info – Not serving HTTPS
May 12 20:53:30 code-server-update code-server[3236]: info Automatic updates are enabled

برای شروع خودکار کد-سرور مجازی پس از راه اندازی مجدد سرور مجازی ، سرویس خود را با اجرای دستور زیر فعال کنید:
? $ sudo systemctl enable code-server
?
در این مرحله ، شما کد-سرور مجازی را دانلود کرده و آن را در سطح جهانی در دسترس قرار داده اید. سپس ، یک سرویس سیستمی برای آن ایجاد کرده اید و آن را فعال کرده اید ، بنابراین کد-سرور مجازی از هر بوت سرور مجازی شروع می شود. سپس ، با پیکربندی Nginx به عنوان یک پراکسی معکوس بین بازدید کننده و کد-سرور مجازی آن را در معرض نمایش دامنه خود قرار می دهید.
مرحله 2 – قرار گرفتن در معرض کد-سرور مجازی در دامنه شما
در این بخش ، Nginx را به عنوان یک پروکسی معکوس برای کد-ر پیکربندی می کنید.
همانطور که در مرحله پیش نیاز Nginx آموخته اید ، فایل های پیکربندی سایت آن تحت /etc/nginx/sites-available ذخیره می شوند و بعداً باید برای فعال شدن با /etc/nginx/sites-enabled لینک شده باشند.
پیکربندی را برای قرار دادن کد-سرور مجازی در دامنه خود در فایلی به نام code-server.conf ، تحت /etc/nginx/sites-available ذخیره می کنید. با ایجاد ویرایشگر خود کار را شروع به کار کنید:
? $ sudo nano /etc/nginx/sites-available/code-server.conf
?
خطوط زیر را اضافه کنید:
/etc/nginx/sites-available/code-server.conf
server {
listen 80;
listen [::]:80;

server_name code-server.your-domain;

location / {
proxy_pass http://localhost:8080/;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection upgrade;
proxy_set_header Accept-Encoding gzip;
}
}

code-server.your-domain را با دامنه مورد نظر خود جایگزین کنید ، سپس فایل را ذخیره کنید و ببندید.
در این فایل ، تعریف می کنید که Nginx باید به پورت HTTP 80 گوش کند. سپس ، یک server_name را تعیین می کنید که به Nginx می گوید برای کدام دامنه درخواست ها را بپذیرد و این پیکربندی خاص را اعمال کند. در بلوک بعدی ، برای مکان ریشه (/) ، مشخص می کنید که درخواست ها باید به کد-سرور مجازی در حال اجرا در localhost:8080 به جلو و عقب منتقل شوند. سه خط بعدی (که با proxy_set_header شروع میشود) به Nginx دستور می دهد تا برخی از هدرهای درخواست HTTP را که برای عملکرد صحیح WebSockets مورد نیاز هستند ، استفاده کند.
برای فعال کردن این پیکربندی سایت ، باید با اجرای دستور زیر ، یک پوشه مربوط به آن را در پوشه / etc / nginx / sites-enabled ایجاد کنید:
? $ sudo ln -s /etc/nginx/sites-available/code-server.conf /etc/nginx/sites-enabled/code-server.conf
?
برای آزمایش اعتبار پیکربندی ، دستور زیر را اجرا کنید:
? $ sudo nginx -t
?
خروجی زیر را مشاهده خواهید کرد:
Output
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

برای اینکه پیکربندی عملی شود ، باید Nginx را مجدداً راه اندازی کنید:
? $ sudo systemctl restart nginx
?
اکنون نصب کد-سرور مجازی شما در دامنه تان قابل دسترسی است. در مرحله بعد ، با استفاده از یک گواهی نامه Let’s Encrypt TLS رایگان ، آن را ایمن خواهید کرد.
مرحله 3 – امنیت بخشیدن به دامنه
در این بخش دامنه خود را با استفاده از گواهی نامه رمزگذاری TLS که با استفاده از Certbot تهیه می نمایید را ایمن می کنید.
برای نصب آخرین نسخه Certbot ، باید با اجرای دستور زیر مخزن بسته آن را به سرور مجازی خود اضافه کنید:
? $ sudo add-apt-repository ppa:certbot/certbot
?
برای قبول باید ENTER را فشار دهید.
سپس Certbot و افزونه Nginx آن را نصب کنید:
? $ sudo apt install python-certbot-nginx
?
به عنوان بخشی از پیش شرط ها ، شما ufw (فایروال کامپایل نشده) را فعال کرده و آن را پیکربندی کرده اید تا امکان ترافیک HTTP رمزگذاری نشده را فراهم کند. برای دسترسی به سایت ایمن ، باید آن را پیکربندی کنید تا با اجرای دستور زیر ، ترافیک رمزگذاری شده را بپذیرد:
? $ sudo ufw allow https
?
خروجی این چنین خواهد بود:
Output
Rule added
Rule added (v6)
به طور مشابه با Nginx ، لازم است آن را مجدد کنید لود تا پیکربندی آن به مرحله اجرا برسد:
? $ sudo ufw reload
?

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان – 

 

 

 

 

برچسب‌ها: