Sådan installeres Tiny Tiny RSS Reader på en FreeBSD 11 FAMP VPS
Bruger du et andet system? Tiny Tiny RSS Reader er en gratis og open source selv-hostet webbaseret nyhedsfeed (RSS/Atom) læser og aggregator, designet til at allo
Selfoss RSS Reader er en gratis og open source selv-hostet webbaseret multifunktionel, live stream, mashup, nyhedsfeed (RSS/Atom)-læser og universel aggregator. Selfoss RSS Reader har OPML-import, en afslappende JSON API og dens åbne plug-in-system giver dig mulighed for nemt at udvide standardfunktionaliteten ved at skrive dine egne brugerdefinerede dataforbindelser. Du kan bruge Selfoss til at livestreame og samle alle dine indlæg, tweets, podcasts og feeds på ét centralt sted, som du nemt kan få adgang til fra enhver desktop eller mobilenhed.
I denne vejledning skal vi installere Selfoss RSS Reader 2.17 på en FreeBSD 11 FAMP VPS ved hjælp af Apache-webserver, PHP 7.1 og en MariaDB-database.
Vi starter med at tilføje en ny sudo
bruger.
Først skal du logge ind på din server som root
:
ssh root@YOUR_VULTR_IP_ADDRESS
Den sudo
Kommandoen er ikke installeret som standard i Vultr FreeBSD 11 serversubsystem, så vil vi først installere sudo
:
pkg install sudo
Tilføj nu en ny bruger kaldet user1
(eller dit foretrukne brugernavn):
adduser user1
Den adduser
kommando vil bede dig for masser af oplysninger om brugerens konto, så skal du blot vælge standarderne for de fleste af dem, når det giver mening at gøre det. Når du bliver spurgt, om Invite user1 into any other groups?
du skal , skal du indtaste for wheel
at tilføje user1
til wheel
gruppen.
Tjek nu /etc/sudoers
filen for at sikre, at sudoers
gruppen er aktiveret:
visudo
Se efter et afsnit som dette:
# %wheel ALL=(ALL) ALL
Denne linje fortæller os, at brugere, der er medlemmer af wheel
gruppen, kan bruge sudo
kommandoen til at opnå root
privilegier. Det vil blive kommenteret ud som standard, så du bliver nødt til at fjerne kommentaren og derefter gemme og afslutte filen.
Vi kan bekræfte user1
gruppemedlemskabet med groups
kommandoen:
groups user1
Hvis du user1
ikke er medlem af wheel
gruppen, kan du bruge denne kommando til at opdatere user1
gruppemedlemskabet:
pw group mod wheel -m user1
Brug nu su
kommandoen til at skifte til den nye sudo-brugerkonto user1
:
su - user1
Kommandoprompten opdateres for at angive, at du nu er logget ind på user1
kontoen. Du kan bekræfte dette med whoami
kommandoen:
whoami
Genstart nu sshd
tjenesten, så du kan logge på ssh
med den nye ikke-root sudo-brugerkonto, du lige har oprettet:
sudo /etc/rc.d/sshd restart
Afslut user1
kontoen:
exit
Afslut root
kontoen (hvilket vil afbryde forbindelsen til din ssh
session):
exit
Du kan nu gå ssh
ind i serverforekomsten fra din lokale vært ved at bruge den nye ikke-root sudo-brugerkonto user1
:
ssh user1@YOUR_VULTR_IP_ADDRESS
Hvis du vil udføre sudo uden at skulle indtaste en adgangskode hver gang, skal du åbne /etc/sudoers
filen igen ved at bruge visudo
:
sudo visudo
Rediger sektionen for wheel
gruppen, så den ser sådan ud:
%wheel ALL=(ALL) NOPASSWD: ALL
Bemærk venligst: Deaktivering af adgangskodekravet for sudo-brugeren er ikke en anbefalet praksis, men det er inkluderet her, da det kan gøre serverkonfigurationen meget mere bekvem og mindre frustrerende, især under længere systemadministrationssessioner. Hvis du er bekymret over sikkerhedskonsekvenserne, kan du altid gendanne konfigurationsændringen til den oprindelige, når du er færdig med dine administrationsopgaver.
Når du vil logge ind på root
brugerkontoen fra sudo
brugerkontoen, kan du bruge en af følgende kommandoer:
sudo -i
sudo su -
Du kan til enhver tid forlade root
kontoen og vende tilbage til din sudo
brugerkonto:
exit
Før vi installerer nogen pakker på FreeBSD-serverinstansen, vil vi først opdatere systemet.
Sørg for, at du er logget ind på serveren med en ikke-root sudo-bruger, og kør følgende kommandoer:
sudo freebsd-update fetch
sudo freebsd-update install
sudo pkg update
sudo pkg upgrade
Installer Apache-webserveren:
sudo pkg install apache24
Indtast, y
når du bliver bedt om det.
Brug nu sysrc
kommandoen til at aktivere Apache-tjenesten til at køre automatisk ved opstart:
sudo sysrc apache24_enable=yes
Den sysrc
kommando opdaterer /etc/rc.conf
konfigurationsfil, så hvis du ønsker at kontrollere konfigurationen opdateringen manuelt kan du blot åbne /etc/rc.conf
filen med din favorit terminal redaktør:
vi /etc/rc.conf
Start nu Apache-tjenesten:
sudo service apache24 start
Du kan hurtigt kontrollere, at apache kører, ved at besøge IP-adressen eller domænet for serverforekomsten i din browser:
http://YOUR_VULTR_IP_ADDRESS/
Du vil se standard FreeBSD Apache-siden, der viser teksten:
It works!
Tjek din Apache-standardkonfigurationsfil for at sikre, at DocumentRoot
direktivet peger på den korrekte mappe:
sudo vi /usr/local/etc/apache24/httpd.conf
Den DocumentRoot
konfiguration mulighed vil se sådan ud:
DocumentRoot "/usr/local/www/apache24/data"
Vi skal nu aktivere mod_rewrite
Apache-modulet. Vi kan gøre dette ved at søge i standard Apache-konfigurationsfilen for udtrykket mod_rewrite
.
Som standard vil mod_rewrite
Apache-modulet blive kommenteret ud (hvilket betyder, at det er deaktiveret). Konfigurationslinjen på en ren Vultr FreeBSD 11-instans vil se sådan ud:
#LoadModule rewrite_module libexec/apache24/mod_rewrite.so
Du skal blot fjerne hash-symbolet for at fjerne kommentarer til linjen og indlæse modulet. Dette gælder selvfølgelig også for alle andre påkrævede Apache-moduler:
LoadModule rewrite_module libexec/apache24/mod_rewrite.so
Vi er også nødt til at gøre det muligt for mod_authz_code
og mod_headers
moduler, så sørg for at de er begge uncommented også:
LoadModule authz_core_module libexec/apache24/mod_authz_core.so
LoadModule headers_module libexec/apache24/mod_headers.so
Vi skal nu redigere Directory
Apache-direktivet i den samme konfigurationsfil, så det mod_rewrite
vil fungere korrekt med Selfoss RSS Reader.
Find den del af konfigurationsfilen, der starter med, <Directory "/usr/local/www/apache24/data">
og skift AllowOverride none
til AllowOverride All
. Slutresultatet (med alle kommentarer fjernet) vil se nogenlunde således ud:
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Gem og afslut nu Apache-konfigurationsfilen.
Vi genstarter Apache i slutningen af denne vejledning, men at genstarte Apache regelmæssigt under installation og konfiguration er bestemt en god vane, så lad os gøre det nu:
sudo service apache24 restart
Vi kan nu installere PHP 7.1 sammen med alle de nødvendige PHP-moduler, der kræves af 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
Udkomprimer nu zip-arkivet:
sudo unzip selfoss-2.17.zip
Flyt alle installationsfilerne til web-rodmappen:
sudo mv -v selfoss-2.17/* selfoss-2.17/.* /usr/local/www/apache24/data 2>/dev/null
Skift ejerskab af webfilerne for at undgå problemer med tilladelser:
sudo chown -R www:www * ./
Genstart Apache igen:
sudo service apache24 restart
Selfoss RSS Reader kræver, at vi bruger composer
til at downloade nogle plugins, så lad os installere composer
. Desværre er versionen af den forudbyggede binære version af composer i FreeBSD-pakkedepoterne ikke kompatibel med PHP 7.1. Så i stedet for at installere composer
med pkg
kommandoen, kompilerer vi den fra kilden.
Lad os først konfigurere FreeBSD 11-systemet til at kompilere PHP-software ved hjælp af PHP version 7.1 i stedet for standard 5.6.
Opret en ny fil i /etc/
mappen kaldet make.conf
:
sudo vi /etc/make.conf
Indtast følgende tekst i filen:
DEFAULT_VERSIONS+= php=7.1
Gem og luk nu filen.
Dernæst skal vi downloade FreeBSD-portsamlingen ved hjælp af portsnap
kommandoen:
sudo portsnap fetch extract update
Når portsnap
kommandoen er fuldført, skal du skifte til php-composer
kildekodemappen:
cd /usr/ports/devel/php-composer/
Start nu php-composer
kompileringen og installationen ved hjælp af make
kommandoen:
sudo make install clean BATCH=yes
Når kompileringen er færdig, skal du skifte til webroot-mappen:
cd /usr/local/www/apache24/data
Kør komponist ved hjælp af www
brugeren:
sudo -u www composer install
Du vil se nogle advarselsmeddelelser fra composer
om ikke at kunne skrive til cachen, men du skal ikke bekymre dig for meget om det, da alt stadig vil installere fint.
Vi er nu klar til at gå videre til det sidste trin.
Vi skal først opdatere Selfoss RSS Reader-konfigurationsfilen config.ini
med de korrekte databaseindstillinger, så sørg for, at du stadig er i webroot-mappen og kopier defaults.ini
til config.ini
:
sudo cp -iv defaults.ini config.ini
Åbn derefter config.ini
konfigurationsfilen og tilføj følgende databaseværdier:
[globals]
db_type=mysql
db_host=localhost
db_database=selfoss_db
db_username=selfoss_user
db_password=UltraSecurePassword
db_port=3306
Vi skal nu tilføje en adgangskodehash til config.ini
, men først skal vi generere den, så besøg følgende URL i din browser:
http://YOUR_VULTR_IP_ADDRESS/password
Indtast derefter din ønskede adgangskode i Password
feltet og klik på Generate
.
Du skal blot kopiere den resulterende hashværdi til adgangskodeindstillingen i config.ini
filen, så adgangskodesektionen nu ser sådan ud:
username=admin
password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
salt=<long string of random chracters>
Bemærk: Din adgangskode-hash vil naturligvis være anderledes end den ovenfor viste hash, og du kan frit vælge et andet brugernavn.
Fjern alle de andre uredigerede indstillinger fra config.ini
filen, så din komplette konfigurationsfil ligner denne:
[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>
Bemærk: Hvis du vil ændre nogen af defaults.ini
mulighederne, kan du blot tilføje dem til listen over muligheder ovenfor.
Når du er færdig med at redigere konfigurationsfilen, kan du gemme og afslutte filen.
Du kan nu logge ind på Selfoss RSS Reader ved at besøge hjemmesiden og indtaste dit brugernavn og adgangskode:
http://YOUR_VULTR_IP_ADDRESS/
Hvis du vil have læseren til automatisk at opdatere dine feeds (og det gør du næsten helt sikkert), skal du redigere din crontab:
sudo crontab -e
Tilføj følgende linje for at opdatere dine feeds hver time:
0 * * * * www cd /usr/local/www/apache24/data && php cliupdate.php
Hvis du endnu ikke har konfigureret dine Vultr DNS-indstillinger, kan du gøre det ved hjælp af Vultr DNS-kontrolpanelet.
Det er også tilrådeligt at konfigurere dit websted til at bruge SSL, da de fleste moderne browsere vil advare, når websteder ikke har SSL aktiveret, og SSL-certifikater er nu tilgængelige gratis.
Under alle omstændigheder er du nu fri til at begynde at tilføje dine feeds og yderligere tilpasse din læser, hvis du ønsker det.
Bruger du et andet system? Tiny Tiny RSS Reader er en gratis og open source selv-hostet webbaseret nyhedsfeed (RSS/Atom) læser og aggregator, designet til at allo
Using a Different System? Wiki.js is a free and open source, modern wiki app built on Node.js, MongoDB, Git and Markdown. Wiki.js source code is publicl
Bruger du et andet system? Pagekit 1.0 CMS er et smukt, modulært, udvideligt og let, gratis og open source Content Management System (CMS) med
Bruger du et andet system? MODX Revolution er et hurtigt, fleksibelt, skalerbart, open source, enterprise-grade Content Management System (CMS) skrevet i PHP. Det jeg
Denne artikel guider dig gennem opsætning af OpenBSD 5.5 (64-bit) på KVM med en Vultr VPS. Trin 1. Log ind på Vultr kontrolpanelet. Trin 2. Klik på DEPLAY
Bruger du et andet system? osTicket er et open source kundesupport billetsystem. osTicket-kildekoden er offentligt hostet på Github. I denne tutorial
Bruger du et andet system? Flarum er en gratis og open source næste generations forumsoftware, der gør online diskussion sjov. Flarum kildekode er hostet o
Bruger du et andet system? TLS 1.3 er en version af Transport Layer Security (TLS) protokollen, der blev offentliggjort i 2018 som en foreslået standard i RFC 8446
Introduktion WordPress er det dominerende content management system på internettet. Det driver alt fra blogs til komplekse websteder med dynamisk indhold
Bruger du et andet system? Subrion 4.1 CMS er et kraftfuldt og fleksibelt open source Content Management System (CMS), der bringer et intuitivt og klart indhold
Denne vejledning viser dig, hvordan du konfigurerer en DNS-tjeneste, der er nem at vedligeholde, nem at konfigurere, og som generelt er mere sikker end den klassiske BIN
En FEMP-stak, som kan sammenlignes med en LEMP-stak på Linux, er en samling open source-software, der typisk installeres sammen for at aktivere en FreeBS
MongoDB er en NoSQL-database i verdensklasse, der ofte bruges i nyere webapplikationer. Det giver højtydende forespørgsler, sharding og replikering
Bruger du et andet system? Monica er et open source system til styring af personlige relationer. Tænk på det som et CRM (et populært værktøj, der bruges af salgsteams i th
Introduktion Denne tutorial demonstrerer OpenBSD som en e-handelsløsning, der bruger PrestaShop og Apache. Apache er påkrævet, fordi PrestaShop har kompleks UR
Bruger du et andet system? Fork er et open source CMS skrevet i PHP. Forks kildekode er hostet på GitHub. Denne vejledning viser dig, hvordan du installerer Fork CM
Bruger du et andet system? Directus 6.4 CMS er et kraftfuldt og fleksibelt, gratis og open source Headless Content Management System (CMS), der giver udviklere
VPS-servere er ofte målrettet af ubudne gæster. En almindelig type angreb dukker op i systemlogfiler som hundredvis af uautoriserede ssh-loginforsøg. Sætte op
Introduktion OpenBSD 5.6 introducerede en ny dæmon kaldet httpd, som understøtter CGI (via FastCGI) og TLS. Der kræves ikke yderligere arbejde for at installere den nye http
Denne vejledning viser dig, hvordan du installerer groupware iRedMail på en ny installation af FreeBSD 10. Du bør bruge en server med mindst én gigabyte o
Kunstig intelligens er ikke i fremtiden, det er her lige i nuet I denne blog Læs, hvordan kunstig intelligens-applikationer har påvirket forskellige sektorer.
Er du også et offer for DDOS-angreb og forvirret over forebyggelsesmetoderne? Læs denne artikel for at løse dine spørgsmål.
Du har måske hørt, at hackere tjener mange penge, men har du nogensinde spekuleret på, hvordan tjener de den slags penge? lad os diskutere.
Vil du se revolutionerende opfindelser fra Google, og hvordan disse opfindelser ændrede livet for ethvert menneske i dag? Læs derefter til bloggen for at se opfindelser fra Google.
Konceptet med selvkørende biler til at køre på vejene ved hjælp af kunstig intelligens er en drøm, vi har haft i et stykke tid nu. Men på trods af flere løfter er de ingen steder at se. Læs denne blog for at lære mere...
Efterhånden som videnskaben udvikler sig i et hurtigt tempo og overtager en stor del af vores indsats, stiger risikoen for at udsætte os selv for en uforklarlig Singularitet. Læs, hvad singularitet kunne betyde for os.
Opbevaringsmetoderne for dataene har været under udvikling, kan være siden fødslen af dataene. Denne blog dækker udviklingen af datalagring på basis af en infografik.
Læs bloggen for at kende forskellige lag i Big Data-arkitekturen og deres funktionaliteter på den enkleste måde.
I denne digitalt drevne verden er smarte hjemmeenheder blevet en afgørende del af livet. Her er et par fantastiske fordele ved smarte hjemmeenheder om, hvordan de gør vores liv værd at leve og enklere.
For nylig udgav Apple macOS Catalina 10.15.4 en supplerende opdatering for at løse problemer, men det ser ud til, at opdateringen forårsager flere problemer, hvilket fører til mursten af mac-maskiner. Læs denne artikel for at lære mere