Встановіть Plesk на CentOS 7
Використання іншої системи? Plesk — це власна панель керування веб-хостом, яка дозволяє користувачам адмініструвати свої персональні та/або клієнтські веб-сайти, бази даних
Internet Relay Chat (IRC) – це те, що існує з перших днів Інтернету. У цьому посібнику я покажу вам, як налаштувати IRC-сервер з InspIRCd за допомогою Atheme для додаткових послуг IRC. InspIRCd — це один із небагатьох серверів IRC, написаних з нуля, і один із небагатьох серверів IRC, який забезпечує настроювану кількість функцій за допомогою розширеної модульної системи.
InspIRCd повинен працювати з будь-яким розміром екземпляра. Мінімальні системні вимоги: процесор 700 МГц і 300 МБ оперативної пам’яті.
Увійшовши в систему як користувач sudo, ви можете оновити систему до останнього стабільного стану таким чином:
apt-get update && apt-get upgrade
Спочатку давайте трохи загартуємо VPS. Ми включимо ufw
та додамо кілька правил. Почнемо з налаштування портів:
ufw allow 22/tcp
ufw allow 6667/tcp
ufw enable
Брандмауер запропонує діалогове вікно прийняти зміни. Просто натисніть Yтак.
Command may disrupt existing ssh connections. Proceed with operation (y|n)?
Далі ми можемо встановити InspIRCd, для Ubuntu 16.04 цей пакет доступний через основне сховище.
apt-get install inspircd
Після завершення установки ми можемо приступити до налаштування служби. Основну конфігурацію можна знайти у /etc/inspircd/inspircd.conf
файлі та має макет файлу XML.
nano /etc/inspircd/inspircd.conf
Спочатку знайдіть server
тег. У цей тег ви вводите деталі вашого сервера/мережі, більшість із цих налаштувань видно вашим користувачам.
name
: ім'я хоста вашого сервера. Його не потрібно вирішувати, але має бути правильний синтаксис (наприклад: sub.example.net
).description
: Опис сервера. id
: SID для цього сервера. Це не можна розкоментувати, якщо немає конфлікту SID. Це має бути три символи. Першим символом має бути цифра [0-9], інші два символи можуть бути літерами [AZ] або цифрами.network
: Ім'я мережі, що надається при підключенні до клієнтів. Повинен бути однаковим на всіх серверах у мережі та не містити пробілів.У нашому посібнику ми будемо використовувати наступне:
<server name="irc.example.net"
description="My EXAMPLE.NET server"
id="5AA"
network="ExampleNET">
Замініть оригінальний тег на вищезазначений.
Далі знайдіть admin
тег. Ці налаштування є адміністративними деталями вашого сервера. Вони відображаються під час введення /ADMIN
команди.
name
: Справжнє ім'яnick
: Псевдонім (бажано те, що ви використовуєте в мережі).email
: електронна адреса. Не має бути дійсною, але ця адреса буде тією адресою, з якою ваші користувачі повинні зв’язатися з вами у разі виникнення проблем.Скористаємося адміністратором Xenial
:
<admin name="Xenial Xerius"
nick="xenial"
email="[email protected]">
Тепер перейдіть до bind address
. Цей тег використовується для відкриття сервісу. За замовчуванням ви побачите IP-адресу локального хоста ( 127.0.0.1
). Це означає, що зовнішній світ не може зв’язатися зі службою. Давайте відкриємо нашу службу, не використовуючи адреси взагалі. Це призведе до прив’язки служби до будь-якого інтерфейсу Ethernet, яким володіє машина:
<bind address="" port="6667" type="clients">
Наступним тегом буде power
тег. Цей тег визначає два паролі.
diepass
: Пароль, який оператори використовують, якщо вони хочуть вимкнути сервер.restartpass
: пароль для операторів, якщо їм потрібно перезапустити сервер.Найкраще змінити ці паролі за замовчуванням:
<power diepass="die123" restartpass="restart123" pause="2">
Останні налаштування, які ми будемо змінювати, це oper
налаштування. Вони визначають логіни оператора.
name
: логін оператора, який використовується для роботи (Приклад: /oper name password
).password
: нехешований і простий текстhost
: Які імена хостів/IP можна використовувати. Кілька параметрів можуть бути розділені пробілами, і CIDR допускається. Ви можете просто використовувати *
або @
для цього розділу.type
: Що це за тип опери. У наведеному вище блоці мають бути вже визначені три класи: NetAdmin
, GlobalOp
і Helper
. Це NetAdmin
той, який ми будемо використовувати.Змініть oper
тег, використовуючи наведений нижче вміст. Зауважте, що для нашого прикладу ми будемо використовувати " @
" для хоста. У виробничому середовищі не бажано використовувати це:
<oper name="xenial"
password="mypassword"
host="*@*"
type="NetAdmin">
Перш ніж перезапустити службу, відредагуйте файли motd
та rules
:
nano /etc/inspircd/inspircd.motd
Замініть його своїм, наприклад:
This is the motd of example.net. Here you can list planned outages or information your users need to know about this IRC server.
Нарешті відредагуйте файли правил.
nano /etc/inspircd/inspircd.rules
Додайте власні правила, наприклад:
The first rule of Fight Club is: You do not talk about Fight Club. The second rule of Fight Club is: You DO NOT TALK ABOUT FIGHT CLUB!
Тепер, коли все налаштовано, перезапустіть службу IRC:
service inspircd restart
Щоб переконатися, що все працює, запитайте netstat
інструмент:
netstat -tulpn | grep -i inspircd
Він повинен перерахувати програму inspircd
, яка прослуховує порт 6666
:
tcp6 0 0 :::6667 :::* LISTEN 31313/inspircd
udp 0 0 0.0.0.0:39335 0.0.0.0:* 31313/inspircd
Для тестування сервера ми можемо встановити термінальний IRC-клієнт. У Windows можна використовувати таку програму, як mIRC. У нашому прикладі ми будемо використовувати weechat. Це текстовий IRC-клієнт, який можна використовувати в термінальному сеансі.
Встановіть додаток weechat через репозиторії:
apt-get install weechat
Після встановлення цієї програми запустіть цей IRC-клієнт:
weechat
Щоб переглянути всі команди, які може запропонувати weechat, ви можете запитати команду довідки:
/help
Щоб вийти з weechat, ви можете ввести таку команду:
/quit
Додайте наш локальний сервер до з'єднання в weechat:
/server add local localhost
Тепер ми можемо підключитися до профілю підключення під назвою «локальний»:
/connect local
У вікні терміналу з’являться наші motd і правила.
Щоб підвищити себе до оператора, введіть наступне:
/oper xenial mypassword
Це покаже нам підтвердження успіху:
22:40:34 local -- | User mode [+o] by irc.example.net
22:40:34 local -- | You are now a NetAdmin
Ось і все для нашого IRC-сервера.
Atheme — це набір сервісів для мереж IRC, розроблених для великих мереж IRC з високими вимогами до масштабованості. Він додає додаткові послуги, такі як NickServ (реєстрація псевдонімів) до вашої мережі IRC.
Atheme можна знайти в репозиторії Ubuntu:
apt-get install atheme-services
Після встановлення двійкових файлів розпакуйте приклад файлу конфігурації та скопіюйте його до atheme
папки:
gunzip /usr/share/doc/atheme-services/examples/atheme.conf.example.gz
cp /usr/share/doc/atheme-services/examples/atheme.conf.example /etc/atheme/atheme.conf
Далі відредагуйте цей файл конфігурації:
nano /etc/atheme/atheme.conf
Спочатку знайдіть loadmodule
команду протоколу. Це слід визначити наступним чином:
loadmodule "modules/protocol/charybdis";
Замінити charybdis
на протокол inspircd
:
loadmodule "modules/protocol/inspircd12";
Наступний пошук послуги name
:
name = "services.int";
Змініть, services.int
щоб відповідати доменному імені або IP-адресі вашого IRC-сервера:
name = "services.irc.example.net";
Після цього знайдіть число:
numeric = "00A";
Now change it to a value different than the numeric used in the server tag used before.
numeric = "77C";
Once this is done, let's configure the network name. Search for netname
:
netname = "misconfigured network";
Change this value to the network parameter in the server tag.
netname = "ExampleNET";
Change the value of the hidehostsuffix
:
hidehostsuffix = "users.misconfigured";
Remove the .misconfigured
:
hidehostsuffix = "users";
Next change the admin name to the one we used before:
adminname = "xenial";
Match the adminemail
to the associated email used before:
adminemail = "[email protected]";
Now that this is done, we need to create an uplink for our services.
Find the two uplink
code blocks and comment them all out.
Add /*
before the uplink{
command and */
at the end of the closing brace.
It will look like the following:
/* this is an example for using an IPv6 address as an uplink */
/*
uplink "irc6.example.net" {
host = "::1";
password = "linkage";
port = 6667;
};
*/
Далі додайте нашу власну висхідну лінію. Цей висхідний канал працюватиме лише на IP-адресі нашого локального хоста та на порту 7001
. Вкажіть суперсекретний пароль (ми будемо використовувати його пізніше):
uplink "services.irc.example.net" {
host = "127.0.0.1";
// password
// If you want to have same send_password and accept_password, you
// can specify both using 'password' instead of individually.
password = "SuperSecret123456";
port = 7001;
};
Нарешті знайдіть визначення наших послуг. Почніть nickserv
спочатку з блоку.
У блоці nickserv знайдіть host
тег і змініть його на ExampleNet/services/NickServ
:
nickserv {
...<<truncated>>...
/* (*)host
* The hostname we want NickServ to have.
*/
host = "ExampleNet/services/NickServ";
/* (*)real
* The realname (gecos) information we want NickServ to have.
*/
real = "Nickname Services";
...<<truncated>>...
Змініть також hostname tag
для всіх інших служб:
nickserv: ExampleNet/services/NickServ
chanserv: ExampleNet/services/ChanServ
global: ExampleNet/services/Global
infoserv: ExampleNet/services/InfoServ
operserv: ExampleNet/services/OperServ
saslserv: ExampleNet/services/SaslServ
memoserv: ExampleNet/services/MemoServ
gameserv: ExampleNet/services/GameServ
botserv: ExampleNet/services/BotServ
groupserv: ExampleNet/services/GroupServ
hostserv: ExampleNet/services/HostServ
helpserv: ExampleNet/services/HelpServ
alis: ExampleNet/services/ALIS
Як тільки це буде зроблено, збережіть і закрийте конфігураційний файл.
Щоб перевірити все це, запустіть atheme-services
двійковий файл:
atheme-services
Це повинно точно сказати, працює це чи ні. Якщо ви не отримуєте результат, як показано нижче, поверніться назад і перевірте наявність помилок у файлі конфігурації:
[19/02/2018 23:06:24] db-open-read: database '/var/lib/atheme/services.db' does not yet exist; a new one will be created.
[19/02/2018 23:06:24] pid 1929
[19/02/2018 23:06:24] running in background mode from /
Тепер увімкніть службу, відредагувавши файл служб:
nano /etc/default/atheme-services
Змініть ENABLED
значення:
DAEMON_OPTS=""
ENABLED=1
Тепер ми можемо запустити службу:
service atheme-services restart
Перевірте його статус:
service atheme-services status
Це поверне аналогічні результати:
● atheme-services.service - LSB: Atheme-services daemon init.d script
Loaded: loaded (/etc/init.d/atheme-services; bad; vendor preset: enabled)
Active: active (running) since Wed 2018-02-19 23:45:05 UTC; 8s ago
Docs: man:systemd-sysv-generator(8)
Feb 19 23:45:05 vultr.guest atheme-services[2810]: Starting Atheme IRC Services: atheme-service
Feb 19 23:45:05 vultr.guest atheme-services[2810]: [19/02/2018 23:45:05] atheme 6.0.11 is start
Feb 19 23:45:05 vultr.guest atheme-services[2810]: [19/02/2018 23:45:05] Module operserv/sgline
Feb 19 23:45:05 vultr.guest atheme-services[2810]: [19/02/2018 23:45:05] module_load(): module
Feb 19 23:45:05 vultr.guest atheme-services[2810]: [19/02/2018 23:45:05] /etc/atheme/atheme.con
Feb 19 23:45:05 vultr.guest atheme-services[2810]: [19/02/2018 23:45:05] db-open-read: database
Feb 19 23:45:05 vultr.guest atheme-services[2810]: [19/02/2018 23:45:05] pid 2824
Feb 19 23:45:05 vultr.guest atheme-services[2810]: [19/02/2018 23:45:05] running in background
Feb 19 23:45:05 vultr.guest atheme-services[2810]: .
Feb 19 23:45:05 vultr.guest systemd[1]: Started LSB: Atheme-services daemon init.d script.
Перш ніж ми закінчимо, нам потрібно додати наші служби Atheme до InspIRCd:
nano /etc/inspircd/inspircd.conf
В кінці файлу додайте такі рядки:
<bind address="127.0.0.1" port="7001" type="servers">
<uline server="services.irc.example.net">
<link name="services.irc.example.net"
ipaddr="127.0.0.1"
port="7001"
allowmask="127.0.0.1"
sendpass="SuperSecret123456"
recvpass="SuperSecret123456">
<chanprotect noservices="no"
qprefix="~"
aprefix="&">
# Modules needed for services to function
<module name="m_chanprotect.so">
<module name="m_halfop.so">
<module name="m_services_account.so">
<module name="m_deaf.so">
<module name="m_spanningtree.so">
<module name="m_globops.so">
<module name="m_cban.so">
<module name="m_svshold.so">
<module name="m_hidechans.so">
<module name="m_servprotect.so">
<module name="m_chghost.so">
<module name="m_namesx.so">
<module name="m_uhnames.so">
Тепер перезапустіть службу InspIRCd:
service inspircd restart
Переконайтеся, що все працює нормально:
service inspircd status
Тепер знову запустіть наш клієнт Weechat:
weechat
Підключіться до нашого локального сервера:
/connect local
Ви побачите, що відразу з’явиться один із наших сервісів Atheme: NickServ. Він зустріне вас інформацією про себе.
23:12:48 local -- | NickServ (NickServ@ExampleNet/services/NickServ): Welcome to ExampleNet,
| root! Here on ExampleNet, we provide services to enable the registration of
| nicknames and channels! For details, type /msg NickServ help and /msg
| ChanServ help.
Ви можете зробити запит NickServ і знайти доступні команди за допомогою наступного:
/msg NickServ help
Використання іншої системи? Plesk — це власна панель керування веб-хостом, яка дозволяє користувачам адмініструвати свої персональні та/або клієнтські веб-сайти, бази даних
Вступ Lets Encrypt — це служба центру сертифікації, яка пропонує безкоштовні сертифікати TLS/SSL. Certbot спрощує процес встановлення,
Використання іншої системи? Що таке Tekkit Classic? Tekkit Classic — це модпак для гри, яку всі знають і люблять; Майнкрафт. Він містить деякі з вер
PHP та пов’язані з ним пакети є найбільш часто використовуваними компонентами під час розгортання веб-сервера. У цій статті ми дізнаємося, як налаштувати PHP 7.0 або PHP 7.1 o
Вступ Lighttpd — це форк Apache, який має набагато меншу ресурсомісткість. Він легкий, звідси його назва, і досить простий у використанні. Встановити
1. Virtualmin/Webmin Virtualmin — це потужна та гнучка панель керування веб-хостингом для систем Linux та UNIX на основі відомої веб-бази з відкритим вихідним кодом.
Yii — це PHP-фреймворк, який дозволяє розробляти програми швидше та легше. Установка Yii на Ubuntu проста, як ви дізнаєтеся
Screen — це програма, яка дозволяє багаторазово використовувати термінальні сеанси в одному вікні. Це дозволяє моделювати декілька вікон терміналу, де це ma
Вступ Logrotate — це утиліта для Linux, яка спрощує адміністрування файлів журналів. Зазвичай він запускається раз на день через завдання cron і керує базою журналів
Використання іншої системи? Apache Cassandra — це безкоштовна система керування базами даних NoSQL з відкритим вихідним кодом, яка розроблена для забезпечення масштабованості, високої
Використання іншої системи? Vanilla forum — це програма з відкритим вихідним кодом, написана на PHP. Це повністю настроюваний, простий у використанні та підтримує зовнішній вигляд
Використання іншої системи? Вступ Kanboard — це безкоштовна програма з відкритим вихідним кодом для управління проектами, яка призначена для полегшення та візуалізації
Використання іншої системи? Gitea — це альтернативна система контролю версій із відкритим вихідним кодом, яка працює на базі git. Gitea написана на Голанг і є
Використання іншої системи? Docker — це програма, яка дозволяє розгортати програми, які запускаються як контейнери. Це було написано в популярному програмі Go
Що таке Dirty Cow (CVE-2016-5195)? Уразливість Dirty Cow використовується через те, як Linux обробляє код. Це дозволяє непривілейованому користувачеві використовувати gai
Наявність лише одного користувача, який є root, може бути небезпечним. Тож давайте це виправимо. Vultr надає нам свободу робити з нашими користувачами та нашими серверами, що нам заманеться
Adminer — це легка альтернатива phpMyAdmin. Для порівняння, його загальний розмір пакета становить 400 КБ проти 4,2 МБ phpMyAdmin. На відміну від phpMyAdmin, який
У цьому посібнику ви дізнаєтеся, як налаштувати автентифікацію HTTP для веб-сервера Nginx, що працює на CentOS 7. Вимоги Щоб почати, вам знадобиться
У цьому посібнику ви навчитеся інсталювати програмне забезпечення NextCloud. Ми будемо використовувати Caddy для потреб нашого веб-сервера, оскільки це спрощує налаштування
Використання іншої системи? GoAccess — це аналізатор веб-журналів з відкритим вихідним кодом. Ви можете використовувати його для аналізу журналів у режимі реального часу в терміналі або
Штучний інтелект не в майбутньому, він тут прямо в сьогоденні У цьому блозі Прочитайте, як програми штучного інтелекту вплинули на різні сектори.
Ви також стали жертвою DDOS-атак і спантеличені методами запобігання? Прочитайте цю статтю, щоб вирішити свої запитання.
Можливо, ви чули, що хакери заробляють багато грошей, але чи замислювалися ви коли-небудь, як вони заробляють такі гроші? давайте обговоримо.
Ви хочете побачити революційні винаходи Google і як ці винаходи змінили життя кожної людини сьогодні? Тоді читайте в блозі, щоб побачити винаходи Google.
Концепція самокерованих автомобілів, щоб вирушати в дороги за допомогою штучного інтелекту, є мрією, яку ми давно мріємо. Але, незважаючи на кілька обіцянок, їх ніде не видно. Прочитайте цей блог, щоб дізнатися більше…
Оскільки наука розвивається швидкими темпами, бере на себе багато наших зусиль, ризики піддати себе незрозумілій Сингулярності також зростає. Читайте, що може означати для нас сингулярність.
Методи зберігання даних можуть розвиватися з моменту народження Даних. Цей блог висвітлює еволюцію зберігання даних на основі інфографіки.
Прочитайте блог, щоб дізнатися про різні шари архітектури великих даних та їх функціональні можливості найпростішим способом.
У цьому цифровому світі пристрої розумного дому стали важливою частиною життя. Ось кілька дивовижних переваг пристроїв розумного дому щодо того, як вони роблять наше життя гідним життя та спрощують його.
Нещодавно Apple випустила додаткове оновлення macOS Catalina 10.15.4, щоб виправити проблеми, але схоже, що оновлення викликає більше проблем, що призводять до блокування комп’ютерів Mac. Прочитайте цю статтю, щоб дізнатися більше