So installieren Sie MODX Revolution auf einem CentOS 7 LAMP VPS
Verwenden Sie ein anderes System? MODX Revolution ist ein schnelles, flexibles, skalierbares, kostenloses und Open-Source-Content-Management-System (CMS) für Unternehmen, das i
Leanote ist eine kostenlose, leichte und Open-Source-Alternative zu Evernote, das in Golang geschrieben ist. Mit Blick auf die Benutzererfahrung bietet Leanote Benutzern zahlreiche praktische Funktionen, darunter plattformübergreifende Unterstützung, Schreiben in der MarkDown-Syntax, öffentliches oder privates Bloggen, Sammeln und Teilen von Wissen sowie Teamzusammenarbeit.
In diesem Artikel werde ich Sie durch das Einrichten eines Leanote-Servers auf einer CentOS 7-Serverinstanz führen. Aus Sicherheitsgründen wird auch die Aktivierung der HTTPS support
Verwendung eines Let's Encrypt SSL-Zertifikats und von Nginx behandelt.
203.0.113.1
.leanote
.leanote.example.com
, die auf die oben erwähnte Serverinstanz verweist.Beim Starten einer neuen Vultr CentOS 7-Serverinstanz wird immer empfohlen, eine Auslagerungsdatei einzurichten, um sicherzustellen, dass das System reibungslos funktioniert. Das Erstellen einer Auslagerungsdatei mit einer Größe von 2048 MB ist beispielsweise für einen Computer mit 2 GB Speicher geeignet.
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
Hinweis: Wenn Sie eine andere Servergröße verwenden, müssen Sie möglicherweise die Größe der Auslagerungsdatei ändern.
Laden Sie die neueste stabile Version von Leanote für das 64-Bit-Linux-System herunter und extrahieren Sie sie:
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
Wie von Leanote gefordert, muss das MongoDB NoSQL DBMS vorhanden sein, bevor Sie einen Leanote-Server erfolgreich einrichten können.
Erstellen Sie das MongoDB 4.0 YUM-Repo wie folgt:
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
Installieren Sie alle MongoDB-Komponenten und -Tools mit dem zuvor erstellten MongoDB 4.0 YUM-Repo:
sudo yum install -y mongodb-org
Standardmäßig verwendet MongoDB den 27017
Port beim Arbeiten. Dies ist nicht zulässig, wenn sich SELinux im enforcing
Modus auf dem CentOS 7-Computer befindet. Verwenden Sie den folgenden Befehl, um den aktuellen SELinux-Modus zu bestätigen:
sudo getenforce
Auf einer Vultr CentOS 7-Serverinstanz ist SELinux standardmäßig deaktiviert. Die Ausgabe des obigen Befehls wäre also:
Disabled
In diesem Fall können Sie die folgenden Anweisungen zum Konfigurieren von SELinux überspringen und fortfahren.
Wenn Sie jedoch eine ursprüngliche CentOS 7-Serverinstanz ausführen, lautet die Ausgabe des obigen Befehls Enforcing
. Sie müssen eine der drei folgenden Optionen ausführen, bevor Sie den MongoDB-Dienst starten und aktivieren können.
Option 1: Erlauben Sie MongoDB, den 27017
Port zu verwenden
sudo semanage port -a -t mongod_port_t -p tcp 27017
Option 2: Deaktivieren Sie SELinux
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
sudo shutdown -r now
Option 3: Ändern Sie SELinux in den permissive
Modus
sudo sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
sudo shutdown -r now
Starten Sie den MongoDB-Dienst und starten Sie ihn nach einem Systemneustart:
sudo systemctl start mongod.service
sudo systemctl enable mongod.service
Verwenden Sie die folgenden Befehle, um erste Leanote-Daten in MongoDB zu importieren:
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/
Aus Sicherheitsgründen müssen Sie die Zugriffssteuerung auf MongoDB direkt nach dem Betrieb des MongoDB-Dienstes aktivieren. Zu diesem Zweck müssen Sie mindestens zwei MongoDB-Benutzerkonten erstellen: ein Benutzeradministratorkonto und ein Datenbankadministratorkonto. Sie müssen auch die MongoDB-Konfiguration ändern.
Rufen Sie die MongoDB-Shell auf:
mongo --host 127.0.0.1:27017
Zur admin
Datenbank wechseln:
use admin
Erstellen Sie einen Benutzeradministrator mit dem Namen useradmin
, der ein Kennwort verwendet useradminpassword
:
db.createUser({ user: "useradmin", pwd: "useradminpassword", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })
Hinweis: Der Benutzeradministrator useradmin
soll alle MongoDB-Benutzer verwalten. Daher ist es ratsam, ein sicheres Kennwort zu wählen. Ein sicherer Tipp ist natürlich, ihn durch useradmin
einen schwer zu erratenden Benutzernamen zu ersetzen .
Zur leanote
Datenbank wechseln:
use leanote
Erstellen Sie einen Datenbankadministrator mit dem Namen leanoteadmin
, der ein Kennwort verwendet leanoteadminpassword
:
db.createUser({ user: "leanoteadmin", pwd: "leanoteadminpassword", roles: [{ role: "dbOwner", db: "leanote" }] })
Hinweis : Auch hier wird empfohlen, einen weniger bekannten Benutzernamen und ein schwer zu erratendes Kennwort zu wählen.
Nachdem Sie die MongoDB-Benutzer erstellt haben, können Sie die Ergebnisse bestätigen:
use admin
db.auth("useradmin", "useradminpassword")
Bestätigen Sie den Datenbankadministrator:
use leanote
db.auth("leanoteadmin", "leanoteadminpassword")
Beide werden 1
als Bestätigung ausgegeben .
Beenden Sie die MongoDB-Shell:
exit
Um die Zugriffssteuerung auf MongoDB zu aktivieren, müssen Sie außerdem zwei Zeilen /etc/mongod.conf
wie folgt an die MongoDB-Konfigurationsdatei anhängen :
sudo bash -c "echo 'security:' >> /etc/mongod.conf"
sudo bash -c "echo ' authorization: enabled' >> /etc/mongod.conf"
Starten Sie den MongoDB-Dienst neu, damit die Änderungen wirksam werden:
sudo systemctl restart mongod.service
Von nun an können Sie nur noch die beiden Benutzerkonten verwenden, um auf MongoDB zuzugreifen und diese zu verwalten, useradmin
um alle MongoDB-Benutzer zu verwalten und nur leanoteadmin
um die leanote
Datenbank zu verwalten.
Sichern Sie die Leanote-Konfigurationsdatei /home/leanote/leanote/conf/app.conf
:
cd /home/leanote/leanote/conf/
cp app.conf app.conf.bak
Verwenden Sie den vi
Editor, um die Leanote-Konfigurationsdatei zu öffnen:
vi app.conf
Suchen Sie nacheinander die folgenden Zeilen:
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
Ersetzen Sie sie jeweils wie unten gezeigt:
site.url=http://leanote.example.com:9000
db.username=leanoteadmin
db.password=leanoteadminpassword
app.secret=E52tyCDBRk39HmhdGYJLBS3etXpnz7DymmxkgHBYxd7Y9muWVVJ5QZNdDEaHV2sA
Hinweis: Aus Sicherheitsgründen app.secret
MUSS der Wert des Parameters eine 64-Bit-Zufallszeichenfolge sein, die sich von der ursprünglichen unterscheidet. Stellen Sie sicher, dass Sie den Wert E52tyCDBRk39HmhdGYJLBS3etXpnz7DymmxkgHBYxd7Y9muWVVJ5QZNdDEaHV2sA
durch Ihren eigenen 64-Bit-Zufallswert ersetzen .
Speichern und Beenden:
:wq!
Ändern Sie die Firewall-Regeln, um eingehenden TCP-Verkehr auf dem Port zuzulassen 9000
:
sudo firewall-cmd --permanent --add-port=9000/tcp
sudo systemctl reload firewalld.service
Starten Sie Leanote mit dem offiziellen Skript:
cd /home/leanote/leanote/bin
bash run.sh
Nach dem Sehen Listening on.. 0.0.0.0:9000
, zeigen Sie Ihren Lieblings - Web - Browser http://leanote.example.com:9000
mit der Leanote Website zu starten.
Verwenden Sie das Standard-Leanote-Administratorkonto, um sich anzumelden:
admin
abc123
Aus Sicherheitsgründen sollten Sie das Standardkennwort sofort nach der Anmeldung ändern.
HTTPS
ZugriffDerzeit können Sie bereits über das HTTP-Protokoll, ein weniger sicheres Protokoll, auf den Leanote-Server zugreifen. Um die Systemsicherheit zu verbessern, können Sie dies aktivieren, HTTPS
indem Sie sowohl ein Let's Encrypt SSL-Zertifikat als auch den Nginx-Reverse-Proxy auf Ihrem Computer bereitstellen .
Bevor Sie das Let's Encrypt SSL-Zertifikat erhalten können, müssen Sie den Hostnamen und den vollqualifizierten Domänennamen auf Ihrem Computer ordnungsgemäß einrichten.
Drücken Sie zuerst CTRL+ C, um das Leanote-Skript zu stoppen run.sh
.
Richten Sie als Nächstes den Hostnamen und den FQDN wie folgt ein:
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
Sie können die Ergebnisse auch bestätigen:
hostname
hostname -f
Blockieren Sie eingehenden Datenverkehr auf dem Port 9000
und lassen Sie eingehenden Datenverkehr auf Ports für HTTP
und HTTPS
Dienste zu:
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
Installieren Sie das Dienstprogramm Certbot:
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
Beantragen Sie ein Let's Encrypt SSL-Zertifikat für die Domain leanote.example.com
:
sudo certbot certonly --standalone --agree-tos --no-eff-email -m [email protected] -d leanote.example.com
Das Zertifikat und die Kette werden wie folgt gespeichert:
/etc/letsencrypt/live/leanote.example.com/fullchain.pem
Die private Schlüsseldatei wird wie folgt gespeichert:
/etc/letsencrypt/live/leanote.example.com/privkey.pem
Standardmäßig läuft das Let's Encrypt SSL-Zertifikat in drei Monaten ab. Sie können einen Cron-Job wie unten gezeigt einrichten, um Ihre Let's Encrypt-Zertifikate automatisch zu erneuern:
sudo crontab -e
Drücken Sie I, um den insert
Modus aufzurufen, und geben Sie die folgende Zeile ein:
0 0,12 * * * python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew
Speichern und Beenden:
:wq!
Dieser Cron-Job versucht jeden Tag um 12.00 Uhr, das Let's Encrypt-Zertifikat zu erneuern.
Installieren Sie Nginx mit dem EPEL YUM Repo:
sudo yum install -y nginx
Erstellen Sie eine Konfigurationsdatei für 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
Starten Sie Nginx neu, um Ihre Änderungen zu übernehmen:
sudo systemctl daemon-reload
sudo systemctl restart nginx.service
sudo systemctl enable nginx.service
Ändern Sie die site.url
Einstellung in der Leanote-Konfigurationsdatei:
cd /home/leanote/leanote/conf/
vi app.conf
Suchen Sie die folgende Zeile:
site.url=http://leanote.example.com:9000
Ersetze es:
site.url=https://leanote.example.com
Speichern und Beenden:
:wq!
Führen Sie das Leanote-Skript erneut aus:
cd /home/leanote/leanote/bin
bash run.sh
Zeigen Sie jetzt mit Ihrem bevorzugten Webbrowser auf http://leanote.example.com/
, und Sie werden feststellen, dass das HTTPS
Protokoll automatisch aktiviert wird. admin
Melden Sie sich einfach als Benutzer mit dem neuen Kennwort an, das Sie zuvor eingerichtet haben, oder registrieren Sie neue Benutzerkonten für die Teamzusammenarbeit.
Drücken Sie erneut CTRL+ C, um das Leanote-Skript zu stoppen. Wir werden dieses Skript später dämonisieren.
wkhtmltopdf
ProgrammLeanote verwendet das wkhtmltopdf
Programm zum Exportieren von HTML-Seiten als PDF-Dateien. Installieren 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
Vergessen Sie nicht , die einreichen wkhtmltopdf
binären Pfad /usr/local/bin/wkhtmltopdf
im Export PDF
Abschnitt im Leanote Web - Admin - Dashboard , wenn Leanote ist und läuft wieder.
Hinweis: Wenn Sie in exportierten PDF-Dateien unlesbare Zeichen finden, können Sie versuchen, das Problem zu beheben, indem Sie dem /usr/share/fonts/
Verzeichnis die erforderlichen Schriftdateien hinzufügen .
Um Ihre Leanote-Site online zu halten, können Sie das Supervisor-Dienstprogramm verwenden, um das Leanote-Skript bei einem Absturz automatisch zu starten.
Installieren Sie Supervisor mit YUM:
sudo yum install -y supervisor
Erstellen Sie eine einfache Supervisor- .ini
Datei für 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
Starten Sie den Supervisor-Service sowie den Leanote-Service:
sudo supervisord -c /etc/supervisord.conf
Bestätigen Sie den Status des Leanote-Dienstes:
sudo supervisorctl status leanote
Die Ausgabe ähnelt der folgenden:
leanote RUNNING pid 3707, uptime 0:02:36
Verwenden Sie ein anderes System? MODX Revolution ist ein schnelles, flexibles, skalierbares, kostenloses und Open-Source-Content-Management-System (CMS) für Unternehmen, das i
Vultr bietet Ihnen eine hervorragende Konnektivität für private Netzwerke für Server, die am selben Standort ausgeführt werden. Aber manchmal möchten Sie zwei Server in verschiedenen Ländern
Verwenden Sie ein anderes System? Einführung CyberPanel ist eines der ersten Control Panels auf dem Markt, das sowohl Open Source als auch OpenLiteSpeed verwendet. Was ist das?
Verwenden Sie ein anderes System? ESpeak kann TTS-Audiodateien (Text-to-Speech) generieren. Diese können aus vielen Gründen nützlich sein, z. B. um Ihr eigenes Turin zu erstellen
Verwenden Sie ein anderes System? Thelia ist ein Open-Source-Tool zum Erstellen von E-Business-Websites und zum Verwalten von Online-Inhalten, die in PHP geschrieben wurden. Thelia Quellcode i
Cockpit ist ein kostenloses Open Source-Programm für die Linux-Serververwaltung. Es ist sehr leicht und hat eine schöne, einfach zu bedienende Weboberfläche. Es erlaubt System
Gollum ist die Git-basierte Wiki-Software, die als Backend des GitHub-Wikis verwendet wird. Durch die Bereitstellung von Gollum können Sie ein GitHub-ähnliches Wiki-System auf Ihnen hosten
BBR (Bottleneck Bandwidth and RTT) ist ein neuer Algorithmus zur Überlastungskontrolle, der von Google zum Linux-Kernel-TCP-Stack hinzugefügt wird. Mit BBR an Ort und Stelle,
YOURLS (Your Own URL Shortener) ist eine Open-Source-Anwendung zur URL-Verkürzung und Datenanalyse. In diesem Artikel werden wir den Installationsprozess behandeln
Verwenden Sie ein anderes System? RTMP eignet sich hervorragend für die Bereitstellung von Live-Inhalten. Wenn RTMP mit FFmpeg gekoppelt ist, können Streams in verschiedene Qualitäten konvertiert werden. Vultr i
LimeSurvey ist ein kostenloses und Open-Source-Online-Umfragetool, das häufig zum Veröffentlichen von Online-Umfragen und zum Sammeln von Umfrage-Feedback verwendet wird. In diesem Artikel werde ich
Einführung Java ist eine beliebte Softwareplattform, mit der Sie Java-Anwendungen und -Applets in verschiedenen Hardwareumgebungen entwickeln und ausführen können. Es gibt
Verwenden Sie ein anderes System? Netdata ist ein aufstrebender Stern im Bereich der Echtzeitüberwachung von Systemmetriken. Im Vergleich zu anderen Tools der gleichen Art bietet Netdata:
In diesem Tutorial erfahren Sie, wie Sie einen Just Cause 2-Multiplayer-Server einrichten. Voraussetzungen Bitte stellen Sie sicher, dass das System vollständig aktualisiert ist, bevor Sie beginnen
Verwenden Sie ein anderes System? In diesem Tutorial werde ich erklären, wie ein Starbound-Server unter CentOS 7 eingerichtet wird. Voraussetzungen Sie müssen dieses Spiel besitzen
ZNC ist ein kostenloser Open-Source-IRC-Bouncer, der permanent mit einem Netzwerk verbunden bleibt, sodass Clients Nachrichten empfangen können, die gesendet werden, während sie offline sind. Thi
Django ist ein beliebtes Python-Framework zum Schreiben von Webanwendungen. Mit Django können Sie Anwendungen schneller erstellen, ohne das Rad neu zu erfinden. Wenn du willst
ionCube Loader ist eine PHP-Erweiterung, mit der ein Webserver PHP-Dateien ausführen kann, die mit ionCube Encoder codiert wurden und für deren Ausführung erforderlich sind
Einführung Installieren Sie in diesem Tutorial PufferPanel auf unserem Vultr VPS. PufferPanel ist ein Open Source-Bedienfeld, das Sie kostenlos verwalten können
Verwenden Sie ein anderes System? Einführung BoltWire ist ein kostenloses und leichtes Content-Management-System, das in PHP geschrieben wurde. Im Vergleich zu den meisten anderen Content Managern
Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist
ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.
Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+
Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.
Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren
13 Tools zur kommerziellen Datenextraktion von Big Data
Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true
Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.
Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1
KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.