CyberPanel installeren en configureren op uw CentOS 7-server
Gebruikt u een ander systeem? Introductie CyberPanel is een van de eerste bedieningspanelen op de markt die zowel open source is als OpenLiteSpeed gebruikt. Wat thi
Wekan is een kanban-bord gebouwd met het Meteor JavaScript-framework. Het wordt beschouwd als een open source en zelf-gehost alternatief voor Trello, dat bijna dezelfde functies biedt. Hiermee kunt u op kaarten gebaseerde "to-do" -beheerslijsten maken. Wekan is erg nuttig om de productiviteit te verhogen wanneer u in een samenwerkingsomgeving werkt. Wekan heeft een volledig responsieve webinterface en wordt actief vertaald in vele talen.
Voor deze zelfstudie gebruiken we wekan.example.com
de domeinnaam die naar de Vultr-instantie verwijst. Zorg ervoor dat u alle exemplaren van de voorbeelddomeinnaam vervangt door de werkelijke.
Update uw basissysteem met behulp van de handleiding CentOS 7 updaten . Zodra uw systeem is bijgewerkt, gaat u verder met het installeren van de afhankelijkheden.
Wekan ondersteunt alleen Node.js LTS version 4.8
. Om Node.js te installeren, gebruiken we de node-versiebeheerder. Installeer nvm
door het installatiescript uit te voeren.
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.4/install.sh | bash
nvm
Voer dit uit om onmiddellijk aan de slag te gaan.
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
Als het nvm
met succes is geïnstalleerd, moet u de versie ervan kunnen controleren.
[user@vultr ~]$ nvm --version
0.33.4
Installeer Node.js.
nvm install v4.8
Stel de standaardversie van Node.js.
nvm use node
Als Node.js met succes is geïnstalleerd, moet u de versie ervan kunnen controleren.
node -v
Je zult deze output zien.
[user@vultr ~]$ node -v
v4.8.4
NVM installeert Node.js alleen voor de huidige gebruiker. Voer Node.js uit om wereldwijd toegankelijk te zijn.
n=$(which node);n=${n%/bin/node}; chmod -R 755 $n/bin/*; sudo cp -r $n/{bin,lib,share} /usr
Node.js is nu beschikbaar als /bin/node
.
[user@vultr ~]$ sudo which node
/bin/node
MongoDB is een gratis en open source NoSQL-databaseserver. In tegenstelling tot traditionele databases die tabellen gebruiken om hun gegevens te ordenen, is MongoDB documentgericht en gebruikt het JSON-achtige documenten zonder schema's. Wekan gebruikt MongoDB om zijn gegevens op te slaan.
Wekan is alleen compatibel met MongoDB version 3.2
. MongoDB is niet beschikbaar in de standaardrepository YUM
, dus u moet een nieuw repositorybestand maken.
sudo nano /etc/yum.repos.d/mongodb-org-3.2.repo
Vul het bestand met de volgende inhoud.
[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc
Installeer MongoDB.
sudo yum install -y mongodb-org
Start de MongoDB-server en schakel deze automatisch in.
sudo systemctl start mongod
sudo systemctl enable mongod
Standaard is er geen verificatie ingeschakeld op een MongoDB-server. Elke gebruiker die toegang heeft tot de terminal van de server heeft volledige rechten op de MongoDB-installatie. Om de databaseserver te beveiligen en de toegang van een onbevoegde gebruiker te beperken, moeten we verificatie op de server instellen.
MongoDB biedt een mongo
shell die wordt gebruikt om query's uit te voeren op MongoDB. Schakel over naar de mongo
shell door te typen.
mongo
Maak een nieuwe MongoDB-gebruiker met rootprivileges. U kunt elke gebruikersnaam van uw keuze gebruiken. Zorg ervoor dat u het wachtwoord vervangt .
db.createUser(
{
user: "admin",
pwd: "StrongAdminPassword",
roles: [ { role: "root", db: "admin" } ]
}
)
Je zou de volgende output moeten zien.
[user@vultr ~]$ mongo
MongoDB shell version: 3.2.17
connecting to: test
Welcome to the MongoDB shell.
...
2017-09-29T20:42:29.042+0000 I CONTROL [initandlisten]
> db.createUser(
... {
... user: "admin",
... pwd: "StrongAdminPassword",
... roles: [ { role: "root", db: "admin" } ]
... }
... )
Successfully added user: {
"user" : "admin",
"roles" : [
{
"role" : "root",
"db" : "admin"
}
]
}
Sluit de MongoDB-opdrachtinterface af naar de Linux-terminal door op " Ctrl+C
" te drukken .
Bewerk het MongoDB-configuratiebestand.
sudo nano /etc/mongod.conf
Voeg de volgende regel toe aan het einde van het bestand.
security:
authorization: enabled
Start MongoDB opnieuw op, zodat de configuratiewijziging van kracht kan worden.
sudo systemctl restart mongod
Nu de beveiliging is ingeschakeld, kunt u testen of het werkt door opnieuw naar de mongo-shell te schakelen met behulp van de mongo
opdracht. Als u deze keer een query uitvoert, bijvoorbeeld show dbs
om de lijst met databases weer te geven, ziet u een bericht dat de autorisatie is mislukt. Sluit de sudo
gebruiker opnieuw af nadat u de login hebt getest als de nieuwe gebruiker die u zojuist hebt gemaakt.
Log in als de administrator
gebruiker die u zojuist hebt gemaakt.
mongo -u admin -p
Geef het wachtwoord van de gebruiker op voor een succesvolle aanmelding. Maak een nieuwe gebruiker voor de Wekan
database die zal worden gebruikt om Wekan-gegevens op te slaan.
use wekan
db.createUser(
{
user: "wekan",
pwd: "StrongPassword",
roles: ["readWrite"]
}
)
Zorg ervoor dat u de StrongPassword
met een sterk wachtwoord wijzigt . Je ziet de volgende output.
[user@vultr ~]$ mongo -u admin -p
MongoDB shell version: 3.2.17
Enter password:
connecting to: test
...
2017-09-29T20:52:32.450+0000 I CONTROL [initandlisten]
>
> use wekan
switched to db wekan
> db.createUser(
... {
... user: "wekan",
... pwd: "StrongPassword",
... roles: ["readWrite"]
... }
... )
Successfully added user: { "user" : "wekan", "roles" : [ "readWrite" ] }
Controleer op de laatste link naar de Wekan-release op Github, aangezien nieuwe releases zeer frequent zijn. Download de nieuwste versie van Wekan van Github en vervang de link naar het installatiepakket.
cd ~
wget https://github.com/wekan/wekan/releases/download/v0.41/wekan-0.41.tar.gz
Pak het gedownloade archief uit in een nieuwe map met de naam wekan
.
mkdir wekan
tar xzvf wekan-*.tar.gz -C wekan
Installeer Bzip2
, wat nodig is om de afhankelijkheden van Node.js uit te pakken.
sudo yum -y install bzip2
Installeer de afhankelijkheden van Node.js.
cd wekan/bundle/programs/server && npm install
De Wekan-server leest configuraties van de omgevingsvariabelen. Voer de volgende opdrachten uit om de configuraties in te stellen als omgevingsvariabelen.
export MONGO_URL='mongodb://wekan:[email protected]:27017/wekan?authSource=wekan'
export ROOT_URL='http://wekan.example.com'
export MAIL_URL='smtp://user:[email protected]:25/'
export MAIL_FROM='[email protected]'
export PORT=4000
Zorg ervoor dat u het MongoDB-wachtwoord vervangt voor de wekan
gebruiker die u hebt gemaakt. Werk ook de e-mail-URL bij volgens uw SMTP-serverinstellingen. Als u geen mailserver gereed heeft, kunt u deze configuratie later altijd wijzigen. Open de firewall om poort 4000
door de firewall toe te staan.
sudo firewall-cmd --zone=public --add-port=4000/tcp --permanent
sudo firewall-cmd --reload
Om de applicatie onmiddellijk te starten.
cd ~/wekan/bundle
node main.js
U kunt de applicatie nu openen door naar te gaan http://wekan.example.com:4000
. Je ziet de interface om in te loggen op het Wekan kanban-bord.
Voor productiegebruik wordt aanbevolen om een reverse proxy in te stellen om de applicatie op de standaardpoort te bedienen HTTP
en een systemd
service om het applicatieproces te beheren. In deze tutorial gebruiken we de Nginx-webserver als een reverse proxy, beveiligd met een Let's Encrypt gratis SSL.
Installeer de Nginx-webserver en Certbot, de clienttoepassing voor Let's Encrypt CA.
sudo yum -y install certbot nginx
Voordat u SSL-certificaten kunt aanvragen, moet u poort 80
en 443
via de firewall toestaan . Certbot controleert de domeinautoriteit voordat certificaten worden uitgegeven.
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
Nu we Wekan op een standaardpoort gebruiken HTTPS
, hoeven we geen poort 4000
via de firewall toe te staan. Pas de firewall aan om de poort te verwijderen 4000
.
sudo firewall-cmd --zone=public --remove-port=4000/tcp --permanent
sudo firewall-cmd --reload
Opmerking: de domeinnaam die u gebruikt om de certificaten van de Let's Encrypt CA te verkrijgen, moet naar de server worden gericht. De client verifieert de domeinautoriteit voordat de certificaten worden uitgegeven .
Genereer de SSL-certificaten.
sudo certbot certonly --standalone -d wekan.example.com
De gegenereerde certificaten worden waarschijnlijk in de /etc/letsencrypt/live/wekan.example.com/
directory opgeslagen . Het SSL-certificaat wordt opgeslagen als fullchain.pem
en de privésleutel wordt opgeslagen als privkey.pem
.
Let's Encrypt-certificaten verlopen over 90 dagen, dus het wordt aanbevolen om automatische verlenging van de certificaten in te stellen met Cronjob. Cron is een systeemservice die wordt gebruikt om periodieke taken uit te voeren.
Open het cron-taakbestand.
sudo crontab -e
Voeg de volgende regel toe aan het einde van het bestand.
30 5 * * * /usr/bin/certbot renew --quiet
De bovenstaande cron-taak wordt elke dag om 05.30 uur uitgevoerd. Als de certificaten vervallen, worden ze automatisch verlengd.
Maak een nieuwe virtuele host.
sudo nano /etc/nginx/conf.d/wekan.example.com.conf
Vul het bestand in met het volgende.
upstream wekan {
server 127.0.0.1:4000;
}
server {
listen 80;
listen [::]:80;
server_name wekan.example.com;
location / {
if ($ssl_protocol = "") {
rewrite ^ https://$server_name$request_uri? permanent;
}
}
}
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name wekan.example.com;
add_header Strict-Transport-Security "max-age=15768000";
ssl_certificate /etc/letsencrypt/live/wekan.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/wekan.example.com/privkey.pem;
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
ssl_prefer_server_ciphers on;
ssl_stapling on;
ssl_stapling_verify on;
error_page 497 https://$host:$server_port$request_uri;
location / {
proxy_pass http://wekan;
proxy_http_version 1.1;
proxy_set_header Host $host:$server_port;
proxy_set_header Referer $http_referer;
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-Ssl on;
proxy_set_header X-Nginx-Proxy true;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_redirect off;
proxy_send_timeout 86400;
proxy_read_timeout 86400;
}
}
Vervang wekan.example.com
door uw werkelijke domeinnaam in de bovenstaande configuratie.
Start Nginx opnieuw op zodat de wijzigingen van kracht kunnen worden.
sudo systemctl restart nginx
Schakel Nginx in om automatisch te starten tijdens het opstarten.
sudo systemctl enable nginx
Maak een nieuwe gebruiker voor het proces.
sudo adduser wekan -s /usr/sbin/nologin -d /opt/wekan
Verplaats nu alle bestanden naar de /opt/wekan
map.
sudo mv ~/wekan/* /opt/wekan/
Geef de nieuw aangemaakte gebruiker het eigendom van de bestanden.
sudo chown -R wekan:wekan /opt/wekan
Wekan neemt geen gegevens van enig configuratiebestand. In plaats daarvan krijgt het toegang via omgevingsvariabelen. We zullen een nieuw bestand maken om de omgevingsvariabelen op te slaan. Het bestand met de omgevingsvariabelen wordt via de Systemd
service doorgegeven .
Maak een nieuw bestand om omgevingsvariabelen op te slaan.
sudo nano /opt/wekan/config.env
Vul het bestand met de volgende inhoud.
MONGO_URL='mongodb://wekan:[email protected]:27017/wekan?authSource=wekan'
ROOT_URL='http://wekan.example.com'
MAIL_URL='smtp://user:[email protected]:25/'
MAIL_FROM='[email protected]'
PORT=4000
HTTP_FORWARDED_COUNT=1
Zorg ervoor dat u de username
en vervangt password
.
Geef het eigendom aan de wekan
gebruiker.
sudo chown -R wekan:wekan /opt/wekan/config.env
Maak een nieuw servicebestand voor de Wekan systemd-service.
sudo nano /etc/systemd/system/wekan.service
Vul het bestand in met het volgende.
[Unit]
Description=Wekan Server
After=syslog.target
After=network.target
[Service]
Type=simple
Restart=on-failure
StartLimitInterval=86400
StartLimitBurst=5
RestartSec=10
ExecStart=/bin/node /opt/wekan/bundle/main.js
EnvironmentFile=/opt/wekan/config.env
ExecReload=/bin/kill -USR1 $MAINPID
RestartSec=10
User=wekan
Group=wekan
WorkingDirectory=/opt/wekan
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=Wekan
[Install]
WantedBy=multi-user.target
Sla het bestand op en verlaat de editor. Nu kunt u Wekan eenvoudig starten.
sudo systemctl start wekan
Om Wekan in staat te stellen automatisch te starten tijdens het opstarten.
sudo systemctl enable wekan
Om de status van de Wekan-service te controleren.
sudo systemctl status wekan
U hebt nu toegang tot de Wekan-instantie op https://wekan.example.com
. Begin met het aanmaken van een nieuw account. Nadat u het account heeft aangemaakt, kunt u beheerderstoegang voor de nieuw aangemaakte gebruiker inschakelen. Log in op de MongoDB-shell als de administratieve gebruiker.
mongo -u wekan -p --authenticationDatabase "wekan"
Selecteer nu de wekan
database en werk het object bij om de gebruiker te promoten bij de admin-gebruiker.
use wekan
db.users.update({username:'admin_user'},{$set:{isAdmin:true}})
Zorg ervoor dat u deze vervangt admin_user
door de daadwerkelijke gebruikersnaam van de gebruiker die u heeft gemaakt. Vanuit de admin-interface kunt u zelfregistratie uitschakelen en SMTP-instellingen bijwerken.
Gefeliciteerd, je hebt het Wekan Kanban-bord met succes op je Vultr CentOS-exemplaar geïnstalleerd.
Gebruikt u een ander systeem? Introductie CyberPanel is een van de eerste bedieningspanelen op de markt die zowel open source is als OpenLiteSpeed gebruikt. Wat thi
Introductie Sensu is een gratis en open source monitoringoplossing die kan worden gebruikt om server, applicatie en verschillende systeemservices te monitoren. Sensu i
Het gebruik van een sudo-gebruiker om toegang te krijgen tot een server en opdrachten uit te voeren op rootniveau is een veel voorkomende praktijk onder Linux en Unix-systeembeheerder. Het gebruik van een sud
Gebruikt u een ander systeem? RTMP is geweldig voor het weergeven van live inhoud. Wanneer RTMP is gekoppeld aan FFmpeg, kunnen streams worden omgezet in verschillende kwaliteiten. Vultr ik
TaskBoard is een gratis en open source webbeheer voor tijdbeheer. Geïnspireerd door Kanban, kan TaskBoard u helpen bij het bijhouden van dingen die moeten worden gedaan in een
Gebruikt u een ander systeem? Gradle is een gratis en open source toolset voor het automatiseren van builds, gebaseerd op de concepten van Apache Ant en Apache Maven. Gradle biedt
Gebruikt u een ander systeem? In deze handleiding zullen we zien hoe u een FTP-server (ProFTPd) configureert om bestanden over te zetten tussen uw pc en uw server.
Gebruikt u een ander systeem? Netdata is een rijzende ster op het gebied van realtime monitoring van systeemstatistieken. Vergeleken met andere tools van dezelfde soort, Netdata:
Gebruikt u een ander systeem? Apache Cassandra is een gratis en open source NoSQL-databasebeheersysteem dat is ontworpen om schaalbaarheid te bieden
In deze tutorial leer je goed hoe je een Just Cause 2 multiplayer-server opzet. Vereisten Zorg ervoor dat het systeem volledig is bijgewerkt voordat we beginnen
Gebruikt u een ander systeem? In deze tutorial leg ik uit hoe je een Starbound-server instelt op CentOS 7. Vereisten Je moet dit spel op je hebben
ZNC is een gratis en open-source IRC-uitsmijter die permanent verbonden blijft met een netwerk, zodat klanten berichten kunnen ontvangen die worden verzonden terwijl ze offline zijn. Thi
Django is een populair Python-framework voor het schrijven van webapplicaties. Met Django kun je sneller applicaties bouwen, zonder het wiel opnieuw uit te vinden. Als je wilt
MantisBT, of Mantis Bug Tracker, is een open source issue tracker geschreven in PHP. MantisBT is uitgebalanceerd tussen gebruiksgemak en functionaliteit, mits
Gebruikt u een ander systeem? Elgg is een open source engine voor sociaal netwerken waarmee sociale omgevingen kunnen worden gecreëerd, zoals sociale campusnetwerken
Froxlor is een open source, gratis, lichtgewicht en toch krachtig serverbeheerpaneel dat geweldig is voor het opzetten en beheren van webhostingservices. Thi
Gebruikt u een ander systeem? Alfresco Community Edition is een open source-versie van de Alfresco Content Services. Het is geschreven in Java en gebruikt PostgreSQL t
Vtiger CRM is een populaire applicatie voor klantrelatiebeheer die bedrijven kan helpen hun verkoop te laten groeien, klantenservice te bieden en de winst te vergroten. ik
Wat je nodig hebt Een Vultr VPS met minimaal 1 GB RAM. SSH-toegang (met root- / beheerdersrechten). Stap 1: BungeeCord installeren Eerste dingen eerst
MaraDNS is een lichtgewicht maar robuust open source DNS-serverprogramma. Vergeleken met andere applicaties van dezelfde soort, zoals ISC BIND, PowerDNS en djbdns
Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek
ReactOS, een open source en gratis besturingssysteem is hier met de nieuwste versie. Kan het voldoen aan de behoeften van moderne Windows-gebruikers en Microsoft uitschakelen? Laten we meer te weten komen over deze oude stijl, maar een nieuwere OS-ervaring.
WhatsApp heeft eindelijk de Desktop-app voor Mac- en Windows-gebruikers gelanceerd. Nu heb je eenvoudig toegang tot WhatsApp vanuit Windows of Mac. Beschikbaar voor Windows 8+ en Mac OS 10.9+
Lees dit om te weten hoe kunstmatige intelligentie populair wordt onder de kleinschalige bedrijven en hoe het de kansen vergroot om ze te laten groeien en hun concurrenten voorsprong te geven.
Onlangs heeft Apple macOS Catalina 10.15.4 uitgebracht, een aanvullende update om problemen op te lossen, maar het lijkt erop dat de update meer problemen veroorzaakt die ertoe leiden dat mac-machines worden gemetseld. Lees dit artikel voor meer informatie
13 Commerciële data-extractietools voor big data
Onze computer slaat alle gegevens op een georganiseerde manier op, het zogenaamde Journaling-bestandssysteem. Het is een efficiënte methode waarmee de computer bestanden kan zoeken en weergeven zodra u op zoeken drukt.https://wethegeek.com/?p=94116&preview=true
Naarmate de wetenschap zich snel ontwikkelt en veel van onze inspanningen overneemt, nemen ook de risico's toe om onszelf te onderwerpen aan een onverklaarbare singulariteit. Lees, wat singulariteit voor ons kan betekenen.
Een inzicht in 26 Big Data-analysetechnieken: deel 1
AI in de zorg heeft de afgelopen decennia grote sprongen gemaakt. De toekomst van AI in de gezondheidszorg groeit dus nog steeds met de dag.