Инсталирайте Plesk на CentOS 7
Използване на различна система? Plesk е собствен контролен панел за уеб хост, който позволява на потребителите да администрират своите лични и/или клиентски уебсайтове, бази данни
TaskWarrior е инструмент за управление на времето с отворен код, който е подобрение на приложението Todo.txt и неговите клонинги. Поради факта, че средният човек използва множество устройства/платформи в ежедневния си график, от решаващо значение е да има възможност да има централизирано хранилище, където данните могат да бъдат достъпни и актуализирани от всяко устройство. Този урок ще се фокусира върху настройката както на сървъра, наречен TaskServer (taskd), така и на клиента, наречен TaskWarrior (задача), позволявайки на множество клиентски устройства да имат достъп и да обменят сигурен данни.
Той има следните характеристики:
Влезте като вашия sudo потребител, за да инсталирате EPEL Repository и актуализирайте системата, както следва:
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 .
Под " Email адрес: " въведете имейл адрес по ваш избор и натиснете клавиша 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 keystore. Заменете " jqpublic " с текста, който сте избрали в стъпка #17.
sudo rpm --import RPM-GPG-KEY-jqpublic
Уверете се, че двойката ключове е добавена към RPM keystore. Опцията --q gpg-pubkey отправя заявка към RPM GnuPG keystore. В % {име} -% {версия} - {% освобождаване} ->% {резюме} \ п показва резултата в четлив формат човек.
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 ключ . Сега ще бъде изтеглен и извлечен. Изберете потребителско име и парола.
bash
Сега е време да инсталирате TaskWarrior (задача). Въведете следната команда в конзолата.
sudo apt-get install task -y
Въведете exit два пъти, за да излезете от bash терминала и командния ред на Windows.
Щракнете върху бутона Старт меню. Въведете ubuntu . Щракнете с десния бутон върху Bash на Ubuntu под Windows . Изберете Pin to taskbar . Това осигурява удобство за бърз достъп до 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 Store.
Инсталирайте приложението 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. Това ръководство ще ви покаже
Използване на различна система? Mattermost е самостоятелно хоствана алтернатива с отворен код на Slack SAAS услугата за съобщения. С други думи, с Mattermost, вие ca
Какво ви трябва Vultr VPS с поне 1 GB RAM. SSH достъп (с root/административни привилегии). Стъпка 1: Инсталиране на BungeeCord На първо място
Контролният панел на Plesk разполага с много приятна интеграция за Lets Encrypt. Lets Encrypt е един от единствените доставчици на SSL, които предоставят пълно сертификати
Lets Encrypt е сертифициращ орган, посветен на предоставянето на SSL сертификати безплатно. cPanel изгради чиста интеграция, така че вие и вашият клиент
Използване на различна система? Concrete5 е CMS с отворен код, който предлага много отличителни и полезни функции за подпомагане на редакторите при лесното създаване на съдържание и
Използване на различна система? Review Board е безплатен инструмент с отворен код за преглед на изходен код, документация, изображения и много други. Това е уеб базиран софтуер
В това ръководство ще научите как да настроите HTTP удостоверяване за уеб сървър на Nginx, работещ на CentOS 7. Изисквания За да започнете, ще ви трябва
YOURLS (Your Own URL Shortener) е приложение за съкращаване на URL адреси и анализ на данни с отворен код. В тази статия ще разгледаме процеса на инсталиране
Използване на различна система? Въведение ArangoDB е NoSQL база данни с отворен код с гъвкав модел на данни за документи, графики и ключ-стойности. то е
Въведение Директорията /etc/ играе критична роля в начина, по който функционира една Linux система. Причината за това е, че почти всяка системна конфигурация
Много системни администратори управляват големи количества сървъри. Когато файловете трябва да бъдат достъпни на различни сървъри, влизането във всеки от тях поотделно ок
Този урок ще обхване процеса на инсталиране на сървър за игри Half Life 2 на CentOS 6 System. Стъпка 1: Инсталиране на предпоставките За да настроите ou
Laravel GitScrum или GitScrum е инструмент за производителност с отворен код, предназначен да помогне на екипите за разработка да внедрят методологията на Scrum по подобен начин.
Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.
Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.
Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.
Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.
Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…
Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.
Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.
Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.
В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.
Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече