سرور مجازی

  • ۰
  • ۰

Discord یک برنامه چت میباشد که به میلیونها کاربر در سراسر جهان امکان ارسال پیام و گفتگوی صوتی آنلاین را در انجمن هایی به نام guilds یا سرور مجازی ها می دهد. Discord همچنین API گسترده ای را ارائه می دهد که توسعه دهندگان می توانند از آن برای ساختن رباتهای قدرتمند Discord استفاده کنند. رباتها می توانند اقدامات مختلفی مانند ارسال پیام به سرور مجازی ها ، کاربران DM -ing ، سرور مجازی های تعدیل کننده و پخش صوتی را در گپ های صوتی انجام دهند. این به توسعه دهندگان امکان می دهد تا ربات های قدرتمندی را بکار گیرند که شامل ویژگی های پیشرفته و پیچیده ای همچون ابزارهای تعدیل یا حتی بازی ها است. به عنوان مثال ، ربات ابزار Dyno به میلیون ها guilds ارائه می کند و دارای ویژگی های مفیدی مانند محافظت در برابر اسپم ، پخش کننده موسیقی و سایر کارکردها است. یادگیری نحوه ایجاد ربات های Discord به شما امکان می دهد بسیاری از امکانات را که روزانه هزاران نفر با آنها ارتباط برقرار می کنند ، به اجرا بگذارید.
در این آموزش ، با استفاده از Node.js و کتابخانه Discord.js ، یک ربات Discord را از ابتدا خواهید ساخت که به کاربران امکان می دهد به طور مستقیم با Discord API ارتباط برقرار کنند. یک پروفایل برای ربات Discord تنظیم می کنید ، علائم احراز هویت را برای ربات دریافت می کنید ، و ربات را به پردازش دستورات ، با آرگومان ها ، از کاربران توانمند می کنید.
پیش نیازها
قبل از شروع کار به موارد زیر نیاز خواهید داشت:
⦁ Node.js بر روی دستگاه توسعه شما نصب شده باشد. برای نصب این مورد روی macOS یا Ubuntu 18.04 ، مراحل نحوه نصب Node.js و ایجاد محیط توسعه محلی را در macOS یا نصب با استفاده از یک بخش PPA در مقاله نحوه نصب Node.js در اوبونتو 18.04 دنبال کنید.
⦁ هر ویرایشگر متن مورد نظر شما ، از جمله ویژوال استودیو کد ، Atom ، Sublime یا Nano.
⦁ یک حساب Discord رایگان با یک ایمیل تأیید شده و یک سرور مجازی  Discord رایگان که برای تست ربات Discord خود استفاده خواهید کرد.
مرحله 1 – راه اندازی یک ربات Discord
در این مرحله ، از رابط کاربری گرافیکی Discord استفاده می کنید تا یک ربات Discord را تنظیم کنید و نشانه ربات را دریافت کنید ، که به برنامه خود منتقل خواهید کرد.
برای ثبت ربات در پلتفرم Discord از داشبورد برنامه Discord استفاده کنید. در اینجا توسعه دهندگان می توانند برنامه های Discord از جمله رباتهای Discord را ایجاد کنند.

برای شروع ، روی New Application کلیک کنید. Discord از شما می خواهد که نام خود را برای برنامه جدید خود وارد کنید. سپس بر روی Create  کلیک کنید تا برنامه ایجاد شود.

توجه: نام برنامه شما از نام ربات مستقل است ، و لازم نیست که بات همان نام برنامه را داشته باشد.
اکنون داشبورد برنامه خود را باز کنید. برای افزودن ربات به برنامه ، به سربرگ Bot  در نوار پیمایش در سمت چپ بروید.

برای افزودن یک ربات به برنامه ، روی دکمه Add Bot کلیک کنید. هنگامی که تأیید شما را خواست ، روی Yes کلیک کنید. سپس وارد داشبورد خواهید شد که حاوی جزئیاتی از نام ربات ، نشانه احراز هویت و تصویر پروفایل شما است.

می توانید نام یا عکس پروفایل ربات خود را در اینجا روی داشبورد تغییر دهید. همچنین باید با کلیک بر روی گزینه Reveal Token و کپی کردن نشانه ای که ظاهر می شود ، رمز تصدیق ربات را کپی کنید.
اخطار: هرگز نشانه ربات خود را به اشتراک نگذارید و بارگذاری نکنید زیرا این امکان را به همه می دهد که وارد ربات شما شوند.
حال باید یک لینک دعوت ایجاد کنید که به شما امکان می دهد guilds  ربات Discord را اضافه کنید که در آن می توانید ربات را آزمایش کنید. ابتدا به تب OAuth2 داشبورد برنامه بروید. برای ایجاد لینک دعوت ، به پایین بروید و bot  را از گزینه های scopes انتخاب کنید. همچنین باید مجوزهایی را برای کنترل آنچه که ربات شما می تواند در guilds انجام دهد تعیین کنید. برای اهداف این آموزش ، Administrator را انتخاب کنید ، که به ربات شما اجازه می دهد تقریباً تمام اقدامات در guilds را انجام دهد. پیوند را با دکمه Copy کپی کنید.

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

اکنون روی Continue کلیک کنید. اطمینان حاصل کنید که تیک باکس کنار Administrator  تیک خورده است – و مجوزهای ادمین را به ربات اعطا می کند. سپس بر روی Authorize کلیک کنید. Discord از شما می خواهد قبل از اینکه ربات به سرور مجازی ملحق شود ، CAPTCHA را حل کنید. اکنون ربات Discord را در لیست اعضاء موجود در سرور مجازی ی که به آن اضافه می کنید ، تحت offline دارید.

در نهایت با موفقیت یک ربات Discord ایجاد کرده و آن را به یک سرور مجازی اضافه کرده اید. در مرحله بعد ، یک برنامه برای ورود به ربات بنویسید.
مرحله 2 – ایجاد پروژه خود
در این مرحله ، محیط برنامه نویسی اصلی را تنظیم خواهید کرد که در آن می توانید ربات خود را بسازید و به طور برنامه ریزی شده به ربات وارد شوید.
ابتدا باید یک پوشه پروژه و فایل های پروژه ضروری برای ربات تنظیم کنید.
پوشه پروژه خود را ایجاد کنید:
⦁ $ mkdir discord-bot

به پوشه پروژه ای که اخیراً ایجاد کرده اید بروید:
⦁ $ cd discord-bot

در مرحله بعدی ، از ویرایشگر متن خود برای ایجاد فایلی با نام config.json برای ذخیره نشانه احراز هویت ربات خود استفاده کنید:
⦁ $ nano config.json

سپس کد زیر را به فایل پیکربندی اضافه کنید ، متن هایلایت شده را با نشان احراز هویت ربات خود جایگزین کنید:
config.json
{
“BOT_TOKEN”: “YOUR BOT TOKEN”
}
فایل را ذخیره کنید و از آن خارج شوید.
در مرحله بعد یک فایل pack.json ایجاد خواهید کرد که جزئیات پروژه و اطلاعات مربوط به متعلقاتی که برای پروژه استفاده خواهید کرد را ذخیره می کند. با اجرای دستور npm زیر ، یک فایل pack.json ایجاد خواهید کرد:
⦁ $ npm init

npm جزئیات مختلفی در مورد پروژه را از شما می خواهد. اگر در مورد تکمیل تنظیم این اعلان ها راهنمایی می خواهید، می توانید مقاله نحوه استفاده از ماژول های Node.js با npm و pack.json را بخوانید.
اکنون بسته discord.js را که برای تعامل با API Discord استفاده خواهید کرد ، نصب خواهید کرد. می توانید discord.js را از طریق npm با دستور زیر نصب کنید:
⦁ $ npm install discord.js

اکنون که فایل پیکربندی را تنظیم کرده و متعلقات لازم را نصب کرده اید ، آماده هستید که ساخت ربات خود را شروع کنید. در یک برنامه واقعی ، یک ربات بزرگ به چندین فایل ها تقسیم می شود ، اما برای اهداف این آموزش ، کد مربوط به ربات شما در یک فایل خواهد بود.
ابتدا فایلی به نام index.js را در پوشه discord-bot برای کد ایجاد کنید:
⦁ $ nano index.js

با درخواست متعلقات discord.js و فایل پیکربندی با نشان ربات ، کدگذاری ربات را شروع کنید:
index.js
const Discord = require(“discord.js”);
const config = require(“./config.json”);

پس از این ، دو خط کد بعدی را اضافه کنید:
index.js

const client = new Discord.Client();

client.login(config.BOT_TOKEN);

فایل خود را ذخیره کنید و از آن خارج شوید.
خط اول کد Discord.Client جدید ایجاد می کند و آن را به کلاینت ثابت اختصاص می دهد. این کلاینت تا حدی نحوه تعامل شما با Discord API است و اینکه چگونه Discord شما را از وقایعی مانند پیام های جدید مطلع می کند. در واقع کلاینت ، نماینده ربات Discord است.
خط دوم کد از روش login روی کلاینت برای ورود به ربات Discord که ایجاد کرده اید ، استفاده می کند و از توکن موجود در فایل config.json به عنوان رمز عبور استفاده می کند. توکن بهAPI Discord اطلاع می دهد که برنامه برای کدام بوت است و شما برای استفاده از ربات مجاز هستید.
اکنون ، فایل index.js را با استفاده از Node اجرا کنید:
⦁ $ node index.js

وضعیت ربات شما به صورت آنلاین در سرور مجازی Discord که به آن اضافه کردید تغییر خواهد کرد.

شما با موفقیت یک محیط برنامه نویسی تنظیم کرده اید و کد اصلی را برای ورود به یک ربات Discord ایجاد کرده اید. در مرحله بعد دستورات کاربر را کنترل خواهید کرد و ربات خود را برای انجام کارهایی مانند ارسال پیام دریافت خواهید کرد.
مرحله 3 – رسیدگی به اولین دستور کاربر
در این مرحله شما یک ربات ایجاد خواهید کرد که بتواند دستورات کاربر را کنترل کند. اولین فرمان ping خود را پیاده سازی خواهید کرد ، که با “pong” و زمان لازم برای پاسخ به دستور، جواب خواهد داد.
ابتدا باید پیامهایی را که کاربران ارسال می کنند شناسایی و دریافت کنید تا بتوانید هر فرمانی را پردازش کنید. با استفاده از روش on در کلاینت Discord ، Discord یک اعلان درباره رویدادهای جدید برای شما ارسال می کند. روش on دو آرگومان دریافت می کند: نام یک رویدادی که باید برای آن منتظر بمانید و یک تابع برای اجرا در هر زمانی که این رویداد اتفاق می افتد. با استفاده از این روش می توانید منتظر پیام رویداد باشید – هربار که یک پیام به guild  ارسال می شود که در آن ربات مجاز به مشاهده پیام ها است ، این رویداد رخ می دهد. بنابراین بیایید یک تابع ایجاد کنیم ، که هر بار یک پیام برای پردازش دستورات ارسال میشود، اجرا گردد.
ابتدا فایل خود را باز کنید:
⦁ $ nano index.js

کد زیر را به فایل خود اضافه کنید:
index.js

const client = new Discord.Client();

client.on(“message”, function(message) {

});

client.login(config.BOT_TOKEN);

این عملکرد که در رویداد message  اجرا می شود ، message  را به عنوان یک پارامتر در نظر می گیرد. message  مقدار نمونه پیام Discord.js را شامل می شود ، که حاوی اطلاعاتی در مورد پیام ارسال شده و روش هایی برای کمک به ربات در پاسخگویی است.
اکنون خط کد زیر را به تابع مدیریت فرمان خود اضافه کنید:
index.js

client.on(“message”, function(message) {
if (message.author.bot) return;
});

این خط بررسی می کند که نویسنده پیام یک ربات است یا خیر و اگر چنین باشد ، پردازش دستور را متوقف می کند. این مسئله از آن جهت مهم است که شما نمی خواهید پیام های ربات ها را پردازش کنید یا پاسخ دهید. ربات ها معمولاً نیازی به استفاده از ربات ما ندارند از این رو ، نادیده گرفتن پیام های آنها قدرت پردازش را بیشتر می کند و از جلوگیری از پاسخ های تصادفی جلوگیری می کند.
اکنون یک مدیر فرمان خواهید نوشت. برای تحقق این امر ، خوب است که فرمت معمول یک دستور Discord را بدانید. به طور معمول ، ساختار دستور Discord شامل سه قسمت به ترتیب زیر است: پیشوند ، نام فرمان و (بعضی اوقات) آرگومان های فرمان.

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

const prefix = “!”;

client.on(“message”, function(message) {
if (message.author.bot) return;
if (!message.content.startsWith(prefix)) return;
});

خط اول کد را برای اختصاص مقدار “!” به پیشوند prefix اضافه می کنید ، که به عنوان پیشوند ربات استفاده خواهید کرد.
خط دوم کد بررسی می کند که آیا محتوای پیامی که ربات پردازش می کند ، با پیشوند تنظیم شده شروع می شود و اگر اینگونه نباشد ، پیام را برای ادامه پردازش متوقف می کند.
حال باید بقیه پیام را به یک اسم فرمان و هر آرگومان موجود در پیام تبدیل کنید. خطوط هایلایت شده زیر را اضافه کنید:
index.js

client.on(“message”, function(message) {
if (message.author.bot) return;
if (!message.content.startsWith(prefix)) return;

const commandBody = message.content.slice(prefix.length);
const args = commandBody.split(‘ ‘);
const command = args.shift().toLowerCase();
});

برای حذف پیشوند از محتوای پیام و اختصاص نتیجه به ثابت commandBody از خط اول استفاده می کنید. این امر از آن جهت ضروری است که نمی خواهید پیشوند را در نام فرمان تجزیه شده درج کنید.
خط دوم پیام را با پیشوند حذف شده می گیرد و از روش split با یک اسپیس به عنوان جدا کننده بر روی آن استفاده می کند. این اسپس آن را به آرایه ای از رشته های فرعی تقسیم می کند و در هر جایی که فضایی باشد شکاف ایجاد می کند. در نتیجه آرایه ای حاوی نام دستور به دست می آید ، که در صورت وجود در پیام ، هرگونه آرگومانی موجو میباشد. شما این آرایه را به آرگومان های ثابت اختصاص می دهید.
خط سوم ، عنصر اول را از آرایه args (که همان نام دستور ارائه شده است) حذف می کند ، آن را به حروف کوچک تبدیل می کند ، و سپس آن را به دستور ثابت اختصاص می دهد. این به شما امکان می دهد نام فرمان را جدا کنید و فقط آرگومان هایی را در آرایه بگذارید. همچنین از متد toLowerCase استفاده می کنید زیرا دستورات معمولاً در رباتهای Discord به حروف کوچک و بزرگ حساس نیستند.
شما ساخت یک پارسر فرمان ، اجرای پیشوند موردنیاز و دریافت نام فرمان و هرگونه آرگومان در پیام را انجام داده اید. اکنون کد دستورات خاص را پیاده سازی و ایجاد خواهید کرد.
برای شروع اجرای دستور ping ، کد زیر را اضافه کنید:
index.js

const args = commandBody.split(‘ ‘);
const command = args.shift().toLowerCase();

if (command === “ping”) {

}
});

این دستور if بررسی کند که آیا نام دستوری که شما آن را تجزیه کرده اید (به فرمان ثابت اختصاص داده شده است) با “ping” مطابقت دارد. اگر این گونه بود ، نشان می دهد که کاربر می خواهد از دستور “pong” استفاده کند. شما می توانید کد مربوط به دستور خاص را در داخل بلوک if جای دهید. شما این الگو را برای سایر دستوراتی که می خواهید پیاده سازی کنید ، تکرار خواهید کرد.
اکنون می توانید کد دستور “ping” را پیاده سازی کنید:
index.js

if (command === “ping”) {
const timeTaken = Date.now() – message.createdTimestamp;
message.reply(`Pong! This message had a latency of ${timeTaken}ms.`);
}

فایل خود را ذخیره کنید و از آن خارج شوید.
شما می توانید بلوک فرمان “ping” را اضافه کنید که تفاوت بین زمان فعلی محاسبه شده- با استفاده از روش now در آبجکت تاریخ – و زمانی که پیام ساخته شده است را بر حسب میلی ثانیه محاسبه می کند. در واقع محاسبه می کند که چه مدت طول میکشد که پیام پردازش شود و “ping” ارائه گردد.
خط دوم با استفاده از روش reply در ثابت message  ، به دستور کاربر پاسخ می دهد. روش reply (که به کاربر اطلاع می دهد و پیام را برای کاربر مشخص شده هایلایت می کند) کاربرانی که از این دستور استفاده کرده اند ، و به دنبال آن مطالب ارائه شده به عنوان اولین آرگومان در روش را پیگیری می کند. شما الگویی الفبایی حاوی پیام و ping محاسبه شده را به عنوان پاسخی که از روش reply  استفاده خواهد کرد ارائه می کنید.
نتیجه اجرای فرمان “ping” را به دست میدهد.
ربات خود را با استفاده از دستور زیر اجرا کنید (در همان پوشه ای که index.js):
⦁ $ node index.js

اکنون می توانید از دستور “! ping” در هر کانالی استفاده کنید که ربات می تواند آن را مشاهده کند و پیام دهد ، و در نتیجه پاسخی حاصل می شود.

شما با موفقیت یک ربات ایجاد کرده اید که می تواند دستورات کاربر را کنترل کند و اولین دستور خود را پیاده سازی کرده اید. در مرحله بعد ، با اجرای یک دستور sum ، توسعه ربات خود را ادامه می دهید.
مرحله 4 – اجرای دستور Sum
اکنون با اجرای دستور “! sum” برنامه خود را گسترش می دهید. قبل از بازگشت مجموع همه آرگومان ها به کاربر ، تعداد آرگومان ها را جمع کرده و آنها را با هم جمع می کند.
اگر ربات Discord شما همچنان در حال اجرا است ، می توانید روند آن را با CTRL + C متوقف کنید.
فایل index.js خود را دوباره باز کنید:
⦁ $ nano index.js

برای شروع اجرای دستور “! sum” از یک بلوک else-if استفاده خواهید کرد. پس از بررسی نام فرمان ping ، بررسی می کند که آیا نام فرمان برابر ” sum ” است یا خیر. ما از یک بلوک else-if استفاده می کنیم ، زیرا فقط یک دستور به طور همزمان پردازش می شود ، بنابراین اگر این برنامه با نام فرمان “ping” مطابقت دارد ، لازم نیست که دستور “sum” را بررسی کنید. خطوط هایلایت زیر را به فایل خود اضافه کنید:
index.js

if (command === “ping”) {
const timeTaken = Date.now() – message.createdTimestamp;
message.reply(`Ping! This message had a latency of ${timeTaken}ms.`);
}

else if (command === “sum”) {

}
});

می توانید اجرای دستور “sum” را شروع کنید. کد مربوط به فرمان “sum” در داخل بلوک else-if که شما ایجاد کرده اید ، وارد خواهد شد. اکنون کد زیر را اضافه کنید:
index.js

else if (command === “sum”) {
const numArgs = args.map(x => parseFloat(x));
const sum = numArgs.reduce((counter, x) => counter += x);
message.reply(`The sum of all the arguments you provided is ${sum}!`);
}

شما از روش map در لیست آرگومان ها استفاده می کنید تا با استفاده از عملکرد parseFloat در هر مورد موجود در آرایه args ، یک لیست جدید ایجاد کنید. این یک آرایه جدید ایجاد می کند (مختص ثابت numArgs) که در آن همه موارد به جای رشته ها عدد هستند. این بدان معنی است که بعدا می توانید با اضافه کردن آنها به یکدیگر تعداد اعداد را با موفقیت پیدا کنید.
خط دوم از روش reduce در numArgs ثابت استفاده می کند و تابعی را ارائه می دهد که تمام عناصر موجود در لیست را جمع می کند. شما جمع همه عناصر را در numArgs به sum ثابت اختصاص می دهید.
سپس برای پاسخ دادن به دستور کاربر با الگوی الفبایی ، از روش reply در مورد پیام استفاده می کنید ، که شامل کلیه آرگومانهایی است که کاربر به ربات ارسال می کند.
این کار نتیجه اجرای دستور “sum” است. اکنون ربات را با استفاده از دستور زیر اجرا کنید (در همان پوشه ای که index.jsاست):
⦁ $ node index.js

اکنون می توانید از دستور “! sum” در هر کانالی استفاده کنید که ربات می تواند در آن مشاهده کند و پیام دهد.

در زیر یک نسخه کامل از دیرکتوری اسکریپت های index.js است:
index.js
const Discord = require(“discord.js”);
const config = require(“./config.json”);

const client = new Discord.Client();

const prefix = “!”;

client.on(“message”, function(message) {
if (message.author.bot) return;
if (!message.content.startsWith(prefix)) return;

const commandBody = message.content.slice(prefix.length);
const args = commandBody.split(‘ ‘);
const command = args.shift().toLowerCase();

if (command === “ping”) {
const timeTaken = Date.now() – message.createdTimestamp;
message.reply(`Pong! This message had a latency of ${timeTaken}ms.`);
}

else if (command === “sum”) {
const numArgs = args.map(x => parseFloat(x));
const sum = numArgs.reduce((counter, x) => counter += x);
message.reply(`The sum of all the arguments you provided is ${sum}!`);
}
});

client.login(config.BOT_TOKEN);

در این مرحله ، با اجرای دستور sum ، ربات Discord خود را توسعه داده اید.
نتیجه
یک ربات Discord را با موفقیت پیاده سازی کرده اید که می تواند دستورات مختلف کاربر و آرگومان های فرمان را کنترل کند. اگر می خواهید بات خود را گسترش دهید ، می توانید دستورات بیشتری را اجرا کنید یا قسمت های بیشتری از API Discord را امتحان کنید تا یک ربات قدرتمند Discord را تهیه کنید. می توانید مستندات Discord.js یا مستندات Discord API را مرور کنید تا دانش خود در این مورد گسترش دهید.
در حین ایجاد ربات های Discord ، همیشه باید شرایط خدمات Discord API را در نظر داشته باشید ، که بیانگر نحوه استفاده توسعه دهندگان از API Discord میباشد. همچنین می توانید این مجموعه از دستورالعمل ها را در مورد چگونگی اجرای بهتر ربات Discord بخوانید و نکاتی درباره نحوه طراحی ربات های Discord ارائه دهید. اگر می خواهید در مورد Node.js اطلاعات بیشتری کسب کنید ، مقاله نحوه کد نویسی در مجموعه های Node.js را مطالعه کنید.

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

مقدمه
هنگامی که یک سرور مجازی جدید راه اندازی میکنید، یک حساب پیش فرض به نام root ایجاد می شود. این کاربر دسترسی کامل به سیستم دارد و باید فقط برای کارهای اداری مورد استفاده قرار گیرد. اساساً هیچ محدودیتی در مورد کارهایی که می توانید به عنوان کاربر اصلی برای سیستم خود انجام دهید وجود ندارد ، که ابزار کارآمدی است اما بسیار خطرناک است. لینوکس دکمه ” undo” ندارد.
برای کاهش این خطر ، می توانیم کاربر جدیدی ایجاد کنیم ، که امتیازات کمتری داشته باشد ، اما برای کارهای روزمره مناسب تر است. هنگامی که به قدرت کاربر اجرایی احتیاج دارید ، می توانید از طریق دستوری به نام sudo به آن قابلیت دسترسی پیدا کنید که به طور موقت امتیازات یک فرمان واحد را بالا می برد.
این راهنما نحوه ایجاد یک کاربر جدید بر روی سیستم دبیان را بررسی خواهد کرد. ما همچنین نحوه دسترسی کاربران به فرمان sudo را در صورت نیاز به امتیازات اجرایی و نحوه حذف کاربرانی که دیگر به آنها نیازی ندارید را پوشش خواهیم داد.
ورود به سرور خود
برای انجام مراحل در این راهنما، شما باید به عنوان کاربر اصلی وارد سرور Debian خود شوید.
اگر بدون انتخاب کلید SSH جهت تأیید اعتبار، یک نمونه سرور مجاری ایجاد کرده اید، به طور معمول ایمیلی را با رمز کاربری root دریافت می کنید. با تایپ کردن ssh root@your_server_ip_address می توانید از این اطلاعات برای ورود به سرور مجازی خود به عنوان کاربر اصلی در ترمینال استفاده کنید.
پسوردی را که به شما ارسال شده است وارد کنید (با وارد کردن پسورد هیچ چیزی روی صفحه نمایش داده نمی شود. این یک ویژگی امنیتی است به طوری که افراد اطراف شما نمی توانند رمز عبور شما را بر اساس طول آن حدس بزنند).
اگر پیکربندی خود را برای استفاده از کلیدهای SSH برای احراز هویت تنظیم کرده اید، می توانید از همان روش SSH بالا استفاده کنید ، اما به طور خودکار وارد سیستم می شوید بدون اینکه از شما پسورد خواسته شود. توجه داشته باشید که هیچ رمز عبوری برای شما ارسال نخواهد شد.
افزودن کاربر جدید
اولین قدم اضافه کردن یک کاربر جدید است. کاربران جدید ، به طور پیش فرض ، غیر متمایز هستند. این بدان معنی است که آنها فقط قادر به تغییر پرو Debiaنده ها در فهرست هوم خود هستند ، این همان چیزی است که ما می خواهیم.

اگر این اولین کاربر جدید شماست و شما هم اکنون به عنوان کاربر root وارد سیستم شده اید ، می توانید از ترکیب زیر استفاده کنید تا کاربر جدید ایجاد کنید:
adduser newuser
اگر به یک حساب کاربری وارد شده اید که اخیرا اضافه کرده اید و امتیازات sudo را دریافت کرده اید ، می توانید با استفاده از sudo با همان دستور کاربر جدیدی ایجاد کنید:
sudo adduser newuser
در هر صورت ، Debian  شما را برای کسب اطلاعات بیشتر در مورد کاربری که می خواهید ایجاد کنید آگاه میکند. اولین اطلاعاتی که باید انتخاب کنید رمز عبور کاربر جدید است.
از شما می خواهد یک رمز عبور انتخاب کنید و سپس با تکرار آن را تأیید کنید (این دفعه هم کاراکترهایی که تایپ می کنید برای اهداف امنیتی در پنجره ظاهر نمی شوند).
پس از آن ، اطلاعات شخصی در مورد کاربر را از شما میخواهد. شما می توانید آن را پر کنید یا خالی نگه دارید. کاربر بدون در نظر گرفتن تصمیم شما کاملاً به همان روش کار خواهد کرد. برای رد کردن این تبلیغات ، ENTER را تایپ کنید و مقادیر وارد شده را بپذیرید.
دسترسی به کاربر جدید
وقتی این مراحل را تمام کردید ، کاربر جدید شما اکنون در دسترس است. می توانید با وارد کردن exit به عنوان کاربر جدید وارد شوید:
با این کار بخش فعلی شما به عنوان root خاتمه می یابد و به شما امکان می دهد با وارد کردن کاربر جدید از طریق SSH وارد شوید:
ssh newuser @ your_server_ip_address
این بار گذرواژه جدیدی را که تازه برای این کاربر تنظیم کرده اید ، وارد کنید.
روش دیگر برای جابجایی سریع کاربر دیگر بدون ورود به سیستم ، استفاده از دستور su است. این دستور مخفف substitute  است و به شما امکان می دهد تا کاربر مورد نظر خود را تغییر دهید. می توانید از این طریق استفاده کنید:
su – newuser
با این کار رمز ورود کاربر جدید از شما خواسته میشود. وقتی آن را به درستی وارد کرده باشید ، به کاربر جدید تغییر خواهید کرد. وقتی می خواهید به بخش اصلی خود برگردید ، دوباره دستور خروج را وارد کنید:
اعطای امتیازات اجرایی به کاربران
اکنون که کاربر جدیدی در سیستم خود دارید ، باید تصمیم بگیرید که آیا این کاربر باید با sudo وظایف اداری را انجام دهد یا خیر.
اگر کاربری که ایجاد کردید کاربر اصلی شما در سیستم میباشد ، معمولاً مایل هستید امتیازات sudo را فعال کنید تا بتوانید پیکربندی و نگهداری معمول را انجام دهید.
برای افزودن این امتیازات به کاربر جدید خود ، باید کاربر جدید را به گروه sudo اضافه کنیم. به طور پیش فرض کاربرانی که به گروه sudo تعلق دارند مجاز به استفاده از دستور sudo هستند.

به عنوان root ، این دستور را اجرا کنید تا کاربر جدید خود را به گروه sudo اضافه کنید (کلمه هایلایت شده را با کاربر جدید خود جایگزین کنید):
usermod -aG sudo sammy
اکنون ، هنگامی که به عنوان کاربر عادی خود وارد سیستم شده اید ، می توانید با تایپ کردن sudo command_name
یک دستور خاص با امتیازات اصلی را اجرا کنید.
از شما خواسته می شود رمزعبور کاربر خود را وارد کنید (نه رمزعبور کاربر اصلی). سپس دستور با دسترسی بهتر اجرا می شود.
حذف یک کاربر
اگر بیش از یک نفر از سرور مجازی شما استفاده می کند، باید کاربری خود را به آن ها اختصاص دهید تا وارد سیستم شوند. اگر کاربری ایجاد کرده اید که دیگر نیازی به آن ندارید ، حذف آن بسیار آسان است.
به عنوان یک کاربر معمولی با امتیازات sudo ، می توانید کاربر را با استفاده از این دستور حذف کنید:
sudo deluser –remove-home username
گزینه –remove-home دیرکتوری هوم کاربر را نیز حذف می کند.
اگر به عنوان کاربر root وارد شده اید ، نیازی به اضافه کردن sudo قبل از دستور ندارید:
deluser –remove-home username
نتیجه
اضافه کردن کاربران ، حذف کاربران ، و اختصاص امتیازات sudo همه کارهای اولیه ای است که به احتمال زیاد به پیکربندی برای هر سرور مجازی احتیاج دارید. با آشنایی با این فرایندها ، می توانید محیط اولیه خود را سریعتر و با اطمینان تر تنظیم

 

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

چگونه می توان با کتابخانه (library) درخواست ها در پایتون شروع به کار کرد

نحوه اجرای صفحه گذاری در MySQL با PHP روی اوبونتو 18.04

نحوه تنظیم پلتفرم Eclipse Theia Cloud IDE در CentOS 7

بسته بندی برنامه Laravel 6 برای توسعه با Docker Compose در اوبونتو 18.04

نحوه بهینه سازی درخواست های MySQL با ذخیره سازی ProxySQL در اوبونتو 16.04

نحوه استفاده از Ansible برای نصب و راه اندازی وردپرس با LAMP در اوبونتو 18.04

چگونه می توان پلتفرم کد سرور Cloud IDE را در اوبونتو 18.04 تنظیم کرد (شروع سریع)

چگونه می توان از رول های ansible برای انتزاع محیط زیرساختی خود استفاده کرد

نحوه پیکربندی یک خوشه Galera با MySQL در سرورهای اوبونتو 18.04

نحوه تهیه نسخه پشتیبان و بازیابی یک خوشه Kubernetes در vpsgol با استفاده از Velero

نحوه نصب و استفاده از PostgreSQL در CentOS 7

چگونه می توان پلتفرم Eclipse Theia Cloud IDE را روی اوبونتو 18.4 تنظیم کرد

نحوه استقرار و مدیریت DNS با استفاده از DNSControl در Debian 10

چگونه می توان پلتفرم Cloud IDE کد سرور را روی CentOS 7 تنظیم کرد

نحوه نصب Apache Kafka در Debian 10

نحوه نصب وردپرس با OpenLiteSpeed ​​در اوبونتو 18.04

چگونه پیکربندی SSH Daemon خود را بر روی یک VPS لینوکس تنظیم کنید

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

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

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

مقدمه
لینوکس به دلیل داشتن تعداد زیادی از کاربردهای دستوری مفید در اکثر بخش ها، مشهور است. کاربران ماهر سیستم می توانند بخش اعظم کار خود را با استفاده از ابزارهای داخلی بدون نیاز به نصب نرم افزار اضافی انجام دهند.
در این راهنما ، ما در مورد چگونگی استفاده از ابزار netcat بحث خواهیم کرد. این دستور چند منظوره که اغلب به عنوان یک چاقوی نظامی سوئیسی در بین ابزارهای شبکه نامیده می شود ، می تواند در نظارت ، آزمایش و ارسال اطلاعات از طریق اتصالات شبکه به شما کمک کند.
ما در حال بررسی این موضوع در Ubuntu 12.04 VPS هستیم ، اما netcat تقریباً باید در هر توزیع مدرن لینوکس موجود باشد. Ubuntu با متغیر BSD در netcat ارسال می شود و این همان چیزی است که ما در این راهنما استفاده خواهیم کرد. سایر نسخه ها ممکن است متفاوت عمل کنند یا امکانات دیگری را ارائه دهند.
ترکیب عمومی
به طور پیش فرض ، netcat با ایجاد اتصال TCP به هاستئ از راه دور کار می کند.
ابتدایی ترین روش:
netcat [options] host port
با این کار می توانید TCP را در هاست تعریف شده روی شماره پورت مشخص آغاز کنید. این در واقع عملکردهایی مشابه دستور قدیمی telnet لینوکس دارد. به خاطر داشته باشید که اتصال شما کاملاً غیرقابل رمزگذاری است.
اگر می خواهید به جای شروع اتصال TCP ، یک بسته UDP ارسال کنید ، می توانید از گزینه -u استفاده کنید:
netcat -u host port
شما می توانید با قرار دادن خط فاصله بین اول و آخر، طیف وسیعی از پورت ها را مشخص کنید:
netcat host startport-endport
این به طور کلی با برخی پرچم های اضافی استفاده می شود.
در اکثر سیستم ها ، ما می توانیم از netcat یا nc به صورت یکسان استفاده کنیم. آنها نامهای مستعار برای همین دستور هستند.
نحوه استفاده از Netcat برای اسکن پورت
یکی از رایج ترین کاربردهای netcat به عنوان اسکنر پورت میباشد.
اگرچه احتمالاً netcat پیشرفته ترین ابزار برای این کار نیست (nmap در بیشتر موارد انتخاب بهتری است) ، اما می تواند اسکن های ساده ای را برای شناسایی پورت های باز انجام دهد.
ما این کار را با مشخص کردن طیف وسیعی از پورت ها برای اسکن انجام می دهیم ، همانطور که در بالا انجام دادیم ، یعنی به همراه گزینه -z برای انجام یک اسکن به جای تلاش برای شروع اتصال.
به عنوان مثال ، ما می توانیم با صدور این دستور ، تمام پورت ها را تا 1000 اسکن کنیم:
netcat -z -v domain.com 1-1000
در کنار گزینه -z ، گزینه -v را نیز برای فراخوانی netcat جهت ارائه اطلاعات شفاف تر مشخص کرده ایم.
خروجی به شرح زیر خواهد بود:
خروجی
Nc: اتصال به domain.com پورت 1 (TCP) انجام نشد: اتصال قطع
Nc: اتصال به domain.com پورت 2 (TCP) انجام نشد: اتصال قطع
Nc: اتصال به domain.com پورت 3 (TCP) انجام نشد: اتصال قطع
Nc: اتصال به domain.com پورت 4 (TCP) انجام نشد: اتصال قطع
Nc: اتصال به domain.com پورت 5 (TCP) انجام نشد: اتصال قطع
Nc: اتصال به domain.com پورت 6 (TCP) انجام نشد: اتصال قطع
Nc: اتصال به domain.com پورت 7 (TCP) انجام نشد: اتصال قطع

اتصال به domain.com پورت 22 [tcp / ssh] موفق شد!
همانطور که مشاهده می کنید ، این کار اطلاعات زیادی را در اختیار شما قرار می دهد و برای هر پورت به شما می گوید که آیا یک اسکن موفقیت آمیز بوده یا خیر.
اگر در واقع از یک نام دامنه استفاده می کنید ، این شکلی است که باید استفاده کنید.
با این وجود ، اگر آدرس IP موردنیاز خود را بدانید ، اسکن شما بسیار سریعتر انجام خواهد شد. سپس می توانید از پرچم -n استفاده کنید تا مشخص کنید که نیازی به resolve  آدرس IP با استفاده از DNS نمی باشد:
netcat -z -n -v 198.51.100.0 1-1000
پیام های برگشت یافته در واقع به خطای استاندارد ارسال می شوند (برای اطلاعات بیشتر به مقاله تغییر مسیر I / O مراجعه کنید). ما می توانیم پیام های خطای استاندارد را ارسال کنیم که به ما امکان می دهد نتایج را راحت تر فیلتر کنیم.
ما خطای استاندارد را با استفاده از syntax 2> & 1 bash به خروجی استاندارد هدایت می کنیم. سپس نتایج را با grep فیلتر خواهیم کرد:

netcat -z -n -v 198.51.100.0 1-1000 2>&1 | grep succeeded

خروجی
Connection to 198.51.100.0 22 port [tcp/*] succeeded!

در اینجا ، ما می توانیم ببینیم که تنها پورت باز شده در محدوده 1 تا 1000 روی رایانه از راه دور ، پورت 22 ، یعنی پورت قدیمی SSH است.
چگونه از طریق Netcat ارتباط برقرار کنیم
Netcat محدود به ارسال بسته های TCP و UDP نمی شود. همچنین می تواند به دنبال اتصالات و بسته ها در یک پورت باشد. این امر به ما فرصت می دهد تا دو نمونه از netcat را در یک ارتباط مشتری-سرور مجازی متصل کنیم.
اینکه کدام کامپیوتر سرور مجازی و کدام مشتری است، فقط یک وجه متمایز در تنظیمات اولیه میباشد. پس از برقراری اتصال ، ارتباط دقیقاً در هر دو جهت یکسان است.
در یک دستگاه ، می توانید به netcat بگویید که به یک پورت خاص برای اتصالات گوش دهد. ما می توانیم با تهیه پارامتر -l و انتخاب پورت این کار را انجام دهیم:
netcat -l 4444
با این کار به netcat میگویید که به اتصالات TCP در پورت 4444 گوش دهد. به عنوان یک کاربر معمولی (غیر root) ، شما نمی توانید به خاطر مسئله امنیتی ، هیچ پورت زیر 1000 را باز کنید.
در سرور مجازی دوم ، می توانیم به اولین دستگاه روی شماره پورتی که انتخاب می کنیم متصل شویم. ما این کار را به همان روشی که قبلاً اتصال را برقرار کرده ایم انجام می دهیم:
netcat domain.com 4444
انگار هیچ اتفاقی نیفتاده است. با این حال ، اکنون می توانید پیام های خود را از هر طرف اتصال ارسال کنید و در هر دو طرف دیده می شوند.
پیامی را تایپ کنید و ENTER را فشار دهید. در هر دو صفحه محلی و راه دور ظاهر می شود. این نیز در جهت مخالف کار می کند.
پس از اتمام ارسال پیام ، می توانید CTRL-D را فشار دهید تا اتصال TCP بسته شود.
نحوه ارسال فایل ها از طریق Netcat
با استفاده از مثال قبلی ، می توانیم کارهای مفیدتری را انجام دهیم.
از آنجا که ما در حال برقراری یک اتصال معمولی TCP هستیم ، می توانیم تقریباً هر نوع اطلاعات را از طریق آن ارتباط منتقل کنیم. این فقط به پیام های چت که توسط کاربر تایپ می شوند محدود نمی شود. ما می توانیم از این علم برای تبدیل netcat به یک برنامه انتقال فایل استفاده کنیم.

این بار هم برای گوش دادن به اتصالات ، باید یک انتهای اتصال را انتخاب کنیم. اما، به جای چاپ اطلاعات بر روی صفحه نمایش ، همانطور که در مثال آخر انجام دادیم ، تمام اطلاعات را مستقیماً در یک فایل قرار خواهیم داد:
netcat -l 4444 > received_file
در رایانه دوم ، با تایپ کردن echo “Hello, this is a file” > original_file یک فایل متنی ساده ایجاد کنید
اکنون می توانیم از این فایل به عنوان ورودی برای اتصال netcat در رایانه مورد شنود استفاده کنیم. فایل دقیقاً مثل اینکه ما آن را به صورت تعاملی تایپ کرده ایم ، منتقل می شود:
netcat domain.com 4444 < original_file
در رایانه ای که منتظر اتصال است ، می توانیم ببینیم که اکنون یک فایل جدید داریم با نام “received_file” با محتویات فایلی که در رایانه دیگر تایپ کرده ایم:
cat received_file

خروجی
Hello, this is a file

همانطور که مشاهده می کنید ، با اتصال، می توانیم به راحتی از این اتصال برای انتقال انواع فایل ها استفاده کنیم.
به عنوان مثال ، می توانیم با ایجاد یک تاربال بدون نام کل محتوای دایرکتوری را منتقل کنیم ، آن را به سیستم از راه دور انتقال داده و در دایرکتوری راه دور باز کنیم.
در پایان دریافت ، می توانیم فایلی را انتظار داشته باشیم که باید با تایپ متن زیر آنزیپ و اکسترکت شود:
netcat -l 4444 | tar xzvf –

خط پایان (-) به این معنی است که تار در ورودی استاندارد کار می کند ، که هنگام ایجاد اتصال از netcat در سراسر شبکه منتقل می شود.
در سمتی که میخواهیم محتوی دایرکتوری را انتقال دهیم ، می توانیم آنها را درون یک تاربال جمع کرده و سپس آنها را از طریق netcat به رایانه راه دور ارسال کنیم:
tar -czf – * | netcat domain.com 4444
این بار ، dash در دستور tar به معنی زیپ کردن محتویات فهرست فعلی (همانطور که توسط * wildcard مشخص شده است) می باشد ، و نتیجه را به خروجی استاندارد می نویسد.
سپس این مستقیماً به اتصال TCP نوشته می شود ، که در انتهای دیگر دریافت می شود و در فهرست فعلی رایانه از راه دور فشرده می شود.
این فقط یک نمونه از انتقال داده های پیچیده تر از یک کامپیوتر به کامپیوتر دیگر است. ایده مشترک دیگر استفاده از دستور dd برای تصویربرداری از دیسک از یک طرف و انتقال آن به کامپیوتر از راه دور است. ما این مطلب را در اینجا پوشش نمی دهیم.
نحوه استفاده از Netcat به عنوان یک وب سرور ساده
ما به منظور برقراری ارتباط و انتقال فایل ها ، netcat را برای گوش دادن به اتصالات پیکربندی کرده ایم. ما می توانیم از همین مفهوم برای عملکرد netcat به عنوان یک سرور وب بسیار ساده استفاده کنیم. این می تواند برای تست صفحاتی که ایجاد می کنید مفید باشد.
ابتدا ، بیایید یک فایل HTML ساده را در یک سرور مجازی بسازیم:
nano index.html
در اینجا HTML ساده ای وجود دارد که می توانید در فایل خود استفاده کنید:
index.html
<html>
<head>
<title>Test Page</title>
</head>
<body>
<h1>Level 1 header</h1>
<h2>Subheading</h2>
<p>Normal text here</p>
</body>
</html>

ذخیره کنید و فایل را ببندید.
بدون امتیازات کاربر اصلی ، شما نمی توانید این فایل را در پورت پیش فرض وب ، پورت 80 ارائه دهید. ما می توانیم پورت 8888 را به عنوان یک کاربر معمولی انتخاب کنیم.
اگر فقط می خواهید یک بار به این صفحه سرویس دهید تا نحوه ارائه آن را بررسی کنید ، می توانید دستور زیر را اجرا کنید:
printf ‘HTTP/1.1 200 OK\n\n%s’ “$(cat index.html)” | netcat -l 8888
اکنون در مرورگر خود با مراجعه به آدرس زیر می توانید به محتوا دسترسی پیدا کنید:
http: // server_IP: 8888
این آدرس صفحه را باز می کند ، و سپس اتصال netcat بسته می شود. اگر سعی کنید صفحه را ریفرش کنید ، از دست میرود.
می توانیم با رپ کردن آخرین دستور در یک حلقه بی نهایت مانند زیر، کاری کنیم ne0tcat صفحه را به طور نامحدود ارائه دهد:

while true; do printf ‘HTTP/1.1 200 OK\n\n%s’ “$(cat index.html)” | netcat -l 8888; done
این کار باعث میشود بعد از بسته شدن اولین اتصال ، همچنان به دریافت اتصالات ادامه دهید.
با تایپ کردن CTRL-C روی سرور می توانیم حلقه را متوقف کنیم.
این کار به شما امکان می دهد ببینید که چگونه یک صفحه در مرورگر ارائه می شود ، اما عملکرد بیشتری را ارائه نمی دهد. شما هرگز نباید از این امکان برای سرویس دادن به وب سایتهای واقعی استفاده کنید. هیچ امنیتی وجود ندارد و موارد ساده مانند پیوندها حتی به درستی کار نمی کنند.
نتیجه
اکنون باید فهمیده باشید که Netcat برای چه مواردی قابل استفاده است. درواقع یک ابزار همه کاره است که می تواند برای تشخیص مشکلات مفید باشد و تأیید کند که عملکرد سطح پایه به طور صحیح با اتصالات TCP / UDP کار می کند یا خیر.
با استفاده از netcat ، شما می توانید برای تعامل سریع بین کامپیوترهای مختلف ارتباط برقرار کنید. Netcat با در نظر گرفتن پیچیدگی در ایجاد اتصالات ، سعی در ایجاد تعامل شبکه بین رایانه ها دارد.

 

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

چگونه می توان با کتابخانه (library) درخواست ها در پایتون شروع به کار کرد

نحوه اجرای صفحه گذاری در MySQL با PHP روی اوبونتو 18.04

نحوه تنظیم پلتفرم Eclipse Theia Cloud IDE در CentOS 7

بسته بندی برنامه Laravel 6 برای توسعه با Docker Compose در اوبونتو 18.04

نحوه بهینه سازی درخواست های MySQL با ذخیره سازی ProxySQL در اوبونتو 16.04

نحوه استفاده از Ansible برای نصب و راه اندازی وردپرس با LAMP در اوبونتو 18.04

چگونه می توان پلتفرم کد سرور Cloud IDE را در اوبونتو 18.04 تنظیم کرد (شروع سریع)

چگونه می توان از رول های ansible برای انتزاع محیط زیرساختی خود استفاده کرد

نحوه پیکربندی یک خوشه Galera با MySQL در سرورهای اوبونتو 18.04

نحوه تهیه نسخه پشتیبان و بازیابی یک خوشه Kubernetes در vpsgol با استفاده از Velero

نحوه نصب و استفاده از PostgreSQL در CentOS 7

چگونه می توان پلتفرم Eclipse Theia Cloud IDE را روی اوبونتو 18.4 تنظیم کرد

نحوه استقرار و مدیریت DNS با استفاده از DNSControl در Debian 10

چگونه می توان پلتفرم Cloud IDE کد سرور را روی CentOS 7 تنظیم کرد

نحوه نصب Apache Kafka در Debian 10

نحوه نصب وردپرس با OpenLiteSpeed ​​در اوبونتو 18.04

چگونه پیکربندی SSH Daemon خود را بر روی یک VPS لینوکس تنظیم کنید

 

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

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

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

درباره OctoberCMS
OctoberCMS یک منبع آزاد نسبتاً جدید CMS است که بر اساس چارچوب PHP Laravel میباشد. دارای چندین ویژگی جذاب – به ویژه برای توسعه دهندگان – است که می توانید با مراجعه به این صفحه بررسی کنید.
در این آموزش قصد داریم OctoberCMS را روی یک VPS که اوبونتو 14.04 را اجرا می کند ، نصب کنیم. دو راه برای نصب OctoberCMS وجود دارد: از طریق wizard  و از طریق لاین دستوری. ما می خواهیم با استفاده از روش دوم آن را نصب کنیم.
الزامات
برای نصب OctoberCMS ، باید چند مورد را در سیستم رعایت کنید. شما بایدLAMP (لینوکس ، Apache ، MySQP ، PHP) را نصب داشته باشید ، اما Nginx و Lighttpd نیز سرورهای قابل قبول وب هستند. نسخه PHP باید 5.4+ با محدودیت safe_mode غیرفعال باشد. اوبونتو 14.04 با نسخه ای از PHP 5.5 ارائه می شود ، بنابراین نباید مشکلی در این زمینه داشته باشید.
اگر قبلاً آن را تنظیم نکردید ، می توانید این آموزش عالی را در مورد نحوه نصب LAMP در اوبونتو 14.04 بخوانید.
از آنجایی که ما از Apache به عنوان وب سرور استفاده می کنیم و October می تواند از بازنویسی URL استفاده کند ، ما همچنین باید مطمئن شویم که Apache واقعاً اجازه خواهد داد که این کار انجام شود. اگر قبلاً مراحل زیر را انجام نداده اید ، اکنون باید آنها را انجام دهید.
فایل هاست مجازی را که مسئولیت پوشه ای است که October در آن نصب خواهد شد را دارد ویرایش کنید (برای ما ریشه پیش فرض Apache، /var/www/html است):
sudo nano /etc/apache2/sites-available/000-default.conf
در بلوک موجود در شروع:
<VirtualHost *: 80>
بلوک زیر را اضافه کنید:
<Directory “/var/www/html”>
AllowOverride All
</Directory>

مورد بعدی که باید انجام دهیم فعال کردن mod_rewrite است (اگر آن را فعال نکرده اید). برای بررسی اینکه آیا قبلاً فعال شده است ، از دستور زیر استفاده کنید:

apache2ctl -M
اگر “rewrite_module” را در لیست می بینید ، فعال است. اگر اینطور نیست ، برای فعال کردن ماژول از دستور زیر استفاده کنید:
a2enmod rewrite

OctoberCMS همچنین به نصب افزونه cURL نیاز دارد ، بنابراین دستور زیر را برای انجام این کار اجرا کنید:
sudo apt-get install curl php5-curl

سپس باید سرور Apache را مجدداً راه اندازی کنید تا تغییرات به مرحله اجرا درآیند:
sudo service apache2 restart

نصب و راه اندازی
برای نصب از طریق خط فرمان ، به Composer احتیاج خواهیم داشت. اگر نمی دانید چگونه با آن کار کنید ، یا هنوز راه اندازی نکرده اید ، از این لینک آموزش استفاده کنید. علاوه بر این ، به Git نصب شده روی سیستم نیاز خواهید داشت. اگر قبلاً این کار را نکرده اید ، پیش بروید و این دستور را اجرا کنید:
sudo apt-get install git-core

اکنون می توانیم نصب را ادامه دهیم. در بالا گفتیم که ما October را در وب روت Apache ((var / www / html) نصب خواهیم کرد. بنابراین ابتدا تمام فایل های موجود در آن پوشه را حذف کنید. این البته تنها در صورتی ممکن است که OctoberCMS تنها برنامه مورد نظر در پوشه وب روت سرور مجازی باشد. بعد از اطمینان از داشتن فایل Composer.phar در پوشه / var / www و حرکت به سمت آن ، دستور زیر را اجرا کنید:
php composer.phar create-project october/october html dev-master

کاری که انجام می دهد شبیه سازی October از مخزن و ایجاد یک پروژه جدید در پوشه html/ میباشد
ستاپ
مورد بعدی که باید انجام دهیم اصلاح چند فایل است. فایل app / config / app.php را باز کنید و جایی که این خط را پیدا می کنید:
‘url’ => ‘http://yourwebsite.com’

مسیر را به سایت خود تغییر دهید. بیایید آن را http://example.com بنامیم (برای ارجاع بعدی در این راهنما).
علاوه بر این ، شما همچنین باید این خط را تغییر دهید:

‘key’ => ‘UNIQUE_ENCRYPTION_KEY’

به منظور انتخاب کلید رمزگذاری ، October استفاده خواهد شد.
به صورت اختیاری ، ویرایش فایل app / config / cms.php به شما امکان می دهد تم سایت را تغییر دهید ، کدام ماژول ها بارگذاری شوند، و حتی URI را سفارشی کنید.
دیتابایس
در مرحله بعدی ، بیایید برای October یک دیتابیس ایجاد کنیم. برای راه اندازی پایگاه داده MySQL شما را طی مراحل مختلفی راهنمایی خواهیم کرد ، اما برای اطلاعات بیشتر یک آموزش فوق العاده نیز در این لینک وجود دارد.
اولین کاری که شما باید انجام دهید این است که از ترمینال خود وارد mysql شوید (می توانید از PHPMyAdmin نیز استفاده کنید ، اما من به شما نشان می دهم که چگونه این کار را از خط دستور انجام دهید)
mysql -u username -ppassword

از آنجا ، دستور زیر را برای ایجاد دیتابیس با نام October اجرا کنید:
create database october;

مطمئناً اگر می خواهید نام آن را به چیز دیگری تغییر دهید ممکن است. در مرحله بعد ، فایل app / config / database.php را ویرایش کنید و در زیر بلوک اتصال MySQL ، اعتبارنامه پایگاه داده خود را در صورت لزوم مشخص کنید. درنهایت ، زمان اجرای دستور کنسولی است که دیتابیس October را راه اندازی می کند:
php artisan october:up

اطمینان حاصل کنید که این دستور را از داخل پوشه root Octoberاجرا کرده و در صورت دریافت پیام زیر:
Mcrypt PHP extension required
دستور زیر را برای نصب آن اجرا کنید:
sudo apt-get install php5-mcrypt

سپس باید این افزونه را به صورت دستی فعال کنید. فایل php.ini را ویرایش کنید:
vi /etc/php5/apache2/php.ini
و در داخل خط زیر:
extension=mcrypt.so

سپس به / etc / php5 / apache2 بروید و اگر پوشه conf.d را در آنجا ندارید ، یکی ایجاد کنید:
sudo mkdir conf.d

و در داخل آن پوشه فایلی به نام mcrypt.ini با محتوای زیر در آن ایجاد کنید:
extension=mcrypt.so
سپس با اجرای این دستور ، پیوندی بین آن فایل و ماژول های PHP موجود ایجاد کنید:
sudo ln -s /etc/php5/apache2/conf.d/mcrypt.ini /etc/php5/mods-available

و ماژول را فعال کنید:
sudo php5enmod mcrypt

با راه اندازی مجدد Apache:
sudo service apache2 restart

ایجاد پوشه conf.d فقط درصورتی ضروری است که با فایل mcrypt.ini موجود نباشد (باید به پوشه ماژول های موجود لینک دهید). اگر در حال حاضر وجود دارد ، از این مرحله عبور کنید و مستقیماً لینک را اجرا کنید.
و اکنون می توانید دستور php artisan october:up را اجرا کنید تا پایگاه داده را راه اندازی کنید که باید موفق باشد.
مجوزها
برای اجرای OctoberCMS ، برخی از پوشه ها باید توسط وب سرور قابل نوشتن باشند. بنابراین ، مالکیت آنها را به گروه www-data که شامل کاربر www-data (Apache) است، تغییر میدهیم و کاری می کنیم تا این گروه بتواند در این پوشه ها بنویسد.
sudo chown -R root:www-data app/storage
sudo chown -R root:www-data themes
sudo chown -R root:www-data uploads

sudo chmod -R 775 app/storage/
sudo chmod -R 775 themes
sudo chmod -R 775 uploads

حتما این دستورات را از درون پوشه اصلی OctoberCMS  اجرا کنید و به خاطر داشته باشید که با این دستور ما صاحب فایل ها را کاربر root قرار میدهیم. اگر از کاربر دیگری استفاده می کنید ، فقط نام کاربری او را جایگزین کنید.
اکنون می توانید به http://example.com بروید و در آنجا باید نصب جدید برند OctoberCMS را ببینید. برای ورود به سیستم پشتیبانی شده در http://example.com/backend (به صورت پیش فرض) می توانید از نام کاربری admin و رمز عبور admin استفاده کنید.

 

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

چگونه می توان با کتابخانه (library) درخواست ها در پایتون شروع به کار کرد

نحوه اجرای صفحه گذاری در MySQL با PHP روی اوبونتو 18.04

نحوه تنظیم پلتفرم Eclipse Theia Cloud IDE در CentOS 7

بسته بندی برنامه Laravel 6 برای توسعه با Docker Compose در اوبونتو 18.04

نحوه بهینه سازی درخواست های MySQL با ذخیره سازی ProxySQL در اوبونتو 16.04

نحوه استفاده از Ansible برای نصب و راه اندازی وردپرس با LAMP در اوبونتو 18.04

چگونه می توان پلتفرم کد سرور Cloud IDE را در اوبونتو 18.04 تنظیم کرد (شروع سریع)

چگونه می توان از رول های ansible برای انتزاع محیط زیرساختی خود استفاده کرد

نحوه پیکربندی یک خوشه Galera با MySQL در سرورهای اوبونتو 18.04

نحوه تهیه نسخه پشتیبان و بازیابی یک خوشه Kubernetes در vpsgol با استفاده از Velero

نحوه نصب و استفاده از PostgreSQL در CentOS 7

چگونه می توان پلتفرم Eclipse Theia Cloud IDE را روی اوبونتو 18.4 تنظیم کرد

نحوه استقرار و مدیریت DNS با استفاده از DNSControl در Debian 10

چگونه می توان پلتفرم Cloud IDE کد سرور را روی CentOS 7 تنظیم کرد

نحوه نصب Apache Kafka در Debian 10

نحوه نصب وردپرس با OpenLiteSpeed ​​در اوبونتو 18.04

چگونه پیکربندی SSH Daemon خود را بر روی یک VPS لینوکس تنظیم کنید

 

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

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

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

مقدمه
یکی از اساسی ترین کارهایی که باید بدانید چگونه باید روی یک سرور مجازی تازه لینوکس انجام دهید اضافه کردن و حذف کاربران است. وقتی یک سرور جدید ایجاد می کنید، به طور پیش فرض فقط حساب root به شما داده می شود.
در حالی که این قدرت و انعطاف پذیری زیادی به شما می دهد ، اما همچنین خطرناک است و می تواند مخرب باشد. تقریباً همیشه بهتر است یک کاربر اضافی و بدون مزیت های اصلی برای انجام کارهای معمول داشته باشید. همچنین باید برای سایر کاربرانی که ممکن است در سیستم خود داشته باشید ، حساب های دیگری ایجاد کنید. هر کاربر باید حساب متفاوتی داشته باشد.
همچنان می توانید در زمان نیاز از طریق مکانیسمی بنام sudo امتیازات مدیر اجرایی را بدست آورید. در این راهنما نحوه ایجاد حساب کاربری ، اختصاص امتیازات sudo و حذف کاربران را پوشش خواهیم داد.
نحوه اضافه کردن کاربر
اگر به عنوان کاربر اصلی وارد سیستم شده اید ، می توانید در هر زمان با تایپ کردن دستور زیر کاربر جدیدی ایجاد کنید:
adduser newuser

اگر به عنوان کاربر غیر root وارد شده اید که امتیازات sudo به او داده شده است ، همانطور که در راهنمای راه اندازی سرور مجازی اولیه نشان داده شد، می توانید با تایپ کردن دستور زیر کاربر جدیدی وارد کنید:
sudo adduser newuser

در هر صورت ، یک سری سؤال از شما پرسیده خواهد شد. فرآیند به این گونه خواهد بود:
رمزعبور را برای کاربر جدید اختصاص داده و تأیید کنید.
اطلاعات اضافی در مورد کاربر جدید وارد کنید. اگر مایل به استفاده از این فیلدها نیستید، این مسئله با زدن “ENTER” کاملاً اختیاری است.
در آخر ، از شما خواسته می شود که صحت اطلاعاتی را که ارائه کردید تأیید کنید. برای ادامه “Y” را تایپ کنید.
کاربر جدید شما اکنون برای استفاده آماده است! اکنون می توانید با استفاده از رمز عبوری که تنظیم کرده اید وارد شوید.
توجه: در صورت نیاز به کاربر جدید خود برای دسترسی به عملکردهای اداری ، ادامه مطلب را بخوانید.
نحوه اعطای امتیازات Sudo به کاربر
اگر کاربر جدید شما نیاز به اجرای دستورات دارای امتیازات root (کاربر اصلی) را داشته باشد ، باید به کاربر جدید دسترسی به sudo بدهید.
ما می توانیم این کار را با استفاده از دستور visudo انجام دهیم که فایل پیکربندی مناسب را در ویرایشگر شما باز می کند. این کار امن ترین روش برای ایجاد این تغییرات است.
اگر هم اکنون به عنوان کاربر اصلی وارد سیستم شده اید ، تایپ کنید:
visudo
اگر با استفاده از یک کاربر غیر root با امتیازات sudo وارد سیستم شده اید ، تایپ کنید:
sudo visudo
خطی را که به صورت زیر است جستجو کنید:
root ALL=(ALL:ALL) ALL

در زیر این خط ، فرمتی را که در اینجا می بینید کپی کنید ، فقط کلمه “root” را تغییر دهید تا کاربر جدید را که می خواهید امتیازات sudo به او بدهید ، عوض کنید.
root ALL=(ALL:ALL) ALL
newuser ALL=(ALL:ALL) ALL

شما باید برای هر کاربری که لازم است امتیازات کاملی را به او اختصاص دهید، یک خط جدید مانند این اضافه کنید. پس از اتمام ، می توانید فایل را با زدنCTRL-X و سپس “Y” ذخیره کرده و ببندید و “ENTER” را بزنید تا تأیید شود.
اکنون ، کاربر جدید شما قادر به اجرای دستورات با امتیازات کاربر اصلی میباشد.
با ورود به عنوان کاربر جدید ، می توانید با تایپ کردن دستورات به صورت عادی ، دستورات را به عنوان کاربر معمولی خود اجرا کنید:
some_command

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

از شما خواسته می شود رمز ورود حساب کاربری معمولی را که به عنوان آن وارد سیستم شده اید وارد کنید.
چگونه کاربر را حذف کنیم
در صورتی که دیگر نیازی به کاربر ندارید ، بهتر است اکانت قدیمی را حذف کنید.
شما می توانید بدون حذف هیچ یک از فایل ها، خود کاربر را حذف کنید، آن هم با تایپ کردن این دستور به عنوان root:
deluser newuser
اگر به عنوان کاربر غیر اصلی دیگری با امتیازات sudo وارد سیستم شده اید ، می توانید به جای آن تایپ کنید:

sudo deluser newuser
در عوض ، اگر می خواهید هنگام حذف کاربر دیرکتوری هوم کاربر نیز حذف شود ، می توانید دستور زیر را به عنوان root صادر کنید:
deluser –remove-home newuser

اگر این کار را به عنوان یک کاربر غیر root و دارای امتیازات sudo اجرا می کنید ، به جای آن بنویسید:
sudo deluser –remove-home newuser

اگر قبلاً امتیازهای sudo را برای کاربر حذف شده تنظیم کرده بودید ، بهتر است دوباره با تایپ visudo
خط مربوطه را حذف کنید:
یا اگر کاربر غیر ریشه ای با امتیازات sudo دارید از این استفاده کنید:
sudo visudo
root ALL=(ALL:ALL) ALL
newuser ALL=(ALL:ALL) ALL # DELETE THIS LINE

این کار باعث می شود تا از اعطای امتیازات sudo به طور تصادفی به کاربر جدید ایجاد شده با همان نام جلوگیری شود.
نتیجه
اکنون باید به خوبی چگونگی افزودن و حذف کاربران از سیستم Ubuntu 14.04 را آموخته باشید. مدیریت کارآمد کاربر به شما امکان می دهد تا کاربران را جدا کنید و به آنها فقط دسترسی دهید که کارهای مورد نیاز خود را انجام دهند.
برای اطلاعات بیشتر در مورد نحوه پیکربندی sudo ، راهنمای ما در مورد نحوه ویرایش فایل sudoers را در اینجا بررسی کنید.

 

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

چگونه می توان با کتابخانه (library) درخواست ها در پایتون شروع به کار کرد

نحوه اجرای صفحه گذاری در MySQL با PHP روی اوبونتو 18.04

نحوه تنظیم پلتفرم Eclipse Theia Cloud IDE در CentOS 7

بسته بندی برنامه Laravel 6 برای توسعه با Docker Compose در اوبونتو 18.04

نحوه بهینه سازی درخواست های MySQL با ذخیره سازی ProxySQL در اوبونتو 16.04

نحوه استفاده از Ansible برای نصب و راه اندازی وردپرس با LAMP در اوبونتو 18.04

چگونه می توان پلتفرم کد سرور Cloud IDE را در اوبونتو 18.04 تنظیم کرد (شروع سریع)

چگونه می توان از رول های ansible برای انتزاع محیط زیرساختی خود استفاده کرد

نحوه پیکربندی یک خوشه Galera با MySQL در سرورهای اوبونتو 18.04

نحوه تهیه نسخه پشتیبان و بازیابی یک خوشه Kubernetes در vpsgol با استفاده از Velero

نحوه نصب و استفاده از PostgreSQL در CentOS 7

چگونه می توان پلتفرم Eclipse Theia Cloud IDE را روی اوبونتو 18.4 تنظیم کرد

نحوه استقرار و مدیریت DNS با استفاده از DNSControl در Debian 10

چگونه می توان پلتفرم Cloud IDE کد سرور را روی CentOS 7 تنظیم کرد

نحوه نصب Apache Kafka در Debian 10

نحوه نصب وردپرس با OpenLiteSpeed ​​در اوبونتو 18.04

چگونه پیکربندی SSH Daemon خود را بر روی یک VPS لینوکس تنظیم کنید

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

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

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

مقدمه
جاوا یک فناوری برنامه نویسی است که در ابتدا توسط Sun Microsystems ایجاد شد و بعدا دست اوراکل قرار گرفت. Oracle Java یک اجرای اختصاصی برای جاوا است که دانلود و استفاده مجدد از آن برای استفاده تجاری رایگان است ، اما توزیع مجدد رایگان نیست ، بنابراین در نسخه رسمی گنجانده نشده است.
دلایل زیادی وجود دارد که بخواهید Oracle Java را بر روی OpenJDK نصب کنید. در این آموزش ، تفاوتهای بین اجرای فوق را مورد بحث قرار نمی دهیم.
فرضیات
این آموزش فرض می کند که شما یک حساب کاربری و همچنین یک Droplet که Debian 7 یا Ubuntu 12.04 یا بالاتر را اجرا می کند ، دارید. برای تکمیل آموزش به امتیازات اصلی (از طریق سودو) نیاز خواهید داشت.
لازم است بدانید که سیستم عامل 32 بیتی را اجرا میکنید یا 64 بیتی:
uname -m

x86_64: 64 bit kernel
i686: 32 bit kernel

دانلود Oracle Java JDK
با استفاده از مرورگر وب خود ، به وب سایت Oracle Java SE (نسخه استاندارد) بروید و انتخاب کنید که کدام نسخه را می خواهید نصب کنید:
JDK: کیت توسعه جاوا. شامل یک ابزارJRE برای توسعه، اشکال زدایی و نظارت بر برنامه های جاوا.
سرور JRE : محیط اجرای جاوا. برای استقرار برنامه های جاوا بر روی سرورها. شامل ابزارهایی برای نظارت بر JVM و ابزارهایی که معمولاً برای برنامه های سرور مجازی مورد نیاز است.
در این آموزش بیت های 8 x64 کیت گسترش JDK Java SE  را نصب خواهیم کرد. گواهی نامه را بپذیرید و لینک دانلود را در کلیپ بورد خود کپی کنید. به یاد داشته باشید tar.gz مناسب (64 یا 32 بیت) را انتخاب کنید. برای دانلود بایگانی در سرور خود از wget استفاده کنید:
wget –header “Cookie: oraclelicense=accept-securebackup-cookie” http://download.oracle.com/otn-pub/java/jdk/8u5-b13/jdk-8u5-linux-x64.tar.gz

اوراکل بدون قبول مجوز آنها اجازه دانلود نمی دهد ، بنابراین ما نیاز به تغییر عنوان درخواست خود داریم. از طرف دیگر ، فقط می توانید فایل فشرده را با استفاده از مرورگر خود دانلود کرده و با استفاده از یک سرویس دهنده SFTP / FTP ، آن را به صورت دستی بارگذاری کنید.
همیشه آخرین نسخه را از وب سایت Oracle دریافت کنید و دستورات این آموزش را مطابق با فایل دانلود شده خود تغییر دهید.
نصب Oracle JDK
در این بخش به امتیازات سودو احتیاج خواهید داشت:
sudo su

دایرکتوری / opt برای کلیه نرم افزارها و بسته های الحاقی که جزئی از نصب پیش فرض نیستند محفوظ است. برای نصب JDK خود یک دایرکتوری ایجاد کنید:
mkdir /opt/jdk

و جاوا را در فهرست / opt / jdk اکسترکت کنید:
tar -zxf jdk-8u5-linux-x64.tar.gz -C /opt/jdk

تأیید کنید که پرونده در فهرست / opt / jdk اکسترکت شده است.
ls /opt/jdk

Oracle JDK را به عنوان JVM پیش فرض تنظیم کنید
برای ما ، java قابل اجرا در/opt/jdk/jdk1.8.0_05/bin/java قرار دارد. برای تنظیم آن به عنوان JVM پیش فرض در دستگاه در حال کار:
update-alternatives –install /usr/bin/java java /opt/jdk/jdk1.8.0_05/bin/java 100
و

update-alternatives –install /usr/bin/javac javac /opt/jdk/jdk1.8.0_05/bin/javac 100

نصب خود را تأیید کنید
تأیید کنید که جاوا با موفقیت پیکربندی شده است:
update-alternatives –display java

و

update-alternatives –display javac

خروجی باید به این شکل باشد:
java – auto mode
link currently points to /opt/jdk/jdk1.8.0_05/bin/java
/opt/jdk/jdk1.8.0_05/bin/java – priority 100
Current ‘best’ version is ‘/opt/jdk/jdk1.8.0_05/bin/java’.

javac – auto mode
link currently points to /opt/jdk/jdk1.8.0_05/bin/javac
/opt/jdk/jdk1.8.0_05/bin/javac – priority 100
Current ‘best’ version is ‘/opt/jdk/jdk1.8.0_05/bin/javac’.

راه آسان دیگر برای بررسی نصب شما:
java -version

خروجی باید به این شکل باشد:
java version “1.8.0_05”
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)

(اختیاری) به روز رسانی جاوا
برای به روزرسانی جاوا ، به سادگی یک نسخه به روز شده را از وب سایت Oracle دانلود کنید و آن را در زیر فهرست / opt / jdk اکسترکت کنید ، سپس آن را به عنوان JVM پیش فرض با شماره اولویت بالاتر (در این حالت 110) تنظیم کنید:
update-alternatives –install /usr/bin/java java /opt/jdk/jdk.new.version/bin/java 110
update-alternatives –install /usr/bin/javac javac /opt/jdk/jdk.new.version/bin/javac 110

می توانید نسخه قدیمی را نگه دارید یا آن را حذف کنید:

update-alternatives –remove java /opt/jdk/jdk.old.version/bin/java
update-alternatives –remove javac /opt/jdk/jdk.old.version/bin/javac

rm -rf /opt/jdk/jdk.old.version
این روش نصب مستند شده در بالا بر روی سرور Debian تأیید شده است ، اما می تواند برای یک سرور اوبونتو نیز اعمال شود. اگر بعد از طی کردن تمام مراحل با مشکلی روبرو شدید ، لطفاً نظر خود را در زیر ارسال کنید.

 

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

چگونه می توان با کتابخانه (library) درخواست ها در پایتون شروع به کار کرد

نحوه اجرای صفحه گذاری در MySQL با PHP روی اوبونتو 18.04

نحوه تنظیم پلتفرم Eclipse Theia Cloud IDE در CentOS 7

بسته بندی برنامه Laravel 6 برای توسعه با Docker Compose در اوبونتو 18.04

نحوه بهینه سازی درخواست های MySQL با ذخیره سازی ProxySQL در اوبونتو 16.04

نحوه استفاده از Ansible برای نصب و راه اندازی وردپرس با LAMP در اوبونتو 18.04

چگونه می توان پلتفرم کد سرور Cloud IDE را در اوبونتو 18.04 تنظیم کرد (شروع سریع)

چگونه می توان از رول های ansible برای انتزاع محیط زیرساختی خود استفاده کرد

نحوه پیکربندی یک خوشه Galera با MySQL در سرورهای اوبونتو 18.04

نحوه تهیه نسخه پشتیبان و بازیابی یک خوشه Kubernetes در vpsgol با استفاده از Velero

نحوه نصب و استفاده از PostgreSQL در CentOS 7

چگونه می توان پلتفرم Eclipse Theia Cloud IDE را روی اوبونتو 18.4 تنظیم کرد

نحوه استقرار و مدیریت DNS با استفاده از DNSControl در Debian 10

چگونه می توان پلتفرم Cloud IDE کد سرور را روی CentOS 7 تنظیم کرد

نحوه نصب Apache Kafka در Debian 10

نحوه نصب وردپرس با OpenLiteSpeed ​​در اوبونتو 18.04

چگونه پیکربندی SSH Daemon خود را بر روی یک VPS لینوکس تنظیم کنید

 

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

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

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

مقدمه
یکی از قابلیت هایی که تقریباً همه سرورها باید از آن برخوردار باشند ، قدرت ارسال و دریافت اطلاعات به دستگاههای دیگر شبکه است. اگرچه مردم به طور کلی سرورها را به عنوان تأمین کننده محتوا در نظر می گیرند (به هر حال از اسم آن نیز مشخص است) ،اما آنها نیز به دلایل زیادی باید توانایی دستیابی به محتوا را داشته باشند.
در حالی که اکثر بسته های لینوکس از طریق منشا توزیع آنها موجود است و با ابزارهای استاندارد مدیریت بسته قابل دانلود میباشد ، سایر اطلاعات و فایل ها باید از مکانیزم های دیگر استفاده کنند. در این راهنما ، ما در مورد برخی از متداول ترین روش های دریافت فایل ها و داده ها روی سرور لینوکس شما بحث خواهیم کرد.
ما عمدتاً از نمونه ای از اوبونتو 14.04 VPS برای اجرای این لیست استفاده خواهیم کرد ، اما شما تقریباً می توانید هر یک از این نرم افزارها را در سایر دایرکتوری ها و نسخه های موجود نصب و استفاده کنید.
دریافت داده ها و نرم افزار از منشا
شاید متداول ترین روش دریافت بسته ها و نرم افزارها روی سرور مجازی شما استفاده از مبدا باشد. مبداها در این زمینه در واقع می توانند به موارد نسبتاً متفاوتی اشاره کنند.
این ممکن است به مجموعه های بزرگی از نرم افزارهای موجود اشاره داشته باشد. که شامل نرم افزار کامپایل شده و آماده نصب است که بطور کلی آزمایش و پیکربندی شده است تا برای توزیع استفاده شود. مبداهای اصلی نیز وجود دارد که شامل کلیه فایل های لازم برای ساخت یک پروژه نرم افزاری خاص است.
ما در این بخش هر دو نوع را مرور خواهیم کرد.
نصب نرم افزار از یک منشا توزیع منظم
روش استاندارد نصب نرم افزار برای سرور لینوکس استفاده از package manager است. package manager برای پیوستن به مجموعه ای از سرورهای پیکربندی شده که حاوی منشایی از بسته هایی است که در سیستم های سازگار package و مورد آزمایش قرار گرفته اند پیکربندی شده است.

توزیع های لینوکس برای انجام این هدف از قالب های مختلف بسته بندی و package manager استفاده می کنند.
محبوب ترین قالب های package فرمت بسته بندی .deb است که توسط توزیع های Debian و Ubuntu و مشتقات آنها و فرمت بسته بندی .rpm که بطور سنتی توسط RedHat ، CentOS و Fedora و توزیع های مرتبط استفاده می شود ، مورد استفاده قرار می گیرد. برخی سیستم ها از قالب های مختلفpackage استفاده می کنند. به عنوان مثال Arch Linux ، از بسته های ساده .tar.xz استفاده می کند.

به طور کلی ، توزیع هایی با استفاده از بسته های .deb تمایل دارند از مجموعه ابزارهای package manager استفاده کنند. با کلیک کردن روی این لینک می توانید در مورد نحوه استفاده از apt برای package manager.deb اطلاعات کسب کنید.
به همین ترتیب ، آن توزیع ها با استفاده از قالب بسته .rpm معمولاً با package manager yum اجرا میشوند. می توانید نحوه استفاده از yum را از منابع متنوعی بیاموزید که چند نمونه از آنها در این لینک ها موجود است.
از آنجایی که Arch Linux این الگوها را دنبال نمی کند و از قالب package خود استفاده می کند ، برای مدیریت این قابلیت نیز package manager خود را با نام Pacman توسعه داده است. Arch wiki دارای پیجی عالی در مورد نحوه استفاده از pacman است که می توانید در اینجا بیابید.
نحوه استفاده از بایگانی بسته های شخصی
یکی از روشهای دستیابی به نرم افزاری که برای دستگاه های اوبونتو در دسترس است استفاده از آرشیو بسته های شخصی یا PPA است. اگرچه این روش دریافت نرم افزار به اکثر توزیع ها مربوط نیست ، اما قابلیت انعطاف پذیری را برای سرورهای اوبونتو فراهم می کند.
PPA در واقع مبدایی است که معمولاً روی یک یا چند بسته خاص متمرکز است که توسط شخص یا تیمی خارج از کانالهای رسمی اوبونتو نگهداری می شود. این به شما امکان می دهد تا از PPA به عنوان منبع جداگانه ای برای package manager خود استفاده کنید ، و نرم افزار ساخته شده و ذخیره شده در آنجا برای نصب یکپارچه به همراه سایر بسته های شما در دسترس خواهد بود.
همچنین مزایای بارزی دارد. می توانید نسخه های جدیدتری از نرم افزار را بین نسخه های رسمی اوبونتو دریافت کنید، که به طور معمول نسخه های قدیمی بیشتر بسته ها را به مدت 6 ماه به طور همزمان در اختیار شما قرار میدهد. همچنین به شما این امکان را می دهند که به راحتی به نرم افزاری دسترسی پیدا کنید که به طور رسمی توسط تیم اوبونتو package نشده باشد ، به شرطی که یک گروه مستقل برای تهیه بسته ها از آن استفاده کرده باشد.
بزرگترین مزیت نسبت به کامپایل از منبع این است که این بسته ها از طریق ابزارهای package معمولی مدیریت می شوند. این بدان معناست که آنها می توانند به طور مرتب به روزرسانی دریافت کرده و به اکوسیستم عمومی بسته وصل شوند ، که به آنها امکان می دهد از ویژگی هایی مانند میزان وابستگی استفاده کنند.
با این حال ، معایبی نیز برای این رویکرد وجود دارد. اولا شما باید اعتماد زیادی به نگهدارندگان PPA که از آن استفاده می کنید ، داشته باشید. اگرچه ممکن است دلیل خوبی برای اعتماد به آن ها در اوبونتو داشته باشید ، اما باید از خود بپرسید که آیا PPA مورد علاقه شما توسط یک منبع قابل اطمینان تهیه شده است یا خیر. این احتمال وجود دارد که حتی اگر نگهدارنده مخرب نباشد ، ممکن است ایمن ترین نباشند و ناخودآگاه بسته های خطرناک ارائه دهند.
نکته دیگری که باید در نظر داشته باشید طول عمر این PPA ها است. آیا اگر ناگهان ساپورت این منبع از بین برود ، برنامه عملی خواهید داشت؟ آیا در صورت اتمام پشتیبانی از package از طریق کانال های پیش فرض توزیع، وقتی برای نظارت بر آن دارید؟
قبل از شروع کار، ممکن است مجبور شوید پکیجی را به سیستم خود اضافه کنید تا بتوانید به راحتی PPA ها را مدیریت کنید. این کار با انتشار متفاوت است ، اما باید بتوانید یکی از دو گزینه زیر را استفاده کنید:
sudo apt-get update
sudo apt-get install python-software-properties # For Ubuntu 12.04 and lower
sudo apt-get install software-properties-common # For Ubuntu versions > 12.04
پس از آن ، می توانید با تایپ کردن چیزی شبیه به این ، یک PPA اضافه کنید:
sudo add-apt-repository ppa:PPA_name

سپس می خواهید شاخص بسته خود را به روز کنید تا اطلاعات را از PPA جدید خود بیرون بیاورید. سپس می توانید هر نرم افزار جدیدی را که PPA ارائه می دهد نصب کنید:
sudo apt-get update
sudo apt-get install new_package

مخازن Git
نوع دیگری از مخازن که احتمالاً هنگام کار با نرم افزار لینوکس با آنها روبرو می شوید برای مدیریت فایلهای سورس نرم افزار استفاده می شود. به طور کلی ، به آن ها مخازن git میگویند.
اگر فایل های مورد علاقه شما در یک مخزن git یا در Git هاست شده مانند GitHub ، Bitbucket ، private GitLab و غیره میزبانی می شوند ، می توانید به راحتی فایل ها را با استفاده از دستورات git معمولی پیاده کنید.
اطمینان حاصل کنید که سرور شما برای شروع کار نصب کرده است:
sudo apt-get update
sudo apt-get install git

پس از آن ، می توانید با استفاده از اطلاعات ارائه شده در سایت ، به سادگی به دایرکتوری که می خواهید پروژه را نگه دارید بروید و مخزن را کلون کنید. به عنوان مثال ، در GitHub ، می توانید URL مخزن پروژه را در سمت راست دریافت کنید
می توانید URL را کپی کرده و بعد از دستور کلون ، آن را در بخش ترمینال خود قرار دهید:
git clone https://github.com/user/project.git

این پروژه را به طور کامل در فهرست اصلی فعلی شما کلون می کند.
منابع عمومی وب
در حالی که مدیریت نرم افزار با مخازن (repository) آسان است و روشی عالی برای ردیابی نرم افزار و تغییرات ایجاد می کند ، اما همیشه اعتماد به این روش ها به دلایل مختلف امکان پذیر نیست. همه نرم افزارها در repository نگهداری نمی شوند و بسته های نرم افزاری تنها نوع داده ای نیست که احتمالاً در سرور مجازی خود می خواهید.
برای محتوای غیر repository ابزارهای دیگری داریم که می توانند به ما کمک کنند. ما در ادامه چند روش ماهرانه و غیر حرفه ای را مورد بحث قرار خواهیم داد.
دانلود و انتقال از راه دور
شاید نحوه دریافت داده روی سرور شما که طبیعی ترین حالت باشد ، دانلود داده ها در رایانه تان و سپس بارگذاری آن در سایت باشد. از آنجا که احتمالاً در حال بارگذاری محتوای سفارشی در سایت خود هستید ، این روش اگر دقیقا عالی نباشد ، اما آسان است.
هر گونه محتوا ، فایل یا بسته ای را که می خواهید در سایت خود داشته باشید می توانید با استفاده از یک مرورگر وب عادی روی رایانه دانلود کنید. اطمینان حاصل کنید که اگر در حال دریافت نرم افزاری هستید ، نسخه صحیح را برای مطابقت با توزیع ، انتشار و معماری سرور خود دانلود می کنید (اگر گزینه های دانلود متمایز است).
پس از آن ، می توانید به راحتی این فایل ها را به سرور خود منتقل کنید. روش پیشنهادی از طریق اتصال sftp است که به شما امکان می دهد داده ها را به راحتی انتقال دهید. شما می توانید sftp را از خط دستوری استفاده کنید ، همانطور که در این راهنما نشان می دهیم ، یا می توانید از کلاینت FTP با قابلیت های sftp استفاده کنید ، همانطور که در این راهنما در مورد استفاده از FileZilla با sftp نشان می دهیم.
این احتمالاً انعطاف پذیرترین روش برای به دست آوردن محتوا روی سرور مجازی شماست ، زیرا به شما امکان می دهد علاوه بر فایل هایی که در وب به آنها دسترسی دارید ، فایل هایی را که ایجاد کرده اید نیز انتقال دهید.
مرورگرهای وب مبتنی بر کنسول
روش جالب دیگر برای دریافت محتوا به سیستم شما استفاده از یک مرورگر وب از درون سرور است.
در حالی که می توانید سرورهای نمایشگر گرافیکی و مرورگرهای معمولی را بر روی سرور خود نصب کنید ، این تقریباً همیشه کار اضافی و غیرضروری است. راه دیگر استفاده از مرورگرهای وب مبتنی بر کنسول است که به شما امکان می دهد از وب سایتی بازدید کنید که فقط با یک خروجی متنی نمایش داده می شود.
امکانات نسبتا کمی برای مرورگرهای وب مبتنی بر کنسول وجود دارد.
lynx
مرورگر lynx قدیمی ترین مرورگر وب است که هنوز هم به طور فعال در حال توسعه و استفاده است. استفاده از آن نیز آسان است. در اصل ، استفاده از کلیدهای جهت دار UP و DOWN به شما امکان می دهد تا به راحتی بین پیوندها در طول صفحه پرش کنید. برای دنبال کردن یک لینک ، هنگام ورود آن هایلایت شد ، ENTER یا فلش RIGHT را فشار دهید.
این گزینه ممکن است به طور پیش فرض در سیستم شما در دسترس نباشد ، اما می توانید با تایپ کردن چیزی مانند دستور زیر ، آن را به راحتی نصب کنید:
sudo apt-get update
sudo apt-get install lynx

lynx می تواند مدیریت کوکی ها و بوک مارک ها را کنترل کند. اگر ترمینال شما از آن پشتیبانی کند می تواند خروجی رنگی ارائه دهد. به طور کلی می تواند برای هر وب سایتی که به چیزهایی مانند جاوا اسکریپت وابسته نیست ، مورد استفاده قرار گیرد تا عملکرد واقعی را ارائه دهد.
به عنوان مثال ، در اینجا می توانید یک صفحه نمونه حساب DigitalOcean را مشاهده کنید که در مرورگر lynx ارائه شده است:
Droplets

Create Droplet
× Logged in!
Image Name IP Address Status Memory Disk Region
irssi xxx.241.xxx.54 Active 512MB 20GB nyc1
try 192.xxx.170.xx Active 4GB 60GB nyc2
snmp xxx.170.xx.123 Active 4GB 60GB nyc2
tugboat 192.xxx.162.xxx Active 4GB 60GB nyc2

همانطور که مشاهده می کنید ، این کار تقریباً قابل استفاده است.
پیوندها
این مرورگر همچنین در مرور وب از خط دستوری بسیار عالی عمل میکند. یکی از ویژگی های مرورگرlinks نسبت به چیزی شبیه به lynx این است که شامل یک سیستم منویی شبیه به یک مرورگر قدیمی است که با ضربه زدن به کلید ESC می توان به آن دسترسی داشت.
اگر این مرورگر روی سیستم تان موجود نباشد، می توانید با تایپ کردن دستور زیر آن را دریافت کنید:
sudo apt-get update
sudo apt-get install links

در حالی که مرورگر links در پیکربندی پیش فرض خود متن رنگی را ارائه نمی دهند ، و تشخیص لینک هایپر را کمی دشوارتر می کند ، اما از بسیاری از ویژگی های ncurses استفاده می کند تا رندر نسبتاً زیبا به نظر برسد. قرار دادن یک سایت گرافیکی در متن همیشه باعث ایجاد مشکلاتی در قالب بندی می شود ، اما links کار بسیار زیبایی را انجام می دهند:
Droplets

Create Droplet

Image Name IP Address Status Memory Disk Region
irssi xxx.241.xxx.54 Active 512MB 20GB nyc1
try 192.xxx.170.xx Active 4GB 60GB nyc2
snmp xxx.170.xx.123 Active 4GB 60GB nyc2
tugboat 192.xxx.162.xxx Active 4GB 60GB nyc2

ویژگی دیگری که ممکن است در تصمیم شما تأثیر بگذارد این است که links بصورت پیش فرض از پشتیبانی ماوس استفاده می کنند ، بدین معنی که می توانید بر روی پیوندها در پنجره ترمینال خود کلیک کنید دقیقاً مانند آنچه در مرورگر معمولی خود دارید.
elinks
یک انشعاب محبوب مرورگر elinks است. این انشعاب در سال 2001 شروع به کار کرد و مجموعه ای از ویژگی های گسترده را شامل می شود در حالی که از مکانیسم های ارائه دهنده links و موتور اصلی استفاده می کند.
برای به دست آوردن elinks در دستگاه اوبونتو ، می توانید تایپ کنید:
sudo apt-get update
sudo apt-get install elinks

برخی از ویژگی هایی که از elinks نسبت به links به دست می آورید عبارتند از رمز عبور و مدیریت فرم ، مرور تب بندی شده ، پشتیبانی جزئی از جاوا اسکریپت و پشتیبانی پروتکل bittorrent و IPv6. اینها ممکن است به بهای کاهش سرعت حاصل شوند ، اما به احتمال زیاد این مورد چندان قابل توجه نخواهد بود.
w3m
یکی دیگر از مرورگرهای متنی فول امکانات میباشد که ممکن است با همان روشی که از یک مرورگر گرافیکی استفاده می کنید ، استفاده از آن ساده تر باشد. اکثر مرورگرهای دیگر در این لیست به شما امکان می دهند که بین پیوندها پرش کنید ، اما مرور خود صفحه دشوار است. با این حال مرورگر w3m از TAB ها برای حرکت بین پیوندها و کلیدهای جهت دار استفاده می کند تا مکان نما را بطور مستقل برای پیمایش صفحه حرکت دهد.
در حالی که بسیاری از سیستم ها به طور پیش فرض w3m را شامل می شوند ، اگر سرور شما این مرورگر را ندارد ، می توانید با تایپ کردن این دستور آن را اضافه کنید:
sudo apt-get update
sudo apt-get install w3m

یکی دیگر از مزیت های این مرورگر که مورد توجه برخی افراد قرار می گیرد این است که می تواند از دستورات کلیدی شبیه به vi استفاده کند. به عنوان مثال ، می توانید مکان نما را با تایپ کردن ، “j” ، “k” ، “l” و “h” حرکت دهید.
دانلود برنامه های کاربردی
اگرچه گاهی اوقات می توانید از خود سرور مجازی سرچ کنید، اما بیشتر اوقات متوجه می شوید که مرور از یک مرورگر وب گرافیکی در دستگاه تان کارآمد تر است و به شما امکان می دهد صفحات را به شیوه ای مطمئن تر رندر بگیرید.
به همین دلیل بسیاری از افراد، وب را در دستگاه خود مرور می کنند و سپس لینک های دانلود را در پنجره ترمینال خود پیست می کنند تا از ابزارهای دانلود استفاده کنند.
wget
ابزار wget گزینه ای عالی برای دریافت سریع صفحات یا دانلود از وب سایت است.
اگر wget را در حال حاضر در سرور Ubuntu خود ندارید ، می توانید با تایپ کردن این دستور آن را به دست آورید:
sudo apt-get update
sudo apt-get install wget

پس از آن ، دانلود یک فایل از یک منبع از راه دور به آسانی پیست کردن URL پس از نام دستوری مانند این است:
wget www.example.com

اگر در یک وب سایت عمومی به این موضوع اشاره کنید ، فهرست یا صفحه اصلی را در یک فایل در دیرکتوری محلی دانلود می کند. اگر آن را به سمت یک فایل هدایت کنید ، در عوض فایل را دانلود می کند.
معمولاً فرآیند، استفاده از مرورگر موجود در رایانه خانگی شما برای یافتن فایلی در اینترنت است که به آن علاقه دارید ، بر روی لینک دانلود راست کلیک کنید و گزینه ای مشابه ” کپی کردن محل لینک ” را انتخاب کنید. سپس با دستور فوق از این URL استفاده می کنید.
اگر دانلود شما قطع شود، در واقع می توانید از فلگ -c استفاده کنید که در صورت یافتن یک فایل ناقص در فهرست موجود، دانلود جزئی از سر گرفته می شود
wget -c www.example.com

دستور wget که می تواند کوکی ها را اداره کند ، نمونه خوبی برای اسکریپت است و می تواند به صورت بازگشتی کل وب سایت ها را در قالب اصلی خود دانلود کند.
curl
ابزار curl نیز برای این نوع عملیات گزینه مناسبی است. در حالی که wget معمولاً با تولید فایل ها کار می کند ، curl به طور پیش فرض از خروجی استاندارد استفاده می کند، و آن را برای اسکریپت ها و پایپ ها بسیار مفید می کند. همچنین از تعداد زیادی پروتکل پشتیبانی می کند و می تواند روشهای احراز هویت HTTP بیشتری را نسبت به wget انجام دهد.
در حالی که بسیاری از سیستم ها به صورت پیش فرض curl را نصب می کنند، اگر دستگاه Ubuntu شما نصب نکرده باشد ، می توانید تایپ کنید:
sudo apt-get update
sudo apt-get install curl

در حالی که curl به طور عادی از پایپ ها استفاده می کند ، می توانید به راحتی آن را تنظیم کنید که خروجی خود را در یک فایل نیز ذخیره کند. اگر در حال دانلود فایل ها برای سرور خود هستید ، احتمالاً این چیزی است که می خواهید. برای دانلود یک فایل و خروجی آن در یک فایل با همین نام ، تایپ کنید:
curl -O www.example.com/index.html

ما باید یک فایل را مشخص کنیم زیرا بدین ترتیب curl می داند که چه چیزی را به نام فایل محلی بنامد.
اگر بخواهیم نام محلی را انتخاب کنیم ، و اگر به دنبال فهرست دیرکتوری یک سایت هستیم ، دیگر نیازی نیست که آن را به یک فایل خاص اشاره کنیم. در عوض ، می توانیم به طور اختیاری به یک مکان مورد نظر اشاره کنیم و هر آنچه که این فهرست پیکربندی شده باید برگرداند، در فایل انتخاب شده ما قرار می گیرد
curl -o file.html www.example.com

این دستور همچنین برای دانلود فایل به نامی که می خواهید انتخاب کنید انجام می شود و فقط برای کار با فهرست های دیرکتوری مفید نیست. اگر به شما تغییر مسیر داده شد ، می توانید با استفاده از فلگ -L ، و فراخوانی curl این کار را انجام دهید.
نتیجه گیری
در حال حاضر ، می بینید که گزینه های کاملاً متفاوت برای دریافت نرم افزار ، داده و اطلاعات از طریق اینترنت روی سرور مجازی شما وجود دارد. در حالی که همه اینها قابلیت توانایی گرفتن مطالب از وب را دارند ، هیچکدام برای هر نوع دانلود و مصرفی مناسب نیستند.
شناختن امکانات موجود بسیار مفید است و می توانید از نقاط قوت هر راه حل برای موقعیت هایی که برای آن طراحی شده استفاده کنید. این به شما کمک می کند تا از انجام کارهای غیر ضروری خودداری کنید و در شیوه برخورد با یک مشکل به شما انعطاف پذیری می بخشد.

 

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

چگونه می توان با کتابخانه (library) درخواست ها در پایتون شروع به کار کرد

نحوه اجرای صفحه گذاری در MySQL با PHP روی اوبونتو 18.04

نحوه تنظیم پلتفرم Eclipse Theia Cloud IDE در CentOS 7

بسته بندی برنامه Laravel 6 برای توسعه با Docker Compose در اوبونتو 18.04

نحوه بهینه سازی درخواست های MySQL با ذخیره سازی ProxySQL در اوبونتو 16.04

نحوه استفاده از Ansible برای نصب و راه اندازی وردپرس با LAMP در اوبونتو 18.04

چگونه می توان پلتفرم کد سرور Cloud IDE را در اوبونتو 18.04 تنظیم کرد (شروع سریع)

چگونه می توان از رول های ansible برای انتزاع محیط زیرساختی خود استفاده کرد

نحوه پیکربندی یک خوشه Galera با MySQL در سرورهای اوبونتو 18.04

نحوه تهیه نسخه پشتیبان و بازیابی یک خوشه Kubernetes در vpsgol با استفاده از Velero

نحوه نصب و استفاده از PostgreSQL در CentOS 7

چگونه می توان پلتفرم Eclipse Theia Cloud IDE را روی اوبونتو 18.4 تنظیم کرد

نحوه استقرار و مدیریت DNS با استفاده از DNSControl در Debian 10

چگونه می توان پلتفرم Cloud IDE کد سرور را روی CentOS 7 تنظیم کرد

نحوه نصب Apache Kafka در Debian 10

نحوه نصب وردپرس با OpenLiteSpeed ​​در اوبونتو 18.04

چگونه پیکربندی SSH Daemon خود را بر روی یک VPS لینوکس تنظیم کنید

 

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

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

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

مقدمه
Mattermost یک پلتفرم همکاری و پیام رسانی منبع باز است که با امنیت و قابل پیکربندی ایجاد شده است و عملکرد قابل مقایسه ای را با Discord یا Slack ارائه میدهد. این برنامه پیام رسانی گروهی ، رشته ای و یک به یک ، سابقه جستجوی نامحدود و قابلیت های اشتراک فایل ، مجوزها و اعلانات دو عامل فاکتوریی را ارائه می دهد. Mattermost همچنین webhooks را برای شخصی سازی بیشتر و ادغام ربات ها فراهم می کند. به دلیل رابط وب پاسخگو و برنامه های اختصاصی تلفن همراه ، از هر نوع دستگاه مدرن قابل دسترسی است.
در این آموزش Mattermost Team Edition را روی سرور مجازی Ubuntu 20.04 خود تنظیم می کنید. ابتدا ، آن را نصب خواهید کرد و در دامنه خود قرار می دهید ، با یک مجوز رایگان رمزگذاری TLS ایمن می کنید. سپس ، اعلان های ایمیل را فعال می کنید ، برندینگ را سفارشی می کنید و صفحه پیام خود را ایجاد می کنید (به نام یک تیم درMattermost (
پیش نیازها
⦁ سرور مجازی که اوبونتو 20.04 را اجرا کند با حداقل 2 گیگابایت حافظه رم ، دسترسی به ریشه و یک حساب غیر ریشه و sudo. با دنبال کردن راهنمای تنظیم اولیه سرور مجازی می توانید این کار را انجام دهید.
⦁ MariaDB روی سرور مجازی شما نصب شده باشد. برای دیدن نحوه انجام این کار ، به نحوه نصب MariaDB در اوبونتو 20.04 مراجعه کنید. می توانید نسخه کوتاهی را که در ابتدای آموزش ذکر شده است ، دنبال کنید.
⦁ Postfix در حالت فقط ارسال بر روی سرور مجازی شما نصب شده باشد. برای تنظیم این برنامه به آموزش نحوه نصب و پیکربندی Postfix به عنوان سرور مجازی SMTP فقط ارسالی در اوبونتو 20.04 مراجعه کنید. شما می توانید از آن برای فعال کردن ارسال اعلان های ایمیل از Mattermost استفاده کنید.
⦁ Nginx بر روی سرور مجازی شما نصب شده باشد. برای راهنمایی در مورد نحوه انجام این کار ، مراحل 1 تا 4 نحوه نصب Nginx را در اوبونتو 20.04 کامل کنید.
⦁ یک نام دامنه کاملاً ثبت شده برای میزبانی Mattermost ، که به سرور مجازی شما اشاره کند. در این آموزش از materough.your_domain استفاده خواهد شد. می توانید نام دامنه را در Namecheap خریداری کنید ، به صورت رایگان در Freenom دریافت کنید ، یا از ثبت دامنه مورد نظر خود استفاده کنید.
توجه: برای کارکرد صحیح سرور مجازی SMTP Postfix ، رکوردهای PTR سرور مجازی شما باید با your_domain مطابقت داشته باشد. می توانید با وارد کردن نام میزبان در خط فرمان ، نام میزبان سرور را تأیید کنید. خروجی باید با نام سرور مجازی شما هنگام ایجاد آن مطابقت داشته باشد.

مرحله 1 – نصب Mattermost
در این بخش Mattermost را روی سرور مجازی خود تنظیم می کنید. این کار شامل دانلود آخرین نسخه ، پیکربندی آن برای استفاده از پایگاه داده MariaDB ، و ایجاد یک سرویس سیستمی است که Mattermost را همیشه در پس زمینه اجرا می کند.
دانلود Mattermost
تمام داده های مربوط به نصب Mattermost را در پوشه ای به نام ~/mattermost ذخیره خواهید کرد. با اجرای دستور زیر آن را ایجاد کنید:
⦁ $ mkdir ~/mattermost

به آن پوشه بروید:
⦁ $ cd ~/mattermost

لازم است به صفحه دانلود Mattermost در وب سایت رسمی بروید و لینک آخرین نسخه را کپی کنید. در زمان نوشتن این مقاله، آخرین نسخه 5.24.2 بوده است. آن را با استفاده از wget با دستور زیر دانلود کنید:
⦁ $ wget https://releases.mattermost.com/5.24.2/mattermost-5.24.2-linux-amd64.tar.gz

سپس با اجرای دستور زیر آرشیو را باز کنید:
⦁ $ tar -xvzf mattermost*.gz

این دستور کلیه فایل های بایگانی شده را در پوشه ای که نام آنها با mattermost شروع می شود باز می کند.
پوشه ای دقیقاً به عنوان فایل اصلی که دانلود کرده اید ، تهیه می شود که حاوی باینری های Mattermost است. آن را کپی کنید تا /opt را انتخاب کنید تا بتوانید با اجرای دستور زیر، به آن دسترسی گسترده به سیستم داشته باشید:
⦁ $ sudo cp -r mattermost /opt

سپس یک پوشه برای Mattermost ایجاد کنید ، که در آن داده های کاربر را ذخیره می کند:
⦁ $ sudo mkdir /opt/mattermost/data

توجه: Mattermost فایل ها و تصاویری را که شما و تیمتان در این دیرکتوری به اشتراک خواهید گذاشت ، ذخیره می کند ، بنابراین اطمینان حاصل کنید که فضای درایو زیادی را که در آن قرار دارد فضای خالی زیادی داشته باشید.
سپس ، برای Mattermost کاربر و گروه ایجاد کنید:
⦁ $ sudo useradd –system –user-group mattermost

سپس ، کاربر و گروه تازه ساخته آن را در پوشه داده خود قرار دهید:
⦁ $ sudo chown -R mattermost:mattermost /opt/mattermost

این کار به گونه ای انجام می شود که در صورت نفوذ ، حمله کننده به دیرکتوری Mattermost محدود می شود و نمی تواند به راحتی به بقیه سیستم دسترسی پیدا کند.
در آخر ، دیرکتوری /opt/mattermost را با گروه ها قابل نوشتن کنید:
⦁ $ sudo chmod -R g+w /opt/mattermost

اکنون که باینری های Mattermost دارای مجوزهای امن هستند ، اجازه دهید یک بانک اطلاعاتی برای آن تنظیم کنیم.
تنظیم پایگاه داده
با وارد کردن اعلان MariaDB و اجرای دستور زیر شروع کنید:
⦁ $ sudo mysql

با اجرای دستور زیر ، یک کاربر دیتابیس به نام mmuser ایجاد کنید و با یک رمز به انتخاب خود جایگزین your_mmuser_password نمایید:
⦁ mariaDB> CREATE USER ‘mmuser’@’%’ IDENTIFIED BY ‘your_mmuser_password’;

سپس برای Mattermost یک بانک اطلاعاتی ایجاد کنید:
⦁ mariaDB> CREATE DATABASE mattermost;

برای دسترسی به mmuser به مهمترین پایگاه داده ، با اجرای دستور زیر ، امتیازات دسترسی را به آن بدهید:
⦁ mariaDB> GRANT ALL PRIVILEGES ON mattermost.* TO ‘mmuser’@’%’;

سپس جداول امتیازات را مجدد لود کنید تا بلافاصله تغییرات اعمال شود:
⦁ mariaDB> FLUSH PRIVILEGES;

وقتی کارتان تمام شد ، از اعلان خارج شوید:
⦁ mariaDB> exit

با ایجاد پایگاه داده و یک کاربر همراه ، اکنون فایل پیکربندی اصلی Mattermost را ویرایش کرده و رشته اتصال صحیح پایگاه داده را تنظیم می کنید.
آن را برای ویرایش باز کنید:
⦁ $ sudo nano /opt/mattermost/config/config.json

سطرهایی را که به شکل زیر است پیدا کنید:
/opt/mattermost/config/config.json
. . .
“DriverName”: “…”
“DataSource”: “…”
. . .

آنها را مطابق شکل زیر تغییر دهید ، و your_mmuser_password را با رمز عبوری جایگزین کنید که برای حساب پایگاه داده mmuser تعیین کرده اید:
/opt/mattermost/config/config.json

“DriverName”: “mysql”
“DataSource”: “mmuser:your_mmuser_password@tcp(localhost:3306)/mattermost?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s”

هنگام کار ، فایل را ذخیره کنید و ببندید.
اکنون Mattermost را پیکربندی کرده اید تا از بانک اطلاعاتی تازه ایجاد شده استفاده کند، جایی که کاربران ، تیم ها و پیام ها را در آن ذخیره می کند. اکنون آماده هستید تا به ایجاد یک سرویس systemd  برای آن بپردازید.
ایجاد یک سرویس systemd
اجرای Mattermost به عنوان یک سرویس با استفاده از systemd تضمین می کند که همیشه در پس زمینه اجرا می شود.
پیکربندی سرویس را در فایلی به نام mattermost.service در دیرکتوری / lib / systemd / system ذخیره خواهید کرد ، جایی که سیستم عامل سرویس های خود را ذخیره می کند. آن را با استفاده از ویرایشگر متن خود ایجاد کنید:
⦁ $ sudo nano /lib/systemd/system/mattermost.service

خطوط زیر را اضافه کنید:
/lib/systemd/system/mattermost.service
[Unit]
Description=Mattermost
After=network.target
After=mysql.service
Requires=mysql.service

[Service]
Type=notify
User=mattermost
Group=mattermost
ExecStart=/opt/mattermost/bin/mattermost
TimeoutStartSec=3600
Restart=always
RestartSec=10
WorkingDirectory=/opt/mattermost
LimitNOFILE=49152

[Install]
WantedBy=mysql.service

در اینجا ابتدا شرح سرویس را مشخص می کنید. سپس ، اظهار می کنید که سرویس mysql باید قبل از سرویس Mattermost آغاز شود زیرا سرویس Mattermost به کار در MariDB نیاز دارد. بعد از بخش [Unit] نوع سرویس را تعیین می کنید. notify  بدان معنی است که فرایند به سیستم اطلاع داده خواهد شد که لود شده است. شما فرمانی را ارائه میکنید که اجرا می شود و رویکرد را روی always تنظیم میکند. همچنین دایرکتوری در حال کار را برای فرآیند تعریف می کنید و کاربر و گروهی که باید به عنوان آن اجرا شود.
در بخش [Install] ، سرویس دیتابیس را به عنوان مقدار پارامتر WantedBy تعیین می کنید تا اطمینان حاصل شود که Mattermost دوباره با پایگاه داده راه اندازی می شود. با به روزرسانی خودکار پایگاه داده ، حذف این تنظیمات ممکن است مشکلی ایجاد کند ، زیرا اگر ریستارت نشود ، ممکن است متوقف شود.
فایل را ذخیره کرده و ببندید ، سپس با اجرای دستور زیر کلیه خدمات را مجدد دانلود کنید:
⦁ $ sudo systemctl daemon-reload

بررسی کنید که به درستی دانلود شده است:
⦁ $ sudo systemctl status mattermost

خروجی زیر را مشاهده خواهید کرد:
Output
● mattermost.service – Mattermost
Loaded: loaded (/lib/systemd/system/mattermost.service; disabled; vendor preset: enabled)
Active: inactive (dead)

اگر systemd خطایی را گزارش کرد ، نام فایل فایل سرویس ، محل آن و اعتبار محتوای آن را دوبار بررسی کنید.
سپس با اجرای دستور زیر سرویس Mattermostرا فعال کنید:
⦁ $ sudo systemctl enable mattermost

در این مرحله ، Mattermost را دانلود کرده اید ، آن را پیکربندی کردد تا از بانک اطلاعاتی MariaDB استفاده کند ، و یک سرویس سیستمی برای آن ایجاد کردید. در مرحله بعد ، آن را در دامنه خود قرار می دهید.
مرحله 2 – قرار دادن Mattermost در معرض دامنه
در این بخش ، Nginx را به عنوان سرور مجازی پروکسی معکوس برای Mattermost پیکربندی می کنید.
قبل از پیکربندی Nginx ، باید دامنه خود را در فایل اصلی پیکربندی Mattermost مشخص کنید. آن را برای ویرایش باز کنید:
⦁ sudo nano /opt/mattermost/config/config.json

خطی را پیدا کنید که به شکل زیر باشد:
/opt/mattermost/config/config.json
. . .
“SiteURL”: “”
. . .
نام دامنه خود را در نقل قول ها وارد کنید:
/opt/mattermost/config/config.json

“SiteURL”: “http://mattermost.your_domain”

فایل را ذخیره کنید و ببندید.
همانطور که در مرحله پیش نیاز Nginx آموخته اید ، فایل های پیکربندی سایت آن تحت /etc/nginx/sites-available ذخیره می شوند و بعداً باید برای فعال شدن آنها را با /etc/nginx/sites-enabled لینک کنید.
پیکربندی را برای قرار گرفتن Mattermost در معرض دامنه خود در فایلی با نام Mattermost.conf ، تحت /etc/nginx/sites-available ذخیره خواهید کرد. با استفاده از ویرایشگر خود آن را ایجاد کنید:
⦁ $ sudo nano /etc/nginx/sites-available/mattermost.conf

خطوط زیر را اضافه کنید:
/etc/nginx/sites-available/mattermost.conf
upstream backend {
server localhost:8065;
keepalive 32;
}

proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=mattermost_cache:10m max_size=3g inactive=120m use_temp_path=off;

server {
listen 80;
server_name mattermost.your_domain;

location ~ /api/v[0-9]+/(users/)?websocket$ {
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection “upgrade”;
client_max_body_size 50M;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Frame-Options SAMEORIGIN;
proxy_buffers 256 16k;
proxy_buffer_size 16k;
client_body_timeout 60;
send_timeout 300;
lingering_timeout 5;
proxy_connect_timeout 90;
proxy_send_timeout 300;
proxy_read_timeout 90s;
proxy_pass http://backend;
}

location / {
client_max_body_size 50M;
proxy_set_header Connection “”;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Frame-Options SAMEORIGIN;
proxy_buffers 256 16k;
proxy_buffer_size 16k;
proxy_read_timeout 600s;
proxy_cache mattermost_cache;
proxy_cache_revalidate on;
proxy_cache_min_uses 2;
proxy_cache_use_stale timeout;
proxy_cache_lock on;
proxy_http_version 1.1;
proxy_pass http://backend;
}
}

Mattermost.your_domain را با دامنه مورد نظر خود جایگزین کنید ، سپس فایل را ذخیره کنید و ببندید.
در این فایل ، شما تعریف می کنید که Nginx باید به پورت HTTP 80 گوش دهد. سپس ، یک name_name را تعیین می کنید که به Nginx می گوید که کدام دامنه درخواست ها را بپذیرد و از این پیکربندی خاص استفاده کند. دو بلوک بعدی اتصالات پروکسی را پیکربندی می کنند ، تا Mattermost به درستی کار کند.
برای فعال سازی این پیکربندی سایت ، باید با اجرای دستور زیر ، یک لینک به پوشه /etc/nginx/sites-enabled ایجاد کنید:
⦁ $ sudo ln -s /etc/nginx/sites-available/mattermost.conf /etc/nginx/sites-enabled/mattermost.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

سپس ، با اجرای دستور زیر سرویس Mattermostرا شروع کنید:
⦁ $ sudo systemctl start mattermost

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

اکنون نصب Mattermost را در دامنه خود دارید و در دسترس است. در مرحله بعد ، شما با استفاده از یک گواهی نامه Let’s Encrypt TLS رایگان ، آن را ایمن خواهید کرد.
مرحله 3 – ایمن کردن دامنه خود
در این بخش دامنه خود را با استفاده از گواهی نامه Let’s Encrypt TLS که با استفاده از Certbot تهیه می کنید ، ایمن می کنید.
شما باید قبلاً Certbot را به عنوان بخشی از پیش نیازها نصب کرده باشید ، بنابراین فقط باید با اجرای آن ، افزونه Nginx را نصب کنید:
⦁ $ sudo apt install python3-certbot-nginx

همچنین به عنوان بخشی از پیش شرط ها ، ufw (فایروال کامپایل نشده) را فعال کرده و آن را پیکربندی کرده اید تا امکان ترافیک HTTP رمزگذاری نشده را فراهم کند. برای دسترسی ایمن به سایت ، باید آن را پیکربندی کنید تا با اجرای دستور زیر ، ترافیک رمزگذاری شده را بپذیرید:
⦁ $ sudo ufw allow https

خروجی به این صورت خواهد بود:
Output
Rule added
Rule added (v6)
به طور مشابه با Nginx ، لازم است آن را مجدد لود کنید تا پیکربندی آن به مرحله اجرا برسد:
⦁ $ sudo ufw reload

این خروجی نشان داده می شود:
Output
Firewall reloaded
برای درخواست گواهی نامه برای دامنه خود ، دستور زیر را اجرا کنید:
⦁ $ sudo certbot –nginx -d mattermost.your_domain

در این دستور ، شما certbot را برای درخواست گواهینامه برای دامنه خود اجرا می کنید – نام دامنه را با پارامتر -d می گذرانید. پرچم –nginx به آن می گوید برای پشتیبانی از HTTPS ، پیکربندی سایت Nginx را به طور خودکار تغییر دهید. به یاد داشته باشید که materimum.your_domain را با نام دامنه خود جایگزین کنید.
اگر اولین بار است که Certbot را اجرا می کنید ، از شما خواسته می شود که یک آدرس ایمیل را برای اخطارهای فوری و پدیرش شرایط خدمات EFF ارائه کنید. سپس Certbot از Let’s Encrypt برای گواهی دامنه شما درخواست می کند. و از شما سؤال می کند که آیا مایلید همه ترافیک HTTP را به HTTPS هدایت کنید:
Output
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
1: No redirect – Make no further changes to the webserver configuration.
2: Redirect – Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you’re confident your site works on HTTPS. You can undo this
change by editing your web server’s configuration.
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
Select the appropriate number [1-2] then [enter] (press ‘c’ to cancel):

توصیه می شود برای به حداکثر رساندن امنیت گزینه دوم را انتخاب کنید. پس از وارد کردن انتخاب خود ، ENTER را فشار دهید.
خروجی شما شبیه به این خواهد بود:
Output
IMPORTANT NOTES:
– Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/mattermost.your_domain/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/mattermost.your_domain/privkey.pem
Your cert will expire on 2020-09-28. To obtain a new or tweaked
version of this certificate in the future, simply run certbot again
with the “certonly” option. To non-interactively renew *all* of
your certificates, run “certbot renew”
– Your account credentials have been saved in your Certbot
configuration directory at /etc/letsencrypt. You should make a
secure backup of this folder now. This configuration directory will
also contain certificates and private keys obtained by Certbot so
making regular backups of this folder is ideal.
– If you like Certbot, please consider supporting our work by:

Donating to ISRG / Let’s Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le

این بدان معنی است که Certbot موفق به تولید گواهینامه های TLS شده و آنها را در پیکربندی Nginx برای دامنه شما به کار می برد.
از آنجا که اکنون با استفاده از HTTPS به دامنه شما قابل دسترسی است ،باید URL دامنه خود را در فایل اصلی پیکربندی Mattermost تصحیح کنید. آن را برای ویرایش باز کنید:
⦁ $ sudo nano /opt/mattermost/config/config.json

یک بار دیگر ، خطی را پیدا کنید که به شکل زیر است:
/opt/mattermost/config/config.json
. . .
“SiteURL”: “http://mattermost.your_domain”
. . .

http را به https تغییر دهید:
/opt/mattermost/config/config.json
. . .
“SiteURL”: “https://mattermost.your_domain”
. . .

این تنها چیزی است که شما باید ویرایش کنید ، بنابراین فایل را ذخیره کنید و ببندید .
با اجرای دستور زیر Mattermost را ریستارت کنید:
⦁ $ sudo systemctl restart mattermost

اکنون می توانید دامنه Mattermost را در مرورگر خود مجدد لود کنید و یک پد لاک در سمت چپ آدرس سایت مشاهده کنید ، به این معنی که اتصال خود را به درستی ایمن کرده اید.
اکنون که گواهینامه های TLS شما با موفقیت پیکربندی شده و دامنه شما از طریق یک اتصال مطمئن در دسترس است ، آماده پیکربندی Mattermost هستید.
مرحله 4 – تنظیم Mattermost
در این بخش ، تیم خود را در Mattermost ایجاد خواهید کرد ، اعلان های ایمیل را تنظیم و برند سرور مجازی را تغییر می دهید.
هنگامی که برای اولین بار به Mattermost دسترسی پیدا می کنید ، باید یک حساب کاربری با امتیازات ادمین برای سرور مجازی خود ایجاد کنید. اگر از قبل حساب کاربری دارید ، می توانید با آن وارد شوید. پس از ورود به سیستم ، صفحه‌ای را مشاهده خواهید کرد که به شما میگوید تیمی وجود ندارد که بتوانید به آن بپیوندید.
برای رفع این مشکل ، Create a team را انتخاب کنید. صفحه ای را مشاهده خواهید کرد که از شما میخواهد تیم خود را معرفی کنید (به عنوان مثا ل Sammy):

نام مورد نظر خود را وارد کرده و روی Next کلیک کنید. سپس از شما می خواهد که آدرس وب خود را برای تیم خود ، در دامنه خود تعیین کنید ، که این نقطه دسترسی برای تیم شما در Mattermost خواهد بود:

می توانید URL را بدون تغییر بگذارید. پس از اتمام کار ، روی « Finish » کلیک کنید. Mattermost تیم شما را ایجاد می کند و پس از گذراندن آموزش ، رابط اصلی را خواهید دید ، جایی که بیشتر وقت خود را صرف برقراری ارتباط می کنید:

رابط کاربری در مرحله بعدی با جزئیات توضیح داده خواهد شد. برای دسترسی به تنظیمات ، بر روی نام کاربری خود در گوشه بالا سمت چپ و سپس System Console کلیک کنید. فقط اگر کاربر ادمین باشید می توانید به این گزینه دسترسی پیدا کنید.

در سمت چپ یک منو وجود دارد که دسترسی به بخش هایی از پیکربندی Mattermost را در اختیار شما قرار می دهد. ابتدا اعلان های ایمیل تنظیم می کنید ، بنابراین روی گزینه SMTP که می تواند در منوی Environment یافت شود کلیک کنید:

برای اتصال به سرور مجازی Postfix که به عنوان بخشی از پیش شرط ها نصب کرده اید ، localhost  را به عنوان SMTP Server و 25 را به عنوان SMTP Server Port تایپ کنید. هنگامی که کار خود را انجام دادید ، روی دکمه آبی Save  کلیک کنید و سپس دکمه Test Connection را که در پایین قرار دارد ، بزنید. یک پیام در یک کادر سبز دریافت خواهید کرد که میگیود هنگام ارسال ایمیل خطایی گزارش نشده است. لطفاً صندوق ورودی خود را بررسی کنید.

اکنون می توانید صندوق ورودی ایمیلی را که با آن وارد سیستم شده اید ، بررسی کنید. یک پیام از Mattermost پیدا خواهید کرد ، می گویند تنظیمات ایمیل به درستی تنظیم شده است. اگر آن را دریافت نکردید ، پوشه اسپم خود را بررسی کنید. اگر خطایی از Mattermost دریافت شده ، آنچه را که وارد کرده اید ، دوباره بررسی کنید و در صورت لزوم ، یک بار دیگر آموزش قبلی را انجام دهید.
اکنون که تأیید کردید که ایمیل ها در حال کار هستند ، باید اعلان های ایمیل را با انتخاب Notifications  در زیر Site Configuration در منو فعال کنید. Enable Email Notifications را روی true  قرار دهید و Notification From Address را روی آدرس ایمیل مورد نظر خود ، مانند mattermost@your_domain ، تنظیم کنید.
از آنجا که دیگر نیازی به وجود ندارد و نظارت نمی شود ، no-reply را به عنوان Notification Display Name ، یعنی نام فرستنده ای که در کلاینت ایمیل نشان داده می شود ، تایپ کنید. برای کم کردن تعداد کل ایمیل هایی که برای اعضای تیم خود ارسال می کنید می توانید بصورت اختیاری Email Batching را برای فشرده سازی چندین پیام خوانده نشده در یک ایمیل فعال کنید. پس از پایان انجام تنظیمات ، روی Save  کلیک کنید.
شما اعلان های ایمیل را در سطح جهانی فعال کرده اید و اکنون می توانید با انتخاب گزینه Customization در زیر پیکربندی سایت ، برندینگ سرور مجازی را به طور اختیاری تغییر دهید. در اینجا می توانید نام سایت و توضیحات سایت را تنظیم کنید و همچنین یک تصویر و متن با نام تجاری سفارشی بارگذاری کنید.
می توانید با کلیک کردن روی نام کاربری خود در گوشه بالا سمت چپ و انتخاب اولین گزینه از منوی کشویی ، از System Console خارج شوید.
شما تیم خود را در Mattermost ایجاد کرده اید و اعلان های ایمیل را تنظیم کرده اید ، بنابراین درباره بحث های جدیدی که در تیم شما اتفاق می افتد ، مطلع می شوید.
نتیجه
اکنون پلتفرم پیام رسانی قابل مقیاس بندی به میزبانی خود دارید که شما و تیم تان می توانید برای همکاری در همه دستگاه ها استفاده کنید. اکنون می توانید به صورت کارآمدتر ارتباط برقرار کنید ، فایل ها را به اشتراک بگذارید و با سهولت در پیام ها و کانال ها جستجو کنید.
اگر می خواهید در مورد استفاده از رابط کاربری Mattermost اطلاعات بیشتری کسب کنید ، به مطالب رسمی مراجعه کنید.

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

مقدمه
جاوا یک فناوری برنامه نویسی است که در ابتدا توسط Sun Microsystems ایجاد شد و بعدا دست اوراکل قرار گرفت. Oracle Java یک اجرای اختصاصی برای جاوا است که دانلود و استفاده مجدد از آن برای استفاده تجاری رایگان است ، اما توزیع مجدد رایگان نیست ، بنابراین در نسخه رسمی گنجانده نشده است.
دلایل زیادی وجود دارد که بخواهید Oracle Java را بر روی OpenJDK نصب کنید. در این آموزش ، تفاوتهای بین اجرای فوق را مورد بحث قرار نمی دهیم.
فرضیات
این آموزش فرض می کند که شما یک حساب کاربری و همچنین یک Droplet که Debian 7 یا Ubuntu 12.04 یا بالاتر را اجرا می کند ، دارید. برای تکمیل آموزش به امتیازات اصلی (از طریق سودو) نیاز خواهید داشت.
لازم است بدانید که سیستم عامل 32 بیتی را اجرا میکنید یا 64 بیتی:
uname -m

x86_64: 64 bit kernel
i686: 32 bit kernel

دانلود Oracle Java JDK
با استفاده از مرورگر وب خود ، به وب سایت Oracle Java SE (نسخه استاندارد) بروید و انتخاب کنید که کدام نسخه را می خواهید نصب کنید:
JDK: کیت توسعه جاوا. شامل یک ابزارJRE برای توسعه، اشکال زدایی و نظارت بر برنامه های جاوا.
سرور JRE : محیط اجرای جاوا. برای استقرار برنامه های جاوا بر روی سرورها. شامل ابزارهایی برای نظارت بر JVM و ابزارهایی که معمولاً برای برنامه های سرور مجازی مورد نیاز است.
در این آموزش بیت های 8 x64 کیت گسترش JDK Java SE  را نصب خواهیم کرد. گواهی نامه را بپذیرید و لینک دانلود را در کلیپ بورد خود کپی کنید. به یاد داشته باشید tar.gz مناسب (64 یا 32 بیت) را انتخاب کنید. برای دانلود بایگانی در سرور خود از wget استفاده کنید:
wget –header “Cookie: oraclelicense=accept-securebackup-cookie” http://download.oracle.com/otn-pub/java/jdk/8u5-b13/jdk-8u5-linux-x64.tar.gz

اوراکل بدون قبول مجوز آنها اجازه دانلود نمی دهد ، بنابراین ما نیاز به تغییر عنوان درخواست خود داریم. از طرف دیگر ، فقط می توانید فایل فشرده را با استفاده از مرورگر خود دانلود کرده و با استفاده از یک سرویس دهنده SFTP / FTP ، آن را به صورت دستی بارگذاری کنید.
همیشه آخرین نسخه را از وب سایت Oracle دریافت کنید و دستورات این آموزش را مطابق با فایل دانلود شده خود تغییر دهید.
نصب Oracle JDK
در این بخش به امتیازات سودو احتیاج خواهید داشت:
sudo su

دایرکتوری / opt برای کلیه نرم افزارها و بسته های الحاقی که جزئی از نصب پیش فرض نیستند محفوظ است. برای نصب JDK خود یک دایرکتوری ایجاد کنید:
mkdir /opt/jdk

و جاوا را در فهرست / opt / jdk اکسترکت کنید:
tar -zxf jdk-8u5-linux-x64.tar.gz -C /opt/jdk

تأیید کنید که پرونده در فهرست / opt / jdk اکسترکت شده است.
ls /opt/jdk

Oracle JDK را به عنوان JVM پیش فرض تنظیم کنید
برای ما ، java قابل اجرا در/opt/jdk/jdk1.8.0_05/bin/java قرار دارد. برای تنظیم آن به عنوان JVM پیش فرض در دستگاه در حال کار:
update-alternatives –install /usr/bin/java java /opt/jdk/jdk1.8.0_05/bin/java 100
و

update-alternatives –install /usr/bin/javac javac /opt/jdk/jdk1.8.0_05/bin/javac 100

نصب خود را تأیید کنید
تأیید کنید که جاوا با موفقیت پیکربندی شده است:
update-alternatives –display java

و

update-alternatives –display javac

خروجی باید به این شکل باشد:
java – auto mode
link currently points to /opt/jdk/jdk1.8.0_05/bin/java
/opt/jdk/jdk1.8.0_05/bin/java – priority 100
Current ‘best’ version is ‘/opt/jdk/jdk1.8.0_05/bin/java’.

javac – auto mode
link currently points to /opt/jdk/jdk1.8.0_05/bin/javac
/opt/jdk/jdk1.8.0_05/bin/javac – priority 100
Current ‘best’ version is ‘/opt/jdk/jdk1.8.0_05/bin/javac’.

راه آسان دیگر برای بررسی نصب شما:
java -version

خروجی باید به این شکل باشد:
java version “1.8.0_05”
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)

(اختیاری) به روز رسانی جاوا
برای به روزرسانی جاوا ، به سادگی یک نسخه به روز شده را از وب سایت Oracle دانلود کنید و آن را در زیر فهرست / opt / jdk اکسترکت کنید ، سپس آن را به عنوان JVM پیش فرض با شماره اولویت بالاتر (در این حالت 110) تنظیم کنید:
update-alternatives –install /usr/bin/java java /opt/jdk/jdk.new.version/bin/java 110
update-alternatives –install /usr/bin/javac javac /opt/jdk/jdk.new.version/bin/javac 110

می توانید نسخه قدیمی را نگه دارید یا آن را حذف کنید:

update-alternatives –remove java /opt/jdk/jdk.old.version/bin/java
update-alternatives –remove javac /opt/jdk/jdk.old.version/bin/javac

rm -rf /opt/jdk/jdk.old.version
این روش نصب مستند شده در بالا بر روی سرور Debian تأیید شده است ، اما می تواند برای یک سرور اوبونتو نیز اعمال شود. اگر بعد از طی کردن تمام مراحل با مشکلی روبرو شدید ، لطفاً نظر خود را در زیر ارسال کنید.

 

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

چگونه می توان با کتابخانه (library) درخواست ها در پایتون شروع به کار کرد

نحوه اجرای صفحه گذاری در MySQL با PHP روی اوبونتو 18.04

نحوه تنظیم پلتفرم Eclipse Theia Cloud IDE در CentOS 7

بسته بندی برنامه Laravel 6 برای توسعه با Docker Compose در اوبونتو 18.04

نحوه بهینه سازی درخواست های MySQL با ذخیره سازی ProxySQL در اوبونتو 16.04

نحوه استفاده از Ansible برای نصب و راه اندازی وردپرس با LAMP در اوبونتو 18.04

چگونه می توان پلتفرم کد سرور Cloud IDE را در اوبونتو 18.04 تنظیم کرد (شروع سریع)

چگونه می توان از رول های ansible برای انتزاع محیط زیرساختی خود استفاده کرد

نحوه پیکربندی یک خوشه Galera با MySQL در سرورهای اوبونتو 18.04

نحوه تهیه نسخه پشتیبان و بازیابی یک خوشه Kubernetes در vpsgol با استفاده از Velero

نحوه نصب و استفاده از PostgreSQL در CentOS 7

چگونه می توان پلتفرم Eclipse Theia Cloud IDE را روی اوبونتو 18.4 تنظیم کرد

نحوه استقرار و مدیریت DNS با استفاده از DNSControl در Debian 10

چگونه می توان پلتفرم Cloud IDE کد سرور را روی CentOS 7 تنظیم کرد

نحوه نصب Apache Kafka در Debian 10

نحوه نصب وردپرس با OpenLiteSpeed ​​در اوبونتو 18.04

چگونه پیکربندی SSH Daemon خود را بر روی یک VPS لینوکس تنظیم کنید

 

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

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

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

مقدمه
یکی از قابلیت هایی که تقریباً همه سرورها باید از آن برخوردار باشند ، قدرت ارسال و دریافت اطلاعات به دستگاههای دیگر شبکه است. اگرچه مردم به طور کلی سرورها را به عنوان تأمین کننده محتوا در نظر می گیرند (به هر حال از اسم آن نیز مشخص است) ،اما آنها نیز به دلایل زیادی باید توانایی دستیابی به محتوا را داشته باشند.
در حالی که اکثر بسته های لینوکس از طریق منشا توزیع آنها موجود است و با ابزارهای استاندارد مدیریت بسته قابل دانلود میباشد ، سایر اطلاعات و فایل ها باید از مکانیزم های دیگر استفاده کنند. در این راهنما ، ما در مورد برخی از متداول ترین روش های دریافت فایل ها و داده ها روی سرور لینوکس شما بحث خواهیم کرد.
ما عمدتاً از نمونه ای از اوبونتو 14.04 VPS برای اجرای این لیست استفاده خواهیم کرد ، اما شما تقریباً می توانید هر یک از این نرم افزارها را در سایر دایرکتوری ها و نسخه های موجود نصب و استفاده کنید.
دریافت داده ها و نرم افزار از منشا
شاید متداول ترین روش دریافت بسته ها و نرم افزارها روی سرور مجازی شما استفاده از مبدا باشد. مبداها در این زمینه در واقع می توانند به موارد نسبتاً متفاوتی اشاره کنند.
این ممکن است به مجموعه های بزرگی از نرم افزارهای موجود اشاره داشته باشد. که شامل نرم افزار کامپایل شده و آماده نصب است که بطور کلی آزمایش و پیکربندی شده است تا برای توزیع استفاده شود. مبداهای اصلی نیز وجود دارد که شامل کلیه فایل های لازم برای ساخت یک پروژه نرم افزاری خاص است.
ما در این بخش هر دو نوع را مرور خواهیم کرد.
نصب نرم افزار از یک منشا توزیع منظم
روش استاندارد نصب نرم افزار برای سرور لینوکس استفاده از package manager است. package manager برای پیوستن به مجموعه ای از سرورهای پیکربندی شده که حاوی منشایی از بسته هایی است که در سیستم های سازگار package و مورد آزمایش قرار گرفته اند پیکربندی شده است.

توزیع های لینوکس برای انجام این هدف از قالب های مختلف بسته بندی و package manager استفاده می کنند.
محبوب ترین قالب های package فرمت بسته بندی .deb است که توسط توزیع های Debian و Ubuntu و مشتقات آنها و فرمت بسته بندی .rpm که بطور سنتی توسط RedHat ، CentOS و Fedora و توزیع های مرتبط استفاده می شود ، مورد استفاده قرار می گیرد. برخی سیستم ها از قالب های مختلفpackage استفاده می کنند. به عنوان مثال Arch Linux ، از بسته های ساده .tar.xz استفاده می کند.

به طور کلی ، توزیع هایی با استفاده از بسته های .deb تمایل دارند از مجموعه ابزارهای package manager استفاده کنند. با کلیک کردن روی این لینک می توانید در مورد نحوه استفاده از apt برای package manager.deb اطلاعات کسب کنید.
به همین ترتیب ، آن توزیع ها با استفاده از قالب بسته .rpm معمولاً با package manager yum اجرا میشوند. می توانید نحوه استفاده از yum را از منابع متنوعی بیاموزید که چند نمونه از آنها در این لینک ها موجود است.
از آنجایی که Arch Linux این الگوها را دنبال نمی کند و از قالب package خود استفاده می کند ، برای مدیریت این قابلیت نیز package manager خود را با نام Pacman توسعه داده است. Arch wiki دارای پیجی عالی در مورد نحوه استفاده از pacman است که می توانید در اینجا بیابید.
نحوه استفاده از بایگانی بسته های شخصی
یکی از روشهای دستیابی به نرم افزاری که برای دستگاه های اوبونتو در دسترس است استفاده از آرشیو بسته های شخصی یا PPA است. اگرچه این روش دریافت نرم افزار به اکثر توزیع ها مربوط نیست ، اما قابلیت انعطاف پذیری را برای سرورهای اوبونتو فراهم می کند.
PPA در واقع مبدایی است که معمولاً روی یک یا چند بسته خاص متمرکز است که توسط شخص یا تیمی خارج از کانالهای رسمی اوبونتو نگهداری می شود. این به شما امکان می دهد تا از PPA به عنوان منبع جداگانه ای برای package manager خود استفاده کنید ، و نرم افزار ساخته شده و ذخیره شده در آنجا برای نصب یکپارچه به همراه سایر بسته های شما در دسترس خواهد بود.
همچنین مزایای بارزی دارد. می توانید نسخه های جدیدتری از نرم افزار را بین نسخه های رسمی اوبونتو دریافت کنید، که به طور معمول نسخه های قدیمی بیشتر بسته ها را به مدت 6 ماه به طور همزمان در اختیار شما قرار میدهد. همچنین به شما این امکان را می دهند که به راحتی به نرم افزاری دسترسی پیدا کنید که به طور رسمی توسط تیم اوبونتو package نشده باشد ، به شرطی که یک گروه مستقل برای تهیه بسته ها از آن استفاده کرده باشد.
بزرگترین مزیت نسبت به کامپایل از منبع این است که این بسته ها از طریق ابزارهای package معمولی مدیریت می شوند. این بدان معناست که آنها می توانند به طور مرتب به روزرسانی دریافت کرده و به اکوسیستم عمومی بسته وصل شوند ، که به آنها امکان می دهد از ویژگی هایی مانند میزان وابستگی استفاده کنند.
با این حال ، معایبی نیز برای این رویکرد وجود دارد. اولا شما باید اعتماد زیادی به نگهدارندگان PPA که از آن استفاده می کنید ، داشته باشید. اگرچه ممکن است دلیل خوبی برای اعتماد به آن ها در اوبونتو داشته باشید ، اما باید از خود بپرسید که آیا PPA مورد علاقه شما توسط یک منبع قابل اطمینان تهیه شده است یا خیر. این احتمال وجود دارد که حتی اگر نگهدارنده مخرب نباشد ، ممکن است ایمن ترین نباشند و ناخودآگاه بسته های خطرناک ارائه دهند.
نکته دیگری که باید در نظر داشته باشید طول عمر این PPA ها است. آیا اگر ناگهان ساپورت این منبع از بین برود ، برنامه عملی خواهید داشت؟ آیا در صورت اتمام پشتیبانی از package از طریق کانال های پیش فرض توزیع، وقتی برای نظارت بر آن دارید؟
قبل از شروع کار، ممکن است مجبور شوید پکیجی را به سیستم خود اضافه کنید تا بتوانید به راحتی PPA ها را مدیریت کنید. این کار با انتشار متفاوت است ، اما باید بتوانید یکی از دو گزینه زیر را استفاده کنید:
sudo apt-get update
sudo apt-get install python-software-properties # For Ubuntu 12.04 and lower
sudo apt-get install software-properties-common # For Ubuntu versions > 12.04
پس از آن ، می توانید با تایپ کردن چیزی شبیه به این ، یک PPA اضافه کنید:
sudo add-apt-repository ppa:PPA_name

سپس می خواهید شاخص بسته خود را به روز کنید تا اطلاعات را از PPA جدید خود بیرون بیاورید. سپس می توانید هر نرم افزار جدیدی را که PPA ارائه می دهد نصب کنید:
sudo apt-get update
sudo apt-get install new_package

مخازن Git
نوع دیگری از مخازن که احتمالاً هنگام کار با نرم افزار لینوکس با آنها روبرو می شوید برای مدیریت فایلهای سورس نرم افزار استفاده می شود. به طور کلی ، به آن ها مخازن git میگویند.
اگر فایل های مورد علاقه شما در یک مخزن git یا در Git هاست شده مانند GitHub ، Bitbucket ، private GitLab و غیره میزبانی می شوند ، می توانید به راحتی فایل ها را با استفاده از دستورات git معمولی پیاده کنید.
اطمینان حاصل کنید که سرور شما برای شروع کار نصب کرده است:
sudo apt-get update
sudo apt-get install git

پس از آن ، می توانید با استفاده از اطلاعات ارائه شده در سایت ، به سادگی به دایرکتوری که می خواهید پروژه را نگه دارید بروید و مخزن را کلون کنید. به عنوان مثال ، در GitHub ، می توانید URL مخزن پروژه را در سمت راست دریافت کنید
می توانید URL را کپی کرده و بعد از دستور کلون ، آن را در بخش ترمینال خود قرار دهید:
git clone https://github.com/user/project.git

این پروژه را به طور کامل در فهرست اصلی فعلی شما کلون می کند.
منابع عمومی وب
در حالی که مدیریت نرم افزار با مخازن (repository) آسان است و روشی عالی برای ردیابی نرم افزار و تغییرات ایجاد می کند ، اما همیشه اعتماد به این روش ها به دلایل مختلف امکان پذیر نیست. همه نرم افزارها در repository نگهداری نمی شوند و بسته های نرم افزاری تنها نوع داده ای نیست که احتمالاً در سرور مجازی خود می خواهید.
برای محتوای غیر repository ابزارهای دیگری داریم که می توانند به ما کمک کنند. ما در ادامه چند روش ماهرانه و غیر حرفه ای را مورد بحث قرار خواهیم داد.
دانلود و انتقال از راه دور
شاید نحوه دریافت داده روی سرور شما که طبیعی ترین حالت باشد ، دانلود داده ها در رایانه تان و سپس بارگذاری آن در سایت باشد. از آنجا که احتمالاً در حال بارگذاری محتوای سفارشی در سایت خود هستید ، این روش اگر دقیقا عالی نباشد ، اما آسان است.
هر گونه محتوا ، فایل یا بسته ای را که می خواهید در سایت خود داشته باشید می توانید با استفاده از یک مرورگر وب عادی روی رایانه دانلود کنید. اطمینان حاصل کنید که اگر در حال دریافت نرم افزاری هستید ، نسخه صحیح را برای مطابقت با توزیع ، انتشار و معماری سرور خود دانلود می کنید (اگر گزینه های دانلود متمایز است).
پس از آن ، می توانید به راحتی این فایل ها را به سرور خود منتقل کنید. روش پیشنهادی از طریق اتصال sftp است که به شما امکان می دهد داده ها را به راحتی انتقال دهید. شما می توانید sftp را از خط دستوری استفاده کنید ، همانطور که در این راهنما نشان می دهیم ، یا می توانید از کلاینت FTP با قابلیت های sftp استفاده کنید ، همانطور که در این راهنما در مورد استفاده از FileZilla با sftp نشان می دهیم.
این احتمالاً انعطاف پذیرترین روش برای به دست آوردن محتوا روی سرور مجازی شماست ، زیرا به شما امکان می دهد علاوه بر فایل هایی که در وب به آنها دسترسی دارید ، فایل هایی را که ایجاد کرده اید نیز انتقال دهید.
مرورگرهای وب مبتنی بر کنسول
روش جالب دیگر برای دریافت محتوا به سیستم شما استفاده از یک مرورگر وب از درون سرور است.
در حالی که می توانید سرورهای نمایشگر گرافیکی و مرورگرهای معمولی را بر روی سرور خود نصب کنید ، این تقریباً همیشه کار اضافی و غیرضروری است. راه دیگر استفاده از مرورگرهای وب مبتنی بر کنسول است که به شما امکان می دهد از وب سایتی بازدید کنید که فقط با یک خروجی متنی نمایش داده می شود.
امکانات نسبتا کمی برای مرورگرهای وب مبتنی بر کنسول وجود دارد.
lynx
مرورگر lynx قدیمی ترین مرورگر وب است که هنوز هم به طور فعال در حال توسعه و استفاده است. استفاده از آن نیز آسان است. در اصل ، استفاده از کلیدهای جهت دار UP و DOWN به شما امکان می دهد تا به راحتی بین پیوندها در طول صفحه پرش کنید. برای دنبال کردن یک لینک ، هنگام ورود آن هایلایت شد ، ENTER یا فلش RIGHT را فشار دهید.
این گزینه ممکن است به طور پیش فرض در سیستم شما در دسترس نباشد ، اما می توانید با تایپ کردن چیزی مانند دستور زیر ، آن را به راحتی نصب کنید:
sudo apt-get update
sudo apt-get install lynx

lynx می تواند مدیریت کوکی ها و بوک مارک ها را کنترل کند. اگر ترمینال شما از آن پشتیبانی کند می تواند خروجی رنگی ارائه دهد. به طور کلی می تواند برای هر وب سایتی که به چیزهایی مانند جاوا اسکریپت وابسته نیست ، مورد استفاده قرار گیرد تا عملکرد واقعی را ارائه دهد.
به عنوان مثال ، در اینجا می توانید یک صفحه نمونه حساب DigitalOcean را مشاهده کنید که در مرورگر lynx ارائه شده است:
Droplets

Create Droplet
× Logged in!
Image Name IP Address Status Memory Disk Region
irssi xxx.241.xxx.54 Active 512MB 20GB nyc1
try 192.xxx.170.xx Active 4GB 60GB nyc2
snmp xxx.170.xx.123 Active 4GB 60GB nyc2
tugboat 192.xxx.162.xxx Active 4GB 60GB nyc2

همانطور که مشاهده می کنید ، این کار تقریباً قابل استفاده است.
پیوندها
این مرورگر همچنین در مرور وب از خط دستوری بسیار عالی عمل میکند. یکی از ویژگی های مرورگرlinks نسبت به چیزی شبیه به lynx این است که شامل یک سیستم منویی شبیه به یک مرورگر قدیمی است که با ضربه زدن به کلید ESC می توان به آن دسترسی داشت.
اگر این مرورگر روی سیستم تان موجود نباشد، می توانید با تایپ کردن دستور زیر آن را دریافت کنید:
sudo apt-get update
sudo apt-get install links

در حالی که مرورگر links در پیکربندی پیش فرض خود متن رنگی را ارائه نمی دهند ، و تشخیص لینک هایپر را کمی دشوارتر می کند ، اما از بسیاری از ویژگی های ncurses استفاده می کند تا رندر نسبتاً زیبا به نظر برسد. قرار دادن یک سایت گرافیکی در متن همیشه باعث ایجاد مشکلاتی در قالب بندی می شود ، اما links کار بسیار زیبایی را انجام می دهند:
Droplets

Create Droplet

Image Name IP Address Status Memory Disk Region
irssi xxx.241.xxx.54 Active 512MB 20GB nyc1
try 192.xxx.170.xx Active 4GB 60GB nyc2
snmp xxx.170.xx.123 Active 4GB 60GB nyc2
tugboat 192.xxx.162.xxx Active 4GB 60GB nyc2

ویژگی دیگری که ممکن است در تصمیم شما تأثیر بگذارد این است که links بصورت پیش فرض از پشتیبانی ماوس استفاده می کنند ، بدین معنی که می توانید بر روی پیوندها در پنجره ترمینال خود کلیک کنید دقیقاً مانند آنچه در مرورگر معمولی خود دارید.
elinks
یک انشعاب محبوب مرورگر elinks است. این انشعاب در سال 2001 شروع به کار کرد و مجموعه ای از ویژگی های گسترده را شامل می شود در حالی که از مکانیسم های ارائه دهنده links و موتور اصلی استفاده می کند.
برای به دست آوردن elinks در دستگاه اوبونتو ، می توانید تایپ کنید:
sudo apt-get update
sudo apt-get install elinks

برخی از ویژگی هایی که از elinks نسبت به links به دست می آورید عبارتند از رمز عبور و مدیریت فرم ، مرور تب بندی شده ، پشتیبانی جزئی از جاوا اسکریپت و پشتیبانی پروتکل bittorrent و IPv6. اینها ممکن است به بهای کاهش سرعت حاصل شوند ، اما به احتمال زیاد این مورد چندان قابل توجه نخواهد بود.
w3m
یکی دیگر از مرورگرهای متنی فول امکانات میباشد که ممکن است با همان روشی که از یک مرورگر گرافیکی استفاده می کنید ، استفاده از آن ساده تر باشد. اکثر مرورگرهای دیگر در این لیست به شما امکان می دهند که بین پیوندها پرش کنید ، اما مرور خود صفحه دشوار است. با این حال مرورگر w3m از TAB ها برای حرکت بین پیوندها و کلیدهای جهت دار استفاده می کند تا مکان نما را بطور مستقل برای پیمایش صفحه حرکت دهد.
در حالی که بسیاری از سیستم ها به طور پیش فرض w3m را شامل می شوند ، اگر سرور شما این مرورگر را ندارد ، می توانید با تایپ کردن این دستور آن را اضافه کنید:
sudo apt-get update
sudo apt-get install w3m

یکی دیگر از مزیت های این مرورگر که مورد توجه برخی افراد قرار می گیرد این است که می تواند از دستورات کلیدی شبیه به vi استفاده کند. به عنوان مثال ، می توانید مکان نما را با تایپ کردن ، “j” ، “k” ، “l” و “h” حرکت دهید.
دانلود برنامه های کاربردی
اگرچه گاهی اوقات می توانید از خود سرور مجازی سرچ کنید، اما بیشتر اوقات متوجه می شوید که مرور از یک مرورگر وب گرافیکی در دستگاه تان کارآمد تر است و به شما امکان می دهد صفحات را به شیوه ای مطمئن تر رندر بگیرید.
به همین دلیل بسیاری از افراد، وب را در دستگاه خود مرور می کنند و سپس لینک های دانلود را در پنجره ترمینال خود پیست می کنند تا از ابزارهای دانلود استفاده کنند.
wget
ابزار wget گزینه ای عالی برای دریافت سریع صفحات یا دانلود از وب سایت است.
اگر wget را در حال حاضر در سرور Ubuntu خود ندارید ، می توانید با تایپ کردن این دستور آن را به دست آورید:
sudo apt-get update
sudo apt-get install wget

پس از آن ، دانلود یک فایل از یک منبع از راه دور به آسانی پیست کردن URL پس از نام دستوری مانند این است:
wget www.example.com

اگر در یک وب سایت عمومی به این موضوع اشاره کنید ، فهرست یا صفحه اصلی را در یک فایل در دیرکتوری محلی دانلود می کند. اگر آن را به سمت یک فایل هدایت کنید ، در عوض فایل را دانلود می کند.
معمولاً فرآیند، استفاده از مرورگر موجود در رایانه خانگی شما برای یافتن فایلی در اینترنت است که به آن علاقه دارید ، بر روی لینک دانلود راست کلیک کنید و گزینه ای مشابه ” کپی کردن محل لینک ” را انتخاب کنید. سپس با دستور فوق از این URL استفاده می کنید.
اگر دانلود شما قطع شود، در واقع می توانید از فلگ -c استفاده کنید که در صورت یافتن یک فایل ناقص در فهرست موجود، دانلود جزئی از سر گرفته می شود
wget -c www.example.com

دستور wget که می تواند کوکی ها را اداره کند ، نمونه خوبی برای اسکریپت است و می تواند به صورت بازگشتی کل وب سایت ها را در قالب اصلی خود دانلود کند.
curl
ابزار curl نیز برای این نوع عملیات گزینه مناسبی است. در حالی که wget معمولاً با تولید فایل ها کار می کند ، curl به طور پیش فرض از خروجی استاندارد استفاده می کند، و آن را برای اسکریپت ها و پایپ ها بسیار مفید می کند. همچنین از تعداد زیادی پروتکل پشتیبانی می کند و می تواند روشهای احراز هویت HTTP بیشتری را نسبت به wget انجام دهد.
در حالی که بسیاری از سیستم ها به صورت پیش فرض curl را نصب می کنند، اگر دستگاه Ubuntu شما نصب نکرده باشد ، می توانید تایپ کنید:
sudo apt-get update
sudo apt-get install curl

در حالی که curl به طور عادی از پایپ ها استفاده می کند ، می توانید به راحتی آن را تنظیم کنید که خروجی خود را در یک فایل نیز ذخیره کند. اگر در حال دانلود فایل ها برای سرور خود هستید ، احتمالاً این چیزی است که می خواهید. برای دانلود یک فایل و خروجی آن در یک فایل با همین نام ، تایپ کنید:
curl -O www.example.com/index.html

ما باید یک فایل را مشخص کنیم زیرا بدین ترتیب curl می داند که چه چیزی را به نام فایل محلی بنامد.
اگر بخواهیم نام محلی را انتخاب کنیم ، و اگر به دنبال فهرست دیرکتوری یک سایت هستیم ، دیگر نیازی نیست که آن را به یک فایل خاص اشاره کنیم. در عوض ، می توانیم به طور اختیاری به یک مکان مورد نظر اشاره کنیم و هر آنچه که این فهرست پیکربندی شده باید برگرداند، در فایل انتخاب شده ما قرار می گیرد
curl -o file.html www.example.com

این دستور همچنین برای دانلود فایل به نامی که می خواهید انتخاب کنید انجام می شود و فقط برای کار با فهرست های دیرکتوری مفید نیست. اگر به شما تغییر مسیر داده شد ، می توانید با استفاده از فلگ -L ، و فراخوانی curl این کار را انجام دهید.
نتیجه گیری
در حال حاضر ، می بینید که گزینه های کاملاً متفاوت برای دریافت نرم افزار ، داده و اطلاعات از طریق اینترنت روی سرور مجازی شما وجود دارد. در حالی که همه اینها قابلیت توانایی گرفتن مطالب از وب را دارند ، هیچکدام برای هر نوع دانلود و مصرفی مناسب نیستند.
شناختن امکانات موجود بسیار مفید است و می توانید از نقاط قوت هر راه حل برای موقعیت هایی که برای آن طراحی شده استفاده کنید. این به شما کمک می کند تا از انجام کارهای غیر ضروری خودداری کنید و در شیوه برخورد با یک مشکل به شما انعطاف پذیری می بخشد.

 

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

چگونه می توان با کتابخانه (library) درخواست ها در پایتون شروع به کار کرد

نحوه اجرای صفحه گذاری در MySQL با PHP روی اوبونتو 18.04

نحوه تنظیم پلتفرم Eclipse Theia Cloud IDE در CentOS 7

بسته بندی برنامه Laravel 6 برای توسعه با Docker Compose در اوبونتو 18.04

نحوه بهینه سازی درخواست های MySQL با ذخیره سازی ProxySQL در اوبونتو 16.04

نحوه استفاده از Ansible برای نصب و راه اندازی وردپرس با LAMP در اوبونتو 18.04

چگونه می توان پلتفرم کد سرور Cloud IDE را در اوبونتو 18.04 تنظیم کرد (شروع سریع)

چگونه می توان از رول های ansible برای انتزاع محیط زیرساختی خود استفاده کرد

نحوه پیکربندی یک خوشه Galera با MySQL در سرورهای اوبونتو 18.04

نحوه تهیه نسخه پشتیبان و بازیابی یک خوشه Kubernetes در vpsgol با استفاده از Velero

نحوه نصب و استفاده از PostgreSQL در CentOS 7

چگونه می توان پلتفرم Eclipse Theia Cloud IDE را روی اوبونتو 18.4 تنظیم کرد

نحوه استقرار و مدیریت DNS با استفاده از DNSControl در Debian 10

چگونه می توان پلتفرم Cloud IDE کد سرور را روی CentOS 7 تنظیم کرد

نحوه نصب Apache Kafka در Debian 10

نحوه نصب وردپرس با OpenLiteSpeed ​​در اوبونتو 18.04

چگونه پیکربندی SSH Daemon خود را بر روی یک VPS لینوکس تنظیم کنید

 

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

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

 

برچسب‌ها:

  • behnam gol mohamadi