Як встановити Tiny Tiny RSS Reader на FreeBSD 11 FAMP VPS
Використання іншої системи? Tiny Tiny RSS Reader — це безкоштовний зчитувач і агрегатор новин (RSS/Atom) із відкритим вихідним кодом, що розміщується на власному веб-сторінці.
Selfoss RSS Reader — це безкоштовний багатоцільовий веб-переглядач із відкритим кодом із відкритим вихідним кодом і універсальний агрегатор для зчитування прямих трансляцій, масапу, стрічки новин (RSS/Atom) та універсального агрегатора. Selfoss RSS Reader має імпорт OPML, спокійний JSON API, а його відкрита система плагінів дозволяє легко розширити функціональність за замовчуванням, написавши власні власні конектори даних. Ви можете використовувати Selfoss для прямої трансляції та збору всіх ваших дописів, твітів, подкастів і каналів в одному центральному місці, до якого ви можете легко отримати доступ з будь-якого комп’ютера або мобільного пристрою.
У цьому підручнику ми збираємося встановити Selfoss RSS Reader 2.17 на FreeBSD 11 FAMP VPS за допомогою веб-сервера Apache, PHP 7.1 і бази даних MariaDB.
Ми почнемо з додавання нового sudoкористувача.
Спочатку увійдіть на свій сервер як root:
ssh root@YOUR_VULTR_IP_ADDRESS
sudoКоманда не встановлюється за умовчанням в екземплярі 11 сервера Vultr FreeBSD, так що ми спочатку встановити sudo:
pkg install sudo
Тепер додайте нового користувача user1(або бажане ім’я користувача):
adduser user1
adduserКоманда запропонує вам безліч деталей для облікового запису користувача, так просто вибрати за замовчуванням для більшості з них , коли це має сенс робити це. Коли вас запитають, чи потрібно Invite user1 into any other groups?, ви повинні ввести, wheelщоб додати user1до wheelгрупи.
Тепер перевірте /etc/sudoersфайл, щоб переконатися, що sudoersгрупа ввімкнена:
visudo
Шукайте такий розділ:
# %wheel ALL=(ALL) ALL
Цей рядок повідомляє нам, що користувачі, які є членами wheelгрупи, можуть використовувати sudoкоманду для отримання rootпривілеїв. Він буде прокоментований за замовчуванням, тому вам потрібно буде розкоментувати його, а потім зберегти та вийти з файлу.
Ми можемо перевірити user1членство в групі за допомогою groupsкоманди:
groups user1
Якщо ви user1не є членом wheelгрупи, ви можете використовувати цю команду, щоб оновити user1членство в групі:
pw group mod wheel -m user1
Тепер скористайтеся suкомандою, щоб перейти до нового user1облікового запису користувача sudo :
su - user1
Командний рядок оновиться, щоб вказати, що ви тепер увійшли в user1обліковий запис. Ви можете перевірити це за допомогою whoamiкоманди:
whoami
Тепер перезапустіть sshdслужбу, щоб ви могли ввійти за sshдопомогою нового облікового запису sudo, який ви щойно створили:
sudo /etc/rc.d/sshd restart
Вийти з user1облікового запису:
exit
Вийдіть з rootоблікового запису (що призведе до відключення вашого sshсеансу):
exit
Тепер ви можете зайти sshна екземпляр сервера з вашого локального хоста за допомогою нового user1облікового запису користувача sudo без root прав :
ssh user1@YOUR_VULTR_IP_ADDRESS
Якщо ви хочете виконати sudo без необхідності щоразу вводити пароль, відкрийте /etc/sudoersфайл знову, використовуючи visudo:
sudo visudo
Відредагуйте розділ для wheelгрупи, щоб він виглядав так:
%wheel ALL=(ALL) NOPASSWD: ALL
Зверніть увагу: вимкнення вимоги щодо пароля для користувача sudo не рекомендовано, але воно включено тут, оскільки це може зробити конфігурацію сервера набагато зручнішою та менш неприємною, особливо під час тривалих сеансів адміністрування системи. Якщо вас турбують наслідки для безпеки, ви завжди можете повернути зміну конфігурації до початкової після завершення завдань адміністрування.
Щоразу, коли ви хочете ввійти в rootобліковий запис користувача з облікового запису sudoкористувача, ви можете використовувати одну з наступних команд:
sudo -i
sudo su -
Ви можете вийти з rootоблікового запису та повернутися до свого sudoоблікового запису користувача в будь-який час:
exit
Перш ніж встановлювати будь-які пакунки на сервері FreeBSD, ми спочатку оновимо систему.
Переконайтеся, що ви ввійшли на сервер за допомогою користувача sudo без root прав і виконайте такі команди:
sudo freebsd-update fetch
sudo freebsd-update install
sudo pkg update
sudo pkg upgrade
Встановіть веб-сервер Apache:
sudo pkg install apache24
Введіть, yколи буде запропоновано.
Тепер скористайтеся sysrcкомандою, щоб увімкнути службу Apache для автоматичного виконання під час завантаження:
sudo sysrc apache24_enable=yes
sysrcКоманда оновлює /etc/rc.confфайл конфігурації, так що якщо ви хочете , щоб перевірити оновлення конфігурації вручну , ви можете просто відкрити /etc/rc.confфайл з вашим улюбленим редактором терміналу:
vi /etc/rc.conf
Тепер запустіть службу Apache:
sudo service apache24 start
Ви можете швидко перевірити, чи запущено apache, відвідавши IP-адресу або домен екземпляра сервера у своєму браузері:
http://YOUR_VULTR_IP_ADDRESS/
Ви побачите сторінку FreeBSD Apache за замовчуванням, яка відображає текст:
It works!
Перевірте свій файл конфігурації Apache за замовчуванням, щоб переконатися, що DocumentRootдиректива вказує на правильний каталог:
sudo vi /usr/local/etc/apache24/httpd.conf
Параметр DocumentRootконфігурації буде виглядати так:
DocumentRoot "/usr/local/www/apache24/data"
Тепер нам потрібно включити mod_rewriteмодуль Apache. Ми можемо зробити це, шукаючи термін у файлі конфігурації Apache за замовчуванням mod_rewrite.
За замовчуванням mod_rewriteмодуль Apache буде прокоментований (що означає, що він вимкнено). Рядок конфігурації на чистому екземплярі Vultr FreeBSD 11 виглядатиме так:
#LoadModule rewrite_module libexec/apache24/mod_rewrite.so
Просто видаліть хеш-символ, щоб розкоментувати рядок і завантажити модуль. Це, звичайно, стосується і будь-яких інших необхідних модулів Apache:
LoadModule rewrite_module libexec/apache24/mod_rewrite.so
Нам також потрібно ввімкнути модулі mod_authz_codeта mod_headers, тому переконайтеся, що вони обидва також не прокоментовані:
LoadModule authz_core_module libexec/apache24/mod_authz_core.so
LoadModule headers_module libexec/apache24/mod_headers.so
Тепер нам потрібно відредагувати Directoryдирективу Apache в тому ж файлі конфігурації, щоб mod_rewriteвона коректно працювала з Selfoss RSS Reader.
Знайдіть розділ конфігураційного файлу, який починається з <Directory "/usr/local/www/apache24/data">і змініть його AllowOverride noneна AllowOverride All. Кінцевий результат (з видаленими всіма коментарями) буде виглядати приблизно так:
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Тепер збережіть і вийдіть з файлу конфігурації Apache.
Ми перезапустимо Apache в кінці цього підручника, але регулярне перезапуск Apache під час встановлення та налаштування, безумовно, є хорошою звичкою, тому давайте зробимо це зараз:
sudo service apache24 restart
Тепер ми можемо інсталювати PHP 7.1 разом з усіма необхідними модулями PHP, необхідними для Selfoss RSS Reader:
sudo pkg install php71 mod_php71 php71-gd php71-mbstring php71-mysqli php71-xml php71-curl php71-ctype php71-tokenizer php71-simplexml php71-dom php71-session php71-iconv php71-hash php71-json php71-fileinfo php71-pdo php71-pdo_mysql php71-zlib php71-openssl php71-zip php71-phar
FreeBSD 11 gives us the option to use a development php.ini or a production php.ini. Since we are going to install Selfoss on a public web server, we'll use the production version. First, back up php.ini-production:
sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini-production.backup
Then soft-link php.ini-production to php.ini:
sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini
We need to configure Apache to actually use PHP, so let's create a new file called php.conf in the Apache Includes directory:
sudo vi /usr/local/etc/apache24/Includes/php.conf
Enter the following text into the newly created file:
<IfModule dir_module>
DirectoryIndex index.php index.html
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
</IfModule>
Save and exit the file.
Now let's restart Apache so that it can reload the configuration changes:
sudo service apache24 restart
FreeBSD 11 defaults to using MariaDB database server, which is an enhanced, fully open source, community developed, drop-in replacement for MySQL server.
Install the latest version of MariaDB database server:
sudo pkg install mariadb102-server mariadb102-client
Start and enable MariaDB server to execute automatically at boot time:
sudo sysrc mysql_enable="yes"
sudo service mysql-server start
Secure your MariaDB server installation:
sudo mysql_secure_installation
When prompted to create a MariaDB/MySQL root user, select "Y" (for yes) and then enter a secure root password. Simply answer "Y" to all of the other yes/no questions as the default suggestions are the most secure options.
Log into the MariaDB shell as the MariaDB root user by running the following command:
sudo mysql -u root -p
To access the MariaDB command prompt, simply enter the MariaDB root password when prompted.
Run the following queries to create a MariaDB database and database user for Selfoss RSS Reader:
CREATE DATABASE selfoss_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'selfoss_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON selfoss_db.* TO 'selfoss_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
You can replace the database name selfoss_db and username selfoss_user with something more to your liking, if you prefer. Also, make sure that you replace "UltraSecurePassword" with an actually secure password.
Change your current working directory to the default web directory:
cd /usr/local/www/apache24/data
Your current working directory will now be: /usr/local/www/apache24/data. You can check this with the pwd (print working directory) command:
pwd
Now use wget to download the Selfoss RSS Reader installation package:
sudo wget --content-disposition https://github.com/SSilence/selfoss/archive/2.17.zip
Please note: You should definitely check for the most recent version by visiting the Selfoss RSS Reader download page.
List the current directory to check that you have successfully downloaded the file:
ls -la
Remove index.html:
sudo rm index.html
Тепер розпакуйте zip-архів:
sudo unzip selfoss-2.17.zip
Перемістіть усі інсталяційні файли до кореневого веб-каталогу:
sudo mv -v selfoss-2.17/* selfoss-2.17/.* /usr/local/www/apache24/data 2>/dev/null
Змініть власника веб-файлів, щоб уникнути проблем із дозволами:
sudo chown -R www:www * ./
Перезапустіть Apache знову:
sudo service apache24 restart
Selfoss RSS Reader вимагає від нас використання composerдля завантаження деяких плагінів, тому давайте встановимо composer. На жаль, версія попередньо вбудованої двійкової версії composer у сховищах пакунків FreeBSD не сумісна з PHP 7.1. Тому замість того, щоб встановлювати composerза допомогою pkgкоманди, ми натомість компілюємо її з джерела.
По-перше, давайте налаштуємо систему FreeBSD 11 для компіляції програмного забезпечення PHP з використанням PHP версії 7.1 замість стандартної 5.6.
Створіть новий файл у /etc/каталозі під назвою make.conf:
sudo vi /etc/make.conf
Введіть у файл наступний текст:
DEFAULT_VERSIONS+= php=7.1
Тепер збережіть і закрийте файл.
Далі нам потрібно завантажити колекцію портів FreeBSD за допомогою portsnapкоманди:
sudo portsnap fetch extract update
Після виконання portsnapкоманди перейдіть до php-composerкаталогу вихідного коду:
cd /usr/ports/devel/php-composer/
Тепер почніть php-composerкомпіляцію та встановлення за допомогою makeкоманди:
sudo make install clean BATCH=yes
Коли компіляція буде завершена, перейдіть до корневого каталогу:
cd /usr/local/www/apache24/data
Запустіть composer за допомогою wwwкористувача:
sudo -u www composer install
Ви побачите кілька попереджувальних повідомлень composerпро те, що неможливо записати в кеш, але не турбуйтеся про це, оскільки все встановиться нормально.
Тепер ми готові перейти до останнього кроку.
Спочатку нам потрібно оновити файл конфігурації Selfoss RSS Reader config.iniз правильними налаштуваннями бази даних, тому переконайтеся, що ви все ще перебуваєте в кореневому каталозі, і скопіюйте defaults.iniдо config.ini:
sudo cp -iv defaults.ini config.ini
Далі відкрийте config.iniфайл конфігурації та додайте такі значення бази даних:
[globals]
db_type=mysql
db_host=localhost
db_database=selfoss_db
db_username=selfoss_user
db_password=UltraSecurePassword
db_port=3306
Тепер нам потрібно додати хеш пароля до config.ini, але спочатку нам потрібно його згенерувати, тому перейдіть за такою URL-адресою у своєму браузері:
http://YOUR_VULTR_IP_ADDRESS/password
Потім введіть потрібний пароль у Passwordполе та натисніть Generate.
Просто скопіюйте отримане хеш-значення до параметра пароля у config.iniфайлі, щоб розділ пароля виглядав приблизно так:
username=admin
password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
salt=<long string of random chracters>
Примітка: хеш вашого пароля, очевидно, буде відрізнятися від хеша, показаного вище, і ви можете вибрати інше ім’я користувача.
Видаліть усі інші невідредаговані параметри з config.iniфайлу, щоб ва�� повний файл конфігурації виглядав так:
[globals]
db_type=mysql
db_host=localhost
db_database=db1
db_username=u1
db_password=usecpass1
db_port=3306
username=admin
password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
salt=<long string of random chracters>
Примітка. Якщо ви хочете змінити будь-який з defaults.iniпараметрів, ви можете просто додати їх до списку параметрів вище.
Після завершення редагування файлу конфігурації ви можете зберегти файл і вийти з нього.
Тепер ви можете увійти до Selfoss RSS Reader, відвідавши домашню сторінку та ввівши своє ім’я користувача та пароль:
http://YOUR_VULTR_IP_ADDRESS/
Якщо ви хочете, щоб читач автоматично оновлював ваші канали (а ви майже напевно це робите), вам потрібно буде відредагувати свою crontab:
sudo crontab -e
Додайте наступний рядок, щоб оновлювати свої канали щогодини:
0 * * * * www cd /usr/local/www/apache24/data && php cliupdate.php
Якщо ви ще не налаштували свої параметри DNS Vultr, ви можете зробити це за допомогою панелі керування Vultr DNS.
Також доцільно налаштувати свій сайт на використання SSL, оскільки більшість сучасних браузерів видаватиме попередження, коли на сайтах не ввімкнено SSL, а сертифікати SSL тепер доступні безкоштовно.
У будь-якому випадку, тепер ви можете почати додавати свої канали та додатково налаштовувати читач, якщо хочете.
Використання іншої системи? Tiny Tiny RSS Reader — це безкоштовний зчитувач і агрегатор новин (RSS/Atom) із відкритим вихідним кодом, що розміщується на власному веб-сторінці.
Використання іншої системи? Wiki.js — це безкоштовний сучасний вікі-додаток з відкритим вихідним кодом, побудований на Node.js, MongoDB, Git і Markdown. Вихідний код Wiki.js є публічним
Використання іншої системи? Pagekit 1.0 CMS – це красива, модульна, розширювана та легка, безкоштовна система керування вмістом (CMS) з відкритим вихідним кодом.
Використання іншої системи? MODX Revolution — це швидка, гнучка, масштабована система управління вмістом (CMS) корпоративного рівня з відкритим кодом, написана на PHP. Це я
У цій статті ви дізнаєтеся, як налаштувати OpenBSD 5.5 (64-розрядна версія) на KVM за допомогою Vultr VPS. Крок 1. Увійдіть в панель керування Vultr. Крок 2. Натисніть РОЗВЕРНУТИ
Використання іншої системи? osTicket — це система продажу квитків з відкритим вихідним кодом. Вихідний код osTicket відкрито розміщено на Github. У цьому підручнику
Використання іншої системи? Flarum — це безкоштовне програмне забезпечення нового покоління з відкритим вихідним кодом, яке робить онлайн-обговорення веселими. Вихідний код Flarum розміщений o
Використання іншої системи? TLS 1.3 — це версія протоколу безпеки транспортного рівня (TLS), який був опублікований у 2018 році як запропонований стандарт у RFC 8446.
Вступ WordPress є домінуючою системою керування вмістом в Інтернеті. Він забезпечує все, від блогів до складних веб-сайтів із динамічним вмістом
Використання іншої системи? Subrion 4.1 CMS — це потужна та гнучка система керування вмістом із відкритим кодом (CMS), яка забезпечує інтуїтивно зрозумілий та зрозумілий вміст
Цей підручник покаже вам, як налаштувати службу DNS, яку легко підтримувати, легко налаштовувати і яка, як правило, є більш безпечною, ніж класичний BIN
Стек FEMP, який можна порівняти зі стеком LEMP в Linux, являє собою набір програмного забезпечення з відкритим вихідним кодом, яке зазвичай встановлюється разом для забезпечення FreeBS
MongoDB — це база даних NoSQL світового класу, яка часто використовується в нових веб-додатках. Він забезпечує високопродуктивні запити, шардінг та реплікацію
Використання іншої системи? Monica — це відкрита система управління особистими відносинами. Подумайте про це як про CRM (популярний інструмент, який використовується відділами продажів у м
Вступ У цьому підручнику демонструється OpenBSD як рішення для електронної комерції з використанням PrestaShop і Apache. Apache потрібен, оскільки PrestaShop має складну UR
Використання іншої системи? Fork — це CMS з відкритим кодом, написана на PHP. Вихідний код Forks розміщено на GitHub. Цей посібник покаже вам, як встановити Fork CM
Використання іншої системи? Directus 6.4 CMS — це потужна та гнучка, безкоштовна система керування вмістом без голови (CMS) з відкритим вихідним кодом, яка надає розробнику
Сервери VPS часто стають мішенню зловмисників. Поширений тип атаки відображається в системних журналах у вигляді сотень несанкціонованих спроб входу через ssh. Налаштовуючи
Вступ OpenBSD 5.6 представив новий демон під назвою httpd, який підтримує CGI (через FastCGI) і TLS. Для встановлення нового http не потрібно додатково працювати
Цей підручник покаже вам, як встановити групове програмне забезпечення iRedMail на нову інсталяцію FreeBSD 10. Ви повинні використовувати сервер з принаймні одним гігабайтом o
Штучний інтелект не в майбутньому, він тут прямо в сьогоденні У цьому блозі Прочитайте, як програми штучного інтелекту вплинули на різні сектори.
Ви також стали жертвою DDOS-атак і спантеличені методами запобігання? Прочитайте цю статтю, щоб вирішити свої запитання.
Можливо, ви чули, що хакери заробляють багато грошей, але чи замислювалися ви коли-небудь, як вони заробляють такі гроші? давайте обговоримо.
Ви хочете побачити революційні винаходи Google і як ці винаходи змінили життя кожної людини сьогодні? Тоді читайте в блозі, щоб побачити винаходи Google.
Концепція самокерованих автомобілів, щоб вирушати в дороги за допомогою штучного інтелекту, є мрією, яку ми давно мріємо. Але, незважаючи на кілька обіцянок, їх ніде не видно. Прочитайте цей блог, щоб дізнатися більше…
Оскільки наука розвивається швидкими темпами, бере на себе багато наших зусиль, ризики піддати себе незрозумілій Сингулярності також зростає. Читайте, що може означати для нас сингулярність.
Методи зберігання даних можуть розвиватися з моменту народження Даних. Цей блог висвітлює еволюцію зберігання даних на основі інфографіки.
Прочитайте блог, щоб дізнатися про різні шари архітектури великих даних та їх функціональні можливості найпростішим способом.
У цьому цифровому світі пристрої розумного дому стали важливою частиною життя. Ось кілька дивовижних переваг пристроїв розумного дому щодо того, як вони роблять наше життя гідним життя та спрощують його.
Нещодавно Apple випустила додаткове оновлення macOS Catalina 10.15.4, щоб виправити проблеми, але схоже, що оновлення викликає більше проблем, що призводять до блокування комп’ютерів Mac. Прочитайте цю статтю, щоб дізнатися більше