Встановіть Plesk на CentOS 7
Використання іншої системи? Plesk — це власна панель керування веб-хостом, яка дозволяє користувачам адмініструвати свої персональні та/або клієнтські веб-сайти, бази даних
TaskWarrior — це інструмент керування часом з відкритим вихідним кодом, який є вдосконаленням програми Todo.txt та її клонів. У зв’язку з тим, що середня людина використовує кілька пристроїв/платформ у своєму щоденному розкладі, важливо мати можливість мати централізоване сховище, де можна отримати доступ до даних та оновити їх із будь-якого пристрою. У цьому підручнику буде зосереджено на налаштуванні сервера, який називається TaskServer (taskd), і клієнта під назвою TaskWarrior (завдання), що дозволяє кільком клієнтським пристроям безпечно отримувати доступ до даних і обмінюватися ними.
Він має такі особливості:
Увійдіть як ваш користувач sudo, щоб встановити репозиторій EPEL та оновити систему наступним чином:
sudo yum install epel-release -y
sudo yum clean all && sudo yum update -y
Репозиторій EPEL не містить RPM для TaskServer (taskd), тому ми повинні самі побудувати його з джерела в пакет RPM.
Встановіть інструменти GCC, Make, RPM Build, розробку та підписання.
sudo yum install gcc gcc-c++ make rpmdevtools rpm-sign rpm-build -y
Створіть каталог GnuPG, який міститиме файли GPG, необхідні для підписання нашого RPM.
mkdir .gnupg
При створенні ключа нам потрібна ентропія в системі, щоб правильно його рандомізувати. rngd
Демон генерує ентропії необхідно з /dev/urandom
. Тож давайте встановимо це зараз.
yum install rngd -y
Запустіть rngd
демон для створення ентропії. Параметр -r вказує на /dev/urandom
замість значення за замовчуванням /dev/hwrng
.
sudo rngd -r /dev/urandom
Згенеруйте ключ. Параметр --gen-key повідомляє gpg генерувати нову пару ключів.
gpg --gen-key
Для параметра " Будь ласка, виберіть тип ключа, який ви хочете: " виберіть " (1) RSA і RSA (за замовчуванням) " для типу ключа, ввівши 1 і натиснувши клавішу Return/Enter .
Для параметра " Який розмір ключа ви хочете? (2048) " виберіть значення за замовчуванням, натиснувши клавішу Return/Enter .
Для параметра " Будь ласка, вкажіть, як довго ключ має бути дійсним ", виберіть значення за замовчуванням, натиснувши клавішу Return/Enter .
Для параметра « Це правильно? (y/N) » введіть y та натисніть клавішу Return/Enter .
У розділі " Справжнє ім'я: " введіть потрібне ім'я та натисніть клавішу Return/Enter .
У розділі « Адреса електронної пошти: » введіть вибрану адресу електронної пошти та натисніть клавішу повернення/введення .
За бажанням розділ « Коментар:» можна залишити порожнім.
Внесіть необхідні зміни, якщо ви ввели неправильну інформацію. Якщо ви задоволені відображеною інформацією USER-ID , введіть O (велика літера O, а не нуль) і натисніть клавішу Return/Enter .
Тепер GnuPG запропонує вам створити та перевірити пароль для вашої пари ключів.
Після того, як ви введете свої паролі, ваша пара ключів GnuPG буде створена в .gnupg
каталозі у вашому каталозі користувача.
Виконайте цю команду, щоб відобразити вміст .gnupg
каталогу. Він повинен містити такий каталог private-keys-v1.d
і файли pubring.gpg
, pubring.gpg~
, random_seed
, secring.gpg
, S.gpg-agent
, trustdb.gpg
.
ls -la .gnupg
Експортуйте створену пару ключів. Параметр --export наказує GnuPG експортувати пару ключів. Параметр -a вказує GnuPG вивести пару ключів у форматі броні ascii . Замініть " Joe Q. Public " на ім'я, яке ви ввели під час створення пари ключів на кроці № 10 вище. Замініть " jqpublic " будь-яким текстом, який ви виберете.
gpg --export -a 'Joe Q. Public' > RPM-GPG-KEY-jqpublic
Імпортуйте пару ключів у сховище ключів RPM. Замініть " jqpublic " текстом, який ви вибрали на кроці № 17.
sudo rpm --import RPM-GPG-KEY-jqpublic
Переконайтеся, що пара ключів була додана до сховища ключів RPM. Параметр --q gpg-pubkey запитує сховище ключів RPM GnuPG. % {Ім'я} -% {версія} -% {випуск} ->% {Резюме} \ п відображає результат в легкому для читання форматі.
rpm -q gpg-pubkey --qf '%{name}-%{version}-%{release} --> %{summary}\n'
Створивши .rpmmacros file
, RPM можна налаштувати для виконання призначених поведінок (наприклад: полегшити автоматичне підписання RPM). Використовуйте nano
програму для створення файлу.
nano .rpmmacros
Потім додайте наступний текст нижче до .rpmmacros
файлу.
%_gpg_name Joe Q. Public
%_query_all_fmt %%{name}-%%{version}-%%{release}.%%{arch}
%_signature gpg
%_topdir %(echo $HOME)/rpmbuild
Збережіть документ, ввівши наступні комбінації клавіатури. У CTRL + X Ключі. Потім клавіша S. Нарешті, клавіша повернення/введення .
Ця команда нижче налаштує ваше середовище збірки RPM. Це додасть додаткові макроси до .rpmmacros
файлу, який ви створили на кроці №20, і створить необхідні каталоги для створення та зберігання RPM.
rpmdev-setuptree
Виконайте цю команду, щоб відобразити вміст каталогу rpmbuild. Він повинен містити такі каталоги SOURCES , RPMS , BUILD , SRPMS і SPECS .
find rpmbuild
Завантажте вихідний код TaskServer (taskd) до rpmbuild/SOURCES
каталогу.
wget https://taskwarrior.org/download/taskd-1.1.0.tar.gz -P rpmbuild/SOURCES/
Припиніть запущений rgnd
процес.
sudo kill -9 rngd
Щоб створити новий RPM з джерела, необхідно створити файл SPEC TaskServer (taskd).
nano rpmbuild/SPECS/taskd.spec
Додайте наведений нижче текст у taskd.spec
файл.
Name: taskd
Version: 1.1.0
Release: 1%{?dist}
Summary: Secure server providing multi-user, multi-client access to task data
Group: Applications/Productivity
License: MIT
URL: http://tasktools.org/projects/taskd.html
Source0: http://taskwarrior.org/download/%{name}-%{version}.tar.gz
Source1: taskd.service
Source2: taskd-config
Source3: taskd.xml
BuildRequires: cmake
BuildRequires: libuuid-devel
BuildRequires: gnutls-devel
BuildRequires: shadow-utils
%if 0%{?rhel} && 0%{?rhel} <= 6
# On rhel, we don't need systemd to build. but we do on centos.
# ...just to define some macros
%else
BuildRequires: systemd
%endif
# For certificate generation
Requires: gnutls-utils
# Systemd requires
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
%description
The TaskServer is a lightweight, secure server providing multi-user,
multi-client access to task data. This allows true syncing between desktop and
mobile clients.
Users want task list access from multiple devices running software of differing
sophistication levels to synchronize data seamlessly. Synchronization requires
the ability to exchange transactions between devices that may not have
continuous connectivity, and may not have feature parity.
The TaskServer provides this and builds a framework to go several steps beyond
merely synchronizing data.
%prep
%setup -q %{name}-%{version}
%build
%cmake
make %{?_smp_mflags}
%install
make install DESTDIR=%{buildroot}
mkdir -p %{buildroot}%{_sharedstatedir}/taskd/
# Users will keep their keys here, but we copy some helpful scripts too.
mkdir -p %{buildroot}%{_sysconfdir}/pki/taskd/
cp -a pki/generate* %{buildroot}%{_sysconfdir}/pki/taskd/.
mkdir -p %{buildroot}%{_localstatedir}/log/taskd/
%if 0%{?rhel} && 0%{?rhel} <= 6
# EL6 and earlier needs a sysvinit script
# Also, no firewalld on old EL
%else
mkdir -p %{buildroot}%{_unitdir}/
cp -a %{SOURCE1} %{buildroot}%{_unitdir}/taskd.service
mkdir -p %{buildroot}%{_prefix}/lib/firewalld/services
cp -a %{SOURCE3} %{buildroot}%{_prefix}/lib/firewalld/services/taskd.xml
%endif
mkdir -p %{buildroot}%{_sharedstatedir}/taskd/orgs/
cp -a %{SOURCE2} %{buildroot}%{_sharedstatedir}/taskd/config
rm -r %{buildroot}%{_datadir}/doc/taskd/
%pre
getent group taskd >/dev/null || groupadd -r taskd
getent passwd taskd >/dev/null || \
useradd -r -g taskd -d %{_sharedstatedir}/taskd/ -s /usr/bin/sh \
-c "Task Server system user" taskd
exit 0
# Systemd scriptlets
%if 0%{?rhel} && 0%{?rhel} <= 6
# No systemd for el6
%else
%post
%systemd_post taskd.service
%preun
%systemd_preun taskd.service
%postun
%systemd_postun_with_restart taskd.service
%endif
%files
%doc AUTHORS COPYING ChangeLog NEWS README
%{_bindir}/taskd
%{_bindir}/taskdctl
%{_mandir}/man1/taskd.1.*
%{_mandir}/man1/taskdctl.1.*
%{_mandir}/man5/taskdrc.5.*
%{_sysconfdir}/pki/taskd/generate*
%dir %attr(0750, taskd, taskd) %{_sysconfdir}/pki/taskd/
%dir %attr(0750, taskd, taskd) %{_localstatedir}/log/taskd/
%dir %attr(0750, taskd, taskd) %{_sharedstatedir}/taskd/
%config(noreplace) %attr(0644, taskd, taskd) %{_sharedstatedir}/taskd/config
%dir %attr(0750, taskd, taskd) %{_sharedstatedir}/taskd/orgs/
%if 0%{?rhel} && 0%{?rhel} <= 6
# No sysvinit files for el6
%else
%{_unitdir}/taskd.service
%{_prefix}/lib/firewalld/services/taskd.xml
%endif
%changelog
* Thu Aug 17 2017 Jarrett Graham <[email protected]> - 1.1.0
- Initial packaging.
The RPM also requires three additional files that must be created in the rpmbuild/SOURCES
directory. Use the nano
program to create the taskd-config
file.
nano rpmbuild/SOURCES/taskd-config
Add the following text below into the taskd-config
file.
# taskd configuration file
confirmation=1
verbose=1
ip.log=on
extensions=/usr/libexec/taskd
queue.size=10
request.limit=1048576
server=0.0.0.0:53589
root=/var/lib/taskd
log=/var/log/taskd/taskd.log
pid.file=/var/run/taskd.pid
ca.cert=/etc/pki/taskd/ca.cert.pem
server.cert=/etc/pki/taskd/server.cert.pem
server.key=/etc/pki/taskd/server.key.pem
server.crl=/etc/pki/taskd/server.crl.pem
Use the nano
program to create the taskd.service
file.
nano rpmbuild/SOURCES/taskd.service
Add the following text below into the taskd.service
file.
[Unit]
Description=Secure server providing multi-user, multi-client access to task data
After=network.target
Documentation=https://tasktools.org/projects/taskd.html
[Service]
ExecStart=/usr/bin/taskd server --data /var/lib/taskd
Type=simple
User=taskd
Group=taskd
[Install]
WantedBy=multi-user.target
Use the nano
program to create the taskd.xml
file.
nano rpmbuild/SOURCES/taskd.xml
Add the following text below into the taskd.xml
file.
<?xml version="1.0" encoding="utf-8"?>
<service>
<short>Task-warrior server</short>
<description>This option allows you to connect to the task warrior server.</description>
<port protocol="tcp" port="53589"/>
</service>
In order to build the TaskServer (taskd) RPM, three packages are required for building. Run the command below to install those packages.
sudo yum install cmake libuuid-devel gnutls-devel gnutls-utils -y
Now it is time to build from source and create an RPM for TaskServer (taskd). Run the commands below to get started. It should take less than a minute on a 1x CPU Vultr instance to build the RPMs. Enter the GnuPG password you created in step #14 to sign the RPM when prompted.
cd rpmbuild/SPECS/
rpm -ba -sign taskd.spec
Install the TaskServer (taskd) RPM.
cd
sudo rpm -ivh rpmbuild/RPMS/x86_64/taskd-1.1.0-1.el7.centos.x86_64.rpm
In order for TaskServer (taskd) to communicate and sync with TaskWarrior (task) clients, you will need to use the generation scripts found under /etc/pki/taskd/
to generate server and client certificates/keys. Elevate to the root user using the command below and change directory to /etc/pki/taskd
.
sudo su -
cd /etc/pki/taskd/
Use the nano
program to create a vars
file in order to generate a self-signed Root CA.
nano vars
Add the following text below into the vars file. Change ORGANIZATION, CN, COUNTRY, STATE and LOCALITY to your satisfaction.
BITS=4096
EXPIRATION_DAYS=365
ORGANIZATION="Vultr.com Inc."
CN=taskd.example.com
COUNTRY=US
STATE="New York"
LOCALITY="New York"
Generate the self-signed Root CA, certificate, server key and server revocation list (optional).
./generate.ca
./generate.server
./generate.crl
These commands will create the following files (ca.cert.pem
, ca.key.pem
, server.cert.pem
, server.key.pem
and server.crl.pem
) inside the /etc/pki/taskd/
directory. In order for TaskServer (taskd) to start, the ownership and permissions on the certificates and keys generated in step #37 must be modified to allow TaskServer (taskd) to access them. Run the commands below to change them.
chown taskd.taskd ca.cert.pem ca.key.pem server.cert.pem server.crl.pem server.key.pem
chmod 400 ca.cert.pem ca.key.pem server.cert.pem server.crl.pem server.key.pem
Enable and start the TaskServer (taskd) daemon.
systemctl enable taskd
systemctl start taskd
Open the port in the firewall TaskServer (taskd) runs on.
firewall-cmd --permanent --zone=public --add-port=53589/tcp
firewall-cmd --reload
TaskServer (taskd) is now installed and setup on your CentOS 7 instance.
You must create client certificates and key to encrypt communications between TaskServer (taskd) and TaskWarrior (task). Run the command below to generate a client certificate and key. Replace NAME
with a name you can easily recognize for your client.
generate.client NAME
This command will create the following files (NAME.cert.pem
, NAME.key.pem
) inside of the /etc/pki/taskd/
directory.
Copy the following files to your user directory, change the ownership and permissions. Substitute joeqpublic below with your actual username directory.
cp ca.cert.pem NAME.cert.pem NAME.key.pem /home/joeqpublic/
chown joeqpublic.joeqpublic /home/joeqpublic/*.pem
chmod 400 /home/joeqpublic/*.pem
Create a zip archive of the certificates and key.
zip certficates.zip ca.cert.pem NAME.cert.pem NAME.key.pem
Use scp
(command line) or WinSCP (GUI frontend for SCP) to download the certificates.zip
file from your CentOS instance to your client device (computer/laptop/smartphone).
Drop root privileges and perform the rest of your commands as your regular user.
exit
TaskServer (taskd) is now setup and ready for TaskWarrior (task) clients to connect.
In order to create, delete, modify and sync your tasks, you will need a user account. However, before you can add users, you will first need to create an organizational group. Run the command below to create your first group. Replace GROUP with an easily recognizable name.
IMPORTANT! The taskd
command to create groups/users must be ran as the taskd
user. Running as the root user will create directories and files owned by the root user under /var/lib/taskd/orgs
which will prevent TaskWarrior (task) clients from being able to access or modify anything in the group to which they have been assigned. Access will be denied.
sudo -u taskd taskd add org GROUP --data /var/lib/taskd
Now, that you've created your first group, let's create your first user. Run the command below to create a user assigned to the group created in step #1. Copy and paste the generated user key, user and group in a text file. Repeat the process to add additional users.
sudo -u taskd taskd add user GROUP 'Joe. Q. Public' --data /var/lib/taskd
To use TaskWarrior (task) on Windows 10, you need to install the Windows Subsystem For Linux from the Windows Store.
To install WSL, an elevated Powershell prompt is required. Press the Window Key and type powershell. Right click on Windows Powershell at the top of the results and select "Run as administrator". At the User Account Control prompt, click Yes. Copy and paste the text found below in the Powershell windows. When WSL finishes installing, press the Y Key to restart Windows.
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Після перезавантаження відкрийте командний рядок і введіть таку команду bash . Це встановить Ubuntu на Windows. Натисніть Y Key . Тепер його буде завантажено та розпаковано. Виберіть ім'я користувача та пароль.
bash
Тепер настав час встановити TaskWarrior (завдання). Введіть таку команду всередині консолі.
sudo apt-get install task -y
Двічі введіть exit, щоб вийти з терміналу bash і командного рядка Windows.
Натисніть кнопку меню «Пуск». Введіть ubuntu . Клацніть правою кнопкою миші на Bash в Ubuntu в Windows . Виберіть Закріпити на панелі завдань . Це забезпечує зручність для швидкого доступу до bash для доступу до TaskWarrior (завдання).
Натисніть на щойно створену піктограму Ubuntu на панелі завдань. Це відкриє вікно терміналу під керуванням Bash. Введіть таку команду нижче, щоб створити каталог даних TaskWarrior (завдання) ( ~/.task/
) і файл конфігурації ( .taskrc
).
task version
yes
Вам потрібно перемістити certificates.zip
файл, який ви зберегли раніше під час налаштування TaskServer, у ~/.taskd/
каталог всередині вашого каталогу користувача. Щоб витягти файли з zip-файлу, unzip
спочатку встановіть програму. Скопіюйте та вставте наведені нижче команди, замінивши фактичне розташування вашої копії certificates.zip
.
sudo apt-get install unzip -y
cp /mnt/c/User/WINDOWSUSER/Desktop/certificates.zip .
cd .task
unzip ../certificates.zip
cd
Введіть наступні команди, щоб налаштувати TaskWarrior (завдання) для підключення до TaskServer (taskd). Замініть NAME на те, що ви назвали своєму сертифікату та ключу, GROUP на створену групу, Joe Q. Public на ім’я користувача, яке ви створили, і XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX на ключ, призначений, коли ваш користувач було створено на сервері TaskWarrior (taskd).
task config taskd.ca -- ~/.task/ca.cert.pem
task config taskd.certificate -- ~/.task/**NAME**.cert.pem
task config taskd.key -- ~/.task/**NAME**.key.pem
task config taskd.server -- taskd.example.com:53589
task config taskd.credentials -- GROUP/Joe Q. Public/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX
Тепер настав час синхронізувати TaskWarrior (завдання) з TaskServer (taskd). Виконайте наведену нижче команду, щоб ініціалізувати базу даних.
task sync init
Синхронізація між клієнтом TaskWarrior (завдання) і TaskServer (taskd) тепер налаштована на платформі Windows 10.
Щоб використовувати TaskWarrior (завдання) на Android, вам потрібно встановити TaskWarrior для Android із магазину Google Play.
Установіть програму TaskWarrior (завдання) для Android у Google Play Store.
Відкрийте програму TaskWarrior (завдання) для Android.
Програма запропонує вам створити обліковий запис із бажаною назвою облікового запису . Введіть ім’я, яке ви вибрали під час створення імені користувача для користувача TaskServer (taskd).
Залиште для папки даних значення за замовчуванням <<Створити новий>> і натисніть кнопку OK . Використовуйте програму менеджера файлів, щоб створити папку в кореневому сховищі (наприклад: /storage/emulate/0/Certs
). Надішліть програму у фоновий режим.
Скопіюйте certificates.zip
файл, який ви створили раніше, і розпакуйте його вміст у свій каталог, створений на кроці №4.
На передньому плані програма «TaskWarrior (завдання) для Android» і торкніться меню у верхньому лівому куті програми, щоб відкрити його.
Прокрутіть вниз до нижньої частини меню та торкніться параметра Налаштування .
Це відкриє простий вбудований текстовий редактор програми TaskWarrior For Android.
Введіть наступні параметри, щоб налаштувати синхронізацію з TaskServer (taskd). Замініть змінні taskd.ca
/ taskd.certificate
/taskd.key` на фактичний шлях(и) до каталогу ca/certificate/key, NAME — на те, що ви назвали своєму сертифікату та ключу, GROUP — на створену групу, Joe Q. Public — на створене вами ім’я користувача та XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX з ключем, призначеним під час створення користувача на сервері TaskWarrior (taskd).
taskd.ca=/storage/emulate/0/Certs/ca.cert.pem
taskd.certificate=/storage/emulate/0/Certs/NAME.cert.pem
taskd.credentials=GROUP/Joe Q. Public/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
taskd.key=/storage/emulate/0/Certs/NAME.key.pem
taskd.server=taskd.example.com:53589
Синхронізація між клієнтом TaskWarrior (завдання) і TaskServer (taskd) тепер налаштована на платформі Android.
Зверніться до розділу дистрибутива TaskWarrior (завдання), щоб встановити його для вашого конкретного дистрибутива Linux .
Відкрийте вікно терміналу. Введіть таку команду нижче, щоб створити каталог даних TaskWarrior (завдання) ( ~/.task/
) і файл конфігурації ( .taskrc
).
task version
yes
Вам потрібно перемістити certificates.zip
файл, який ви зберегли раніше в налаштуваннях TaskServer, до ~/.taskd/
каталогу всередині вашого каталогу користувача. Щоб витягти файли з zip-файлу, unzip
спочатку встановіть програму для вашого конкретного дистрибутива. Скопіюйте та вставте наведені нижче команди, замінивши фактичне розташування вашої копії certificates.zip
.
cp /location/of/certificates.zip .
cd .task
unzip ../certificates.zip
cd
Введіть наступні команди, щоб налаштувати TaskWarrior (завдання) для підключення до TaskServer (taskd). Замініть NAME на те, що ви назвали своєму сертифікату та ключу, GROUP на створену вами групу, Joe Q. Public на ім’я користувача, яке ви створили, і XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX на ключ, призначений, коли ваш користувач було створено на сервері TaskWarrior (taskd).
task config taskd.ca -- ~/.task/ca.cert.pem
task config taskd.certificate -- ~/.task/**NAME**.cert.pem
task config taskd.key -- ~/.task/**NAME**.key.pem
task config taskd.server -- taskd.example.com:53589
task config taskd.credentials -- GROUP/Joe Q. Public/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX
Тепер настав час синхронізувати TaskWarrior (завдання) з TaskServer (taskd). Виконайте наведену нижче команду, щоб ініціалізувати базу даних.
task sync init
Додаток: якщо ви запускаєте Gnome Shell, є розширення під назвою TaskWhisper, яке інтегрується з TaskWarrior (завдання).
Синхронізація між вашим клієнтом TaskWarrior (завдання) і TaskServer (taskd) тепер налаштована на вашому улюбленому дистрибутиві Linux.
Використання іншої системи? Plesk — це власна панель керування веб-хостом, яка дозволяє користувачам адмініструвати свої персональні та/або клієнтські веб-сайти, бази даних
Squid — популярна безкоштовна програма для Linux, яка дозволяє створювати веб-проксі для переадресації. У цьому посібнику ви дізнаєтеся, як встановити Squid на CentOS, щоб перетворити вас
Вступ Lighttpd — це форк Apache, який має набагато меншу ресурсомісткість. Він легкий, звідси його назва, і досить простий у використанні. Встановити
VULTR нещодавно вніс зміни на свою сторону, і тепер усе має працювати нормально з коробки з увімкненим NetworkManager. Якщо ви бажаєте вимкнути
Icinga2 — це потужна система моніторингу, і при використанні в моделі «майстер-клієнт» вона може замінити потребу в перевірках моніторингу на основі NRPE. Майстер-клієнт
Використання іншої системи? Apache Cassandra — це безкоштовна система керування базами даних NoSQL з відкритим вихідним кодом, яка розроблена для забезпечення масштабованості, високої
Використання іншої системи? Microweber — це CMS та інтернет-магазин із відкритим вихідним кодом. Вихідний код Microweber розміщено на GitHub. Цей посібник покаже вам
Використання іншої системи? Vanilla forum — це програма з відкритим вихідним кодом, написана на PHP. Це повністю настроюваний, простий у використанні та підтримує зовнішній вигляд
Використання іншої системи? Mattermost — це автономна альтернатива службі обміну повідомленнями Slack SAAS з відкритим кодом. Іншими словами, з Mattermost ви бл
Панель керування Plesk має дуже гарну інтеграцію для Lets Encrypt. Lets Encrypt є одним із єдиних постачальників SSL, які надають сертифікати повністю
Lets Encrypt — це центр сертифікації, який надає безкоштовні сертифікати SSL. cPanel створив чітку інтеграцію, щоб ви і ваш клієнт
Використання іншої системи? Concrete5 — це CMS з відкритим вихідним кодом, яка пропонує багато відмінних і корисних функцій, які допомагають редакторам легко створювати вміст.
Використання іншої системи? Review Board — це безкоштовний інструмент з відкритим кодом для перегляду вихідного коду, документації, зображень та багато іншого. Це веб-програмне забезпечення
У цьому посібнику ви дізнаєтеся, як налаштувати автентифікацію HTTP для веб-сервера Nginx, що працює на CentOS 7. Вимоги Щоб почати, вам знадобиться
Використання іншої системи? GoAccess — це аналізатор веб-журналів з відкритим вихідним кодом. Ви можете використовувати його для аналізу журналів у режимі реального часу в терміналі або
YOURLS (Your Own URL Shortener) — програма для скорочення URL-адрес і аналізу даних із відкритим вихідним кодом. У цій статті ми розглянемо процес встановлення
Використання іншої системи? Вступ ArangoDB — це відкрита база даних NoSQL з гнучкою моделлю даних для документів, графіків і ключів-значень. це є
Вступ Каталог /etc/ відіграє важливу роль у функціонуванні системи Linux. Причина цього в тому, що майже кожна конфігурація системи
Багато системних адміністраторів керують великою кількістю серверів. Якщо потрібно отримати доступ до файлів на різних серверах, увійти на кожен окремо бл
У цьому посібнику буде описано процес встановлення ігрового сервера Half Life 2 на систему CentOS 6. Крок 1: Встановлення необхідних умов Щоб налаштувати ou
Штучний інтелект не в майбутньому, він тут прямо в сьогоденні У цьому блозі Прочитайте, як програми штучного інтелекту вплинули на різні сектори.
Ви також стали жертвою DDOS-атак і спантеличені методами запобігання? Прочитайте цю статтю, щоб вирішити свої запитання.
Можливо, ви чули, що хакери заробляють багато грошей, але чи замислювалися ви коли-небудь, як вони заробляють такі гроші? давайте обговоримо.
Ви хочете побачити революційні винаходи Google і як ці винаходи змінили життя кожної людини сьогодні? Тоді читайте в блозі, щоб побачити винаходи Google.
Концепція самокерованих автомобілів, щоб вирушати в дороги за допомогою штучного інтелекту, є мрією, яку ми давно мріємо. Але, незважаючи на кілька обіцянок, їх ніде не видно. Прочитайте цей блог, щоб дізнатися більше…
Оскільки наука розвивається швидкими темпами, бере на себе багато наших зусиль, ризики піддати себе незрозумілій Сингулярності також зростає. Читайте, що може означати для нас сингулярність.
Методи зберігання даних можуть розвиватися з моменту народження Даних. Цей блог висвітлює еволюцію зберігання даних на основі інфографіки.
Прочитайте блог, щоб дізнатися про різні шари архітектури великих даних та їх функціональні можливості найпростішим способом.
У цьому цифровому світі пристрої розумного дому стали важливою частиною життя. Ось кілька дивовижних переваг пристроїв розумного дому щодо того, як вони роблять наше життя гідним життя та спрощують його.
Нещодавно Apple випустила додаткове оновлення macOS Catalina 10.15.4, щоб виправити проблеми, але схоже, що оновлення викликає більше проблем, що призводять до блокування комп’ютерів Mac. Прочитайте цю статтю, щоб дізнатися більше