Installer Plesk på CentOS 7
Bruker du et annet system? Plesk er et proprietært kontrollpanel for webverten som lar brukere administrere sine personlige og/eller klienters nettsteder, databaser
Leanote er et gratis, lett og åpen kildekode-alternativ til Evernote, som er skrevet i Golang. Med brukeropplevelse i tankene, gir Leanote brukere mange praktiske funksjoner, inkludert støtte på tvers av plattformer, skriving i MarkDown-syntaksen, offentlig eller privat blogging, kunnskapsinnsamling og -deling og teamsamarbeid.
I denne artikkelen vil jeg veilede deg gjennom å sette opp en Leanote-server på en CentOS 7-serverforekomst. Av sikkerhetshensyn vil aktivering av HTTPS support
bruk av et Let's Encrypt SSL-sertifikat og Nginx også dekkes.
203.0.113.1
.leanote
.leanote.example.com
som peker til serverforekomsten nevnt ovenfor.Når du starter opp en ny Vultr CentOS 7-serverforekomst, anbefales det alltid å sette opp en byttefil for å sikre at systemet kjører jevnt. For eksempel er det egnet for en maskin med 2 GB minne å lage en byttefil på 2048 MB.
sudo dd if=/dev/zero of=/swapfile count=2048 bs=1M
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
free -m
Merk: Hvis du bruker en annen serverstørrelse, må du kanskje endre størrelsen på byttefilen.
Last ned og pakk ut den siste stabile utgaven av Leanote for 64-bit Linux-system:
cd
wget https://sourceforge.net/projects/leanote-bin/files/2.6.1/leanote-linux-amd64-v2.6.1.bin.tar.gz
tar -zxvf leanote-linux-amd64-v2.6.1.bin.tar.gz
Som kreves av Leanote, må MongoDB NoSQL DBMS være på plass før du kan konfigurere en Leanote-server.
Opprett MongoDB 4.0 YUM-repoen som følger:
cat <<EOF | sudo tee /etc/yum.repos.d/mongodb-org-4.0.repo
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/\$releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
EOF
Installer alle MongoDB-komponentene og verktøyene ved å bruke MongoDB 4.0 YUM-repoen opprettet tidligere:
sudo yum install -y mongodb-org
Som standard vil MongoDB bruke 27017
porten når du arbeider, noe som ikke er tillatt hvis SELinux er i enforcing
modusen på CentOS 7-maskinen. Bruk følgende kommando for å bekrefte gjeldende SELinux-modus:
sudo getenforce
På en Vultr CentOS 7-serverforekomst er SELinux deaktivert som standard. Så utgangen av kommandoen ovenfor vil være:
Disabled
I dette tilfellet kan du gjerne hoppe over følgende instruksjoner for å konfigurere SELinux og gå videre.
Imidlertid, hvis du kjører en original CentOS 7-serverforekomst, vil utdata fra kommandoen ovenfor være Enforcing
. Du må utføre ett av de tre alternativene nedenfor før du kan starte og aktivere MongoDB-tjenesten.
Alternativ 1: Tillat MongoDB å bruke 27017
porten
sudo semanage port -a -t mongod_port_t -p tcp 27017
Alternativ 2: Deaktiver SELinux
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
sudo shutdown -r now
Alternativ 3: Endre SELinux til permissive
modus
sudo sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
sudo shutdown -r now
Start MongoDB-tjenesten og få den til å starte etter en omstart av systemet:
sudo systemctl start mongod.service
sudo systemctl enable mongod.service
Bruk kommandoene nedenfor for å importere innledende Leanote-data til MongoDB:
rm /home/leanote/leanote/mongodb_backup/leanote_install_data/.DS_Store
mongorestore --host localhost -d leanote --dir /home/leanote/leanote/mongodb_backup/leanote_install_data/
Av sikkerhetshensyn må du aktivere tilgangskontroll til MongoDB rett etter at MongoDB-tjenesten er oppe og kjører. For dette formålet må du opprette minst to MongoDB-brukerkontoer: en brukeradministratorkonto og en databaseadministratorkonto. Du må også endre MongoDB-konfigurasjonen.
Skriv inn MongoDB-skallet:
mongo --host 127.0.0.1:27017
Bytt til admin
databasen:
use admin
Opprett en brukeradministrator ved navn useradmin
som bruker et passord useradminpassword
:
db.createUser({ user: "useradmin", pwd: "useradminpassword", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })
Merk: Brukeren administratoren useradmin
skal administrere alle MongoDB brukere, så det er lurt å velge et sterkt passord. Selvfølgelig er et sikrere tips å erstatte useradmin
med et brukernavn som er vanskelig å gjette.
Bytt til leanote
databasen:
use leanote
Opprett en databaseadministrator ved navn leanoteadmin
som bruker et passord leanoteadminpassword
:
db.createUser({ user: "leanoteadmin", pwd: "leanoteadminpassword", roles: [{ role: "dbOwner", db: "leanote" }] })
Merk : Igjen, det anbefales å velge et mindre kjent brukernavn og et passord som er vanskelig å gjette.
Etter å ha opprettet MongoDB-brukerne, kan du bekrefte resultatene:
use admin
db.auth("useradmin", "useradminpassword")
Bekreft databaseadministratoren:
use leanote
db.auth("leanoteadmin", "leanoteadminpassword")
Begge sendes ut 1
som bekreftelse.
Avslutt MongoDB-skallet:
exit
For å aktivere tilgangskontroll til MongoDB, må du også legge til to linjer til MongoDB-konfigurasjonsfilen /etc/mongod.conf
, som følger:
sudo bash -c "echo 'security:' >> /etc/mongod.conf"
sudo bash -c "echo ' authorization: enabled' >> /etc/mongod.conf"
Start MongoDB-tjenesten på nytt for at endringene skal tre i kraft:
sudo systemctl restart mongod.service
Fra nå av kan du bare bruke de to brukerkontoene for å få tilgang til og administrere MongoDB, useradmin
for å administrere alle MongoDB-brukere og kun leanoteadmin
for å administrere leanote
databasen.
Sikkerhetskopier Leanote-konfigurasjonsfilen /home/leanote/leanote/conf/app.conf
:
cd /home/leanote/leanote/conf/
cp app.conf app.conf.bak
Bruk vi
redigeringsprogrammet til å åpne Leanote-konfigurasjonsfilen:
vi app.conf
Finn følgende linjer en etter en:
site.url=http://localhost:9000
db.username= # if not exists, please leave it blank
db.password= # if not exists, please leave it blank
app.secret=V85ZzBeTnzpsHyjQX4zukbQ8qqtju9y2aDM55VWxAH9Qop19poekx3xkcDVvrD0y
Erstatt dem, henholdsvis, som vist nedenfor:
site.url=http://leanote.example.com:9000
db.username=leanoteadmin
db.password=leanoteadminpassword
app.secret=E52tyCDBRk39HmhdGYJLBS3etXpnz7DymmxkgHBYxd7Y9muWVVJ5QZNdDEaHV2sA
Merk: Av sikkerhetshensyn app.secret
MÅ verdien til parameteren være en 64-bits tilfeldig streng som er forskjellig fra den opprinnelige. Sørg for å erstatte verdien E52tyCDBRk39HmhdGYJLBS3etXpnz7DymmxkgHBYxd7Y9muWVVJ5QZNdDEaHV2sA
med din egen 64-bits tilfeldige verdi.
Lagre og avslutt:
:wq!
Endre brannmurregler for å tillate innkommende TCP-trafikk på porten 9000
:
sudo firewall-cmd --permanent --add-port=9000/tcp
sudo systemctl reload firewalld.service
Start Leanote ved å bruke det offisielle skriptet:
cd /home/leanote/leanote/bin
bash run.sh
Når du ser Listening on.. 0.0.0.0:9000
, peker du på favorittnettleseren din for http://leanote.example.com:9000
å begynne å bruke Leanote-siden.
Bruk standard Leanote-administratorkonto for å logge på:
admin
abc123
Av sikkerhetshensyn bør du endre standardpassordet umiddelbart etter pålogging.
HTTPS
tilgangFor now, you can already access the Leanote server using the HTTP protocol, a less secure protocol. In order to improve system security, you can enable HTTPS
by deploying both a Let's Encrypt SSL certificate and the Nginx reverse proxy on your machine.
Before you can obtain the Let's Encrypt SSL certificate, you need to properly setup the hostname and FQDN on your machine.
First, press CTRL+C to stop the Leanote script run.sh
.
Next, setup the hostname and FQDN as follows:
sudo hostnamectl set-hostname leanote
cat <<EOF | sudo tee /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
203.0.113.1 leanote.example.com leanote
EOF
You can confirm the results, as well:
hostname
hostname -f
Block inbound traffic on port 9000
and allow inbound traffic on ports for HTTP
and HTTPS
services:
sudo firewall-cmd --permanent --remove-port=9000/tcp
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld.service
Install the Certbot utility:
sudo yum -y install yum-utils
sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
sudo yum install -y certbot
Søk om et Let's Encrypt SSL-sertifikat for domenet leanote.example.com
:
sudo certbot certonly --standalone --agree-tos --no-eff-email -m [email protected] -d leanote.example.com
Sertifikatet og kjeden vil bli lagret som følger:
/etc/letsencrypt/live/leanote.example.com/fullchain.pem
Den private nøkkelfilen vil bli lagret som følger:
/etc/letsencrypt/live/leanote.example.com/privkey.pem
Som standard vil Let's Encrypt SSL-sertifikatet utløpe om tre måneder. Du kan sette opp en cron-jobb, som vist nedenfor, for å automatisk fornye Let's Encrypt-sertifikatene dine:
sudo crontab -e
Trykk for Iå gå inn i insert
modusen, og skriv deretter inn følgende linje:
0 0,12 * * * python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew
Lagre og avslutt:
:wq!
Denne cron-jobben vil prøve å fornye Let's Encrypt-sertifikatet hver dag ved middagstid.
Installer Nginx ved å bruke EPEL YUM-repoen:
sudo yum install -y nginx
Opprett en konfigurasjonsfil for Leanote:
cat <<EOF | sudo tee /etc/nginx/conf.d/leanote.conf
# Redirect HTTP to HTTPS
server {
listen 80;
server_name leanote.example.com;
return 301 https://\$server_name\$request_uri;
}
server {
# Setup HTTPS certificates
listen 443 default ssl;
server_name leanote.example.com;
ssl_certificate /etc/letsencrypt/live/leanote.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/leanote.example.com/privkey.pem;
# Proxy to the Leanote server
location / {
proxy_set_header X-Real-IP \$remote_addr;
proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-Forwarded-Host \$http_host;
proxy_set_header Host \$http_host;
proxy_max_temp_file_size 0;
proxy_pass http://127.0.0.1:9000;
proxy_redirect http:// https://;
}
}
EOF
Start Nginx på nytt for å sette endringene dine i kraft:
sudo systemctl daemon-reload
sudo systemctl restart nginx.service
sudo systemctl enable nginx.service
Endre site.url
innstillingen i Leanote-konfigurasjonsfilen:
cd /home/leanote/leanote/conf/
vi app.conf
Finn følgende linje:
site.url=http://leanote.example.com:9000
Erstatt det:
site.url=https://leanote.example.com
Lagre og avslutt:
:wq!
Kjør Leanote-skriptet igjen:
cd /home/leanote/leanote/bin
bash run.sh
Pek nå favorittnettleseren din til http://leanote.example.com/
, og du vil oppdage at HTTPS
protokollen aktiveres automatisk. Bare logg på som admin
brukeren med det nye passordet du konfigurerte tidligere, eller registrer nye brukerkontoer for teamsamarbeid.
Igjen, trykk på CTRL+ for Cå stoppe Leanote-skriptet. Vi vil demonisere dette skriptet senere.
wkhtmltopdf
programmetLeanote velger å bruke wkhtmltopdf
programmet til å eksportere HTML-sider som PDF-filer. Installer wkhtmltopdf
:
cd
wget https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox-0.12.5-1.centos7.x86_64.rpm
sudo yum localinstall -y wkhtmltox-0.12.5-1.centos7.x86_64.rpm
which wkhtmltopdf
Ikke glem å sende inn den wkhtmltopdf
binære banen /usr/local/bin/wkhtmltopdf
i Export PDF
delen i Leanote-nettadmin-dashbordet når Leanote er oppe og går igjen.
Merk: Hvis du finner uleselige tegn i eksporterte PDF-filer, kan du prøve å fikse problemet ved å legge til nødvendige skriftfiler i /usr/share/fonts/
katalogen.
For å holde Leanote-nettstedet ditt online, kan du bruke Supervisor-verktøyet til å automatisk starte Leanote-skriptet hvis det krasjer.
Installer Supervisor med YUM:
sudo yum install -y supervisor
Lag en enkel Supervisor- .ini
fil for Leanote:
cat <<EOF | sudo tee /etc/supervisord.d/leanote.ini
[program:leanote]
command=bash /home/leanote/leanote/bin/run.sh
directory=/home/leanote/leanote/bin/
priority=999
autostart=true
autorestart=true
user=leanote
redirect_stderr=true
EOF
Start Supervisor-tjenesten, samt Leanote-tjenesten:
sudo supervisord -c /etc/supervisord.conf
Bekreft statusen til Leanote-tjenesten:
sudo supervisorctl status leanote
Utgangen vil ligne følgende:
leanote RUNNING pid 3707, uptime 0:02:36
Bruker du et annet system? Plesk er et proprietært kontrollpanel for webverten som lar brukere administrere sine personlige og/eller klienters nettsteder, databaser
Squid er et populært, gratis Linux-program som lar deg lage en webproxy for videresending. I denne veiledningen vil du se hvordan du installerer Squid på CentOS for å gjøre deg om
Introduksjon Lighttpd er en apachegaffel som har som mål å være mye mindre ressurskrevende. Den er lett, derav navnet, og er ganske enkel å bruke. Installer
VULTR har nylig gjort endringer på sin side, og alt skal nå fungere bra ut av boksen med NetworkManager aktivert. Skulle du ønske å deaktivere
Icinga2 er et kraftig overvåkingssystem, og når det brukes i en master-klient-modell, kan det erstatte behovet for NRPE-baserte overvåkingskontroller. Mester-klienten
Bruker du et annet system? Apache Cassandra er et gratis og åpen kildekode NoSQL-databasebehandlingssystem som er designet for å gi skalerbarhet, høy
Bruker du et annet system? Microweber er en åpen kildekode dra og slipp CMS og nettbutikk. Microweber-kildekoden er vert på GitHub. Denne guiden vil vise deg
Bruker du et annet system? Vanilla forum er en åpen kildekode-forumapplikasjon skrevet i PHP. Det er en fullt tilpassbar, enkel å bruke og støtter ekstern
Bruker du et annet system? Mattermost er et åpen kildekode, selvdrevet alternativ til Slack SAAS-meldingstjenesten. Med andre ord, med Mattermost kan du ca
Hva du trenger En Vultr VPS med minst 1 GB RAM. SSH-tilgang (med root/administratorrettigheter). Trinn 1: Installere BungeeCord Først
Plesk-kontrollpanelet har en veldig fin integrasjon for Lets Encrypt. Lets Encrypt er en av de eneste SSL-leverandørene som gir ut sertifikater komplett
Lets Encrypt er en sertifiseringsinstans dedikert til å tilby SSL-sertifikater gratis. cPanel har bygget en ryddig integrasjon slik at du og din klient
Bruker du et annet system? Concrete5 er et åpen kildekode CMS som tilbyr mange karakteristiske og nyttige funksjoner for å hjelpe redaktører med å produsere innhold enkelt og
Bruker du et annet system? Review Board er et gratis og åpen kildekodeverktøy for gjennomgang av kildekode, dokumentasjon, bilder og mye mer. Det er nettbasert programvare
I denne veiledningen lærer du hvordan du setter opp HTTP-autentisering for en Nginx-webserver som kjører på CentOS 7. Krav For å komme i gang trenger du
Bruker du et annet system? GoAccess er en åpen kildekode-nettlogganalysator. Du kan bruke den til analyse av logger på sanntidsbasis i enten terminalen eller
YOURLS (Your Own URL Shortener) er en åpen kildekode-applikasjon for URL-forkorting og dataanalyse. I denne artikkelen vil vi dekke installasjonsprosessen
Bruker du et annet system? Introduksjon ArangoDB er en åpen kildekode NoSQL-database med en fleksibel datamodell for dokumenter, grafer og nøkkelverdier. Det er
Innledning /etc/-katalogen spiller en kritisk rolle i måten et Linux-system fungerer på. Grunnen til dette er fordi nesten alle systemkonfigurasjoner
Mange systemadministratorer administrerer store mengder servere. Når filer må åpnes på tvers av forskjellige servere, logger du på hver enkelt individuelt ca
Kunstig intelligens er ikke i fremtiden, det er her akkurat i nåtiden I denne bloggen Les hvordan kunstig intelligens-applikasjoner har påvirket ulike sektorer.
Er du også et offer for DDOS-angrep og forvirret over forebyggingsmetodene? Les denne artikkelen for å løse spørsmålene dine.
Du har kanskje hørt at hackere tjener mye penger, men har du noen gang lurt på hvordan tjener de den slags penger? la oss diskutere.
Vil du se revolusjonerende oppfinnelser fra Google og hvordan disse oppfinnelsene forandret livet til alle mennesker i dag? Les deretter til bloggen for å se oppfinnelser fra Google.
Konseptet med selvkjørende biler som skal ut på veiene ved hjelp av kunstig intelligens er en drøm vi har hatt en stund nå. Men til tross for flere løfter, er de ingen steder å se. Les denne bloggen for å lære mer...
Ettersom vitenskapen utvikler seg raskt og tar over mye av innsatsen vår, øker også risikoen for å utsette oss for en uforklarlig singularitet. Les hva singularitet kan bety for oss.
Lagringsmetodene for dataene har vært i utvikling kan være siden fødselen av dataene. Denne bloggen dekker utviklingen av datalagring på grunnlag av en infografikk.
Les bloggen for å kjenne ulike lag i Big Data Architecture og deres funksjoner på den enkleste måten.
I denne digitaldrevne verden har smarthusenheter blitt en avgjørende del av livet. Her er noen fantastiske fordeler med smarthusenheter om hvordan de gjør livet vårt verdt å leve og enklere.
Nylig lanserte Apple macOS Catalina 10.15.4 en tilleggsoppdatering for å fikse problemer, men det ser ut til at oppdateringen forårsaker flere problemer som fører til muring av mac-maskiner. Les denne artikkelen for å lære mer