Come installare e configurare CyberPanel sul server CentOS 7
Usi un sistema diverso? Introduzione CyberPanel è uno dei primi pannelli di controllo sul mercato che è sia open source che utilizza OpenLiteSpeed. Che cosa
Diaspora è un social network open source consapevole della privacy. In questo tutorial imparerai come impostare e configurare un pod Diaspora su CentOS 7.
Innanzitutto, scarica e installa l'ultima versione di EPEL.
sudo yum install epel-release
Installa i pacchetti necessari.
sudo yum install tar make automake gcc gcc-c++ git net-tools cmake libcurl-devel libxml2-devel libffi-devel libxslt-devel wget redis ImageMagick nodejs postgresql-devel
Abilita redis
l'avvio all'avvio del sistema.
sudo systemctl enable redis
sudo systemctl start redis
Diaspora supporta MySQL, MariaDB e PostgreSQL. In questa guida useremo PostgreSQL.
Installa PostgreSQL.
sudo yum install postgresql-server postgresql-contrib postgresql-setup initdb
Abilita PostgreSQL per l'avvio all'avvio del sistema.
sudo systemctl enable postgresql
sudo systemctl start postgresql
Connettiti a PostgreSQL con l' postgres
utente.
sudo -u postgres psql
Crea un utente Diaspora.
CREATE USER diaspora WITH CREATEDB PASSWORD '<password>';
Questo è l'account utente che eseguirà Diaspora.
sudo adduser --disabled-login diaspora
Passa al nuovo utente.
sudo su - diaspora
Esistono diversi modi per installare Ruby. Useremo rbenv
per gestire l'ambiente e le versioni.
Innanzitutto, dovrai installare i pacchetti richiesti da Ruby.
sudo yum install -y git-core zlib zlib-devel gcc-c++ patch readline readline-devel libyaml-devel libffi-devel openssl-devel make bzip2 autoconf automake libtool bison curl sqlite-devel
Installa rbenv
.
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
cd ~/.rbenv && src/configure && make -C src
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
Riconnetti per ricaricare il percorso.
exit
sudo su - diaspora
Installa il ruby-build
plugin per rbenv
compilare Ruby.
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
Installa Ruby.
rbenv install 2.4.3
rbenv global 2.4.3
Useremo Postfix come inoltro SMTP per inviare e-mail agli utenti. Fare riferimento a questo articolo per informazioni su come installare un semplice server di posta, con Postfix come MTA, Dovecot come MDA e Sieve per l'ordinamento della posta.
Clonare il codice sorgente per Diaspora.
cd ~
git clone -b master https://github.com/diaspora/diaspora.git
cd diaspora
Copia il file di configurazione del database di esempio nella posizione richiesta da Diaspora.
cp config/database.yml.example config/database.yml
cp config/diaspora.yml.example config/diaspora.yml
Aprire il file di configurazione del database in un editor di testo per modificare alcune impostazioni.
nano config/database.yml
Modificare le impostazioni del database in modo che corrispondano all'utente PostgreSQL e alla password creati in precedenza.
postgresql: &postgresql
adapter: postgresql
host: localhost
port: 5432
username: diaspora
password: __password__
encoding: unicode
Apri il file di configurazione di Diaspora.
nano config/diaspora.yml
Dovrai aggiornare alcune impostazioni in questo file per far funzionare correttamente Diaspora.
url
: Imposta qui l'URL pubblico sul tuo pod.certificate_authorities
: Rimuovi il # iniziale per decommentarlo.rails_environment
: È necessario impostarlo sulla produzione.require_ssl
: Impostare questo su false per impedire un reindirizzamento da http: // a https: //.Installa Bundle, il gestore della libreria Ruby.
gem install bundler
script/configure_bundler
Nota : se si verificano errori relativi alla versione di Ruby, modificarla .ruby-version
e inserirne una propria (qui 2.4.3
anziché 2.4
).
Crea e configura il database.
RAILS_ENV=production bin/rake db:create db:migrate
Questo comando rake precompila le risorse.
RAILS_ENV=production bin/rake assets:precompile
Esistono molti modi per gestire la Diaspora come servizio. In questo tutorial useremo Systemd.
Innanzitutto, crea i seguenti file.
target
file systemd :
touch /etc/systemd/system/diaspora.target
web
file di servizio systemd :
touch /etc/systemd/system/diaspora-web.service
sidekiq
file di servizio systemd :
touch /etc/systemd/system/diaspora-sidekiq.service
Incolla il seguente testo di configurazione per ciascun file creato in precedenza.
target
file:
[Unit]
Description=Diaspora social network
Wants=postgresql.service
Wants=redis-server.service
After=redis-server.service
After=postgresql.service
[Install]
WantedBy=multi-user.target
web
file di servizio:
[Unit]
Description=Diaspora social network (unicorn)
PartOf=diaspora.target
StopWhenUnneeded=true
[Service]
User=diaspora
Environment=RAILS_ENV=production
WorkingDirectory=/home/diaspora/diaspora
ExecStart=/bin/bash -lc "bin/bundle exec unicorn -c config/unicorn.rb -E production"
Restart=always
[Install]
WantedBy=diaspora.target
sidekiq
file di servizio:
[Unit]
Description=Diaspora social network (sidekiq)
PartOf=diaspora.target
StopWhenUnneeded=true
[Service]
User=diaspora
Environment=RAILS_ENV=production
WorkingDirectory=/home/diaspora/diaspora
ExecStart=/bin/bash -lc "bin/bundle exec sidekiq"
Restart=always
[Install]
WantedBy=diaspora.target
Abilita i servizi di avvio.
sudo systemctl enable diaspora.target diaspora-sidekiq.service diaspora-web.service
Riavvia i servizi.
sudo systemctl restart diaspora.target
Assicurarsi che funzionino correttamente.
sudo systemctl status diaspora-web.service
sudo systemctl status diaspora-sidekiq.service
Useremo Nginx come proxy inverso per servire risorse statiche.
Useremo acme.sh per ottenere un certificato Let's Encrypt.
Scarica il acme.sh
codice sorgente.
git clone https://github.com/Neilpang/acme.sh.git
Genera un certificato Let's Encrypt.
./.acme.sh/acme.sh --issue --log \
--dns \
--keylength ec-256 \
--cert-file /etc/nginx/https/cert.pem \
--key-file /etc/nginx/https/key.pem \
--fullchain-file /etc/nginx/https/fullchain.pem \
-d example.com \
-d www.example.com
Installa Nginx.
sudo yum install nginx
Crea un nuovo file di configurazione Nginx per il nostro pod Diaspora.
nano /etc/nginx/conf.d/diaspora.conf
Popolare il file con il seguente contenuto.
upstream diaspora_server {
server unix:/home/diaspora/diaspora/tmp/diaspora.sock;
}
server {
listen 80;
listen [::]:80;
server_name www.example.com example.com;
return 301 https://example.com$request_uri;
access_log /dev/null;
error_log /dev/null;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name www.example.com example.com;
if ($host = www.example.com) {
return 301 https://example.com$request_uri;
}
access_log /var/log/nginx/dspr-access.log;
error_log /var/log/nginx/dspr-error.log;
ssl_certificate /etc/nginx/https/fullchain.pem;
ssl_certificate_key /etc/nginx/https/key.pem;
ssl_protocols TLSv1.2;
ssl_ciphers EECDH+CHACHA20:EECDH+AESGCM:EECDH+AES;
ssl_ecdh_curve X25519:P-521:P-384:P-256;
ssl_prefer_server_ciphers on;
ssl_stapling on;
ssl_stapling_verify on;
resolver 80.67.169.40 80.67.169.12 valid=300s;
resolver_timeout 5s;
ssl_session_cache shared:SSL:10m;
root /home/diaspora/diaspora/public;
client_max_body_size 5M;
client_body_buffer_size 256K;
try_files $uri @diaspora;
location /assets/ {
expires max;
add_header Cache-Control public;
}
location @diaspora {
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 Host $http_host;
proxy_redirect off;
proxy_pass http://diaspora_server;
}
}
Nota : passare example.com
al proprio nome di dominio registrato.
Dopo che tutte le modifiche sono state completate, verificare la presenza di errori nel file di configurazione.
sudo nginx -t
Riavvia Nginx per applicare le modifiche.
sudo systemctl restart nginx
Se stai eseguendo un firewall, esegui i seguenti comandi per consentire HTTP
e gestire il HTTPS
traffico.
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
Se ora visiti il nome di dominio del tuo pod Diaspora nel tuo browser ( https://example.com
), raggiungerai la pagina di benvenuto di Diaspora.
Fai clic sul collegamento Start by creating an account.
e inserisci i dettagli per creare un nuovo utente Diaspora. Quindi, sarai in grado di visualizzare la home page del tuo utente e iniziare a utilizzare il social network Diaspora.
Dopo aver creato un account, assegnagli i diritti di amministratore.
Role.add_admin User.where(username: "your_username").first.person
Ora hai accesso alla dashboard di amministrazione.
https://example.com/admins/dashboard
Sidekiq, che gestisce l'elaborazione dei processi in background, ha un'interfaccia web disponibile su https://example.com/sidekiq
. Le statistiche del pod sono disponibili all'indirizzo https://example.com/statistics
.
Useremo logrotate
per gestire i registri della diaspora.
Crea un nuovo logrotate
file per Diaspora.
nano /etc/logrotate/diaspora
Quindi, aggiungi le seguenti righe.
/home/diaspora/diaspora/log/*.log {
notifempty
copytruncate
missingok
compress
weekly
rotate 52
}
Ciò ruoterà i registri settimanalmente, li comprimerà e li manterrà per 52 settimane.
Quando arriva il momento di aggiornare Diaspora, attenersi alla seguente procedura.
Innanzitutto, aggiorna i pacchetti installati.
sudo yum update
Aggiorna il codice sorgente di Diaspora con git.
su - diaspora
cd diaspora
git pull
Aggiorna le gemme.
gem install bundler
bin/bundle --full-index
Migrare il database e ricompilare le risorse.
RAILS_ENV=production bin/rake db:migrate
RAILS_ENV=production bin/rake assets:precompile
Infine, riavvia Diaspora.
systemctl restart diaspora.target
Usi un sistema diverso? Introduzione CyberPanel è uno dei primi pannelli di controllo sul mercato che è sia open source che utilizza OpenLiteSpeed. Che cosa
Introduzione Sensu è una soluzione di monitoraggio gratuita e open source che può essere utilizzata per monitorare server, applicazioni e vari servizi di sistema. Sensu i
Usi un sistema diverso? Apache OpenMeetings è unapplicazione per conferenze Web open source. È scritto in Java e supporta più server di database. io
Luso di un utente sudo per accedere a un server ed eseguire comandi a livello di root è una pratica molto comune tra Linux e Unix Systems Administrator. Luso di un sud
Usando un sistema diverso? RabbitMQ è un broker di messaggi open source ampiamente utilizzato scritto nel linguaggio di programmazione Erlang. Come middleware orientato ai messaggi
Usi un sistema diverso? RTMP è ottimo per pubblicare contenuti live. Quando RTMP è associato a FFmpeg, i flussi possono essere convertiti in varie qualità. Vultr i
TaskBoard è unapp Web di gestione del tempo gratuita e open source. Ispirato da Kanban, TaskBoard può aiutarti a tenere traccia delle cose che devono essere fatte in a
Usi un sistema diverso? Gradle è un set di strumenti di automazione di build gratuito e open source basato sui concetti di Apache Ant e Apache Maven. Gradle fornisce
Usi un sistema diverso? In questa guida, vedremo come configurare un server FTP (ProFTPd) per trasferire file tra il tuo PC e il tuo server.
Usando un sistema diverso? Netdata è una stella nascente nel campo del monitoraggio delle metriche di sistema in tempo reale. Rispetto ad altri strumenti dello stesso tipo, Netdata:
Usi un sistema diverso? Apache Cassandra è un sistema di gestione di database NoSQL gratuito e open source progettato per fornire scalabilità, alta
In questo tutorial imparerai bene come configurare un server multiplayer Just Cause 2. Prerequisiti Assicurarsi che il sistema sia completamente aggiornato prima di iniziare
Usando un sistema diverso? In questo tutorial, spiegherò come impostare un server Starbound su CentOS 7. Prerequisiti Devi possedere questo gioco su di te
ZNC è un buttafuori IRC gratuito e open source che rimane permanentemente connesso a una rete in modo che i client possano ricevere messaggi inviati mentre sono offline. Thi
Django è un popolare framework Python per la scrittura di applicazioni Web. Con Django, puoi creare applicazioni più velocemente, senza reinventare la ruota. Se vuoi
Dopo aver modificato la porta SSH, configurato il port knocking e apportato altre modifiche per la sicurezza SSH, cè forse un altro modo per proteggerti
Introduzione MyCLI è un client da riga di comando per MySQL e MariaDB che ti consente di completare automaticamente e ti aiuta con la sintassi dei tuoi comandi SQL. MyCL
Usi un sistema diverso? Directus 6.4 CMS è un sistema di gestione dei contenuti senza testa (CMS) potente e flessibile, gratuito e open source che fornisce agli sviluppatori
Cosa ti serve Un VPS Vultr con almeno 1 GB di RAM. Accesso SSH (con privilegi di root / amministrativi). Passaggio 1: installare prima BungeeCord
MaraDNS è un programma server DNS open source leggero ma robusto. Rispetto ad altre applicazioni dello stesso tipo, come ISC BIND, PowerDNS e djbdns
Gli attacchi ransomware sono in aumento, ma l'intelligenza artificiale può aiutare ad affrontare l'ultimo virus informatico? L'intelligenza artificiale è la risposta? Leggi qui sai è AI boone o bane
ReactOS, un sistema operativo open source e gratuito è qui con l'ultima versione. Può essere sufficiente alle esigenze degli utenti Windows moderni e abbattere Microsoft? Scopriamo di più su questo vecchio stile, ma un'esperienza del sistema operativo più recente.
Whatsapp ha finalmente lanciato l'app desktop per utenti Mac e Windows. Ora puoi accedere facilmente a Whatsapp da Windows o Mac. Disponibile per Windows 8+ e Mac OS 10.9+
Leggi questo per sapere come l'intelligenza artificiale sta diventando popolare tra le aziende di piccole dimensioni e come sta aumentando le probabilità di farle crescere e dare un vantaggio ai loro concorrenti.
Recentemente Apple ha rilasciato macOS Catalina 10.15.4 un aggiornamento supplementare per risolvere i problemi, ma sembra che l'aggiornamento stia causando più problemi che portano al bricking delle macchine mac. Leggi questo articolo per saperne di più
13 strumenti commerciali per l'estrazione dei dati dai Big Data
Il nostro computer memorizza tutti i dati in un modo organizzato noto come file system di journaling. È un metodo efficiente che consente al computer di cercare e visualizzare i file non appena si preme search.https://wethegeek.com/?p=94116&preview=true
Man mano che la scienza si evolve a un ritmo rapido, assumendo gran parte dei nostri sforzi, aumentano anche i rischi di sottoporci a una singolarità inspiegabile. Leggi, cosa potrebbe significare per noi la singolarità.
Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1
L'intelligenza artificiale nell'assistenza sanitaria ha compiuto grandi passi avanti negli ultimi decenni. Pertanto, il futuro dell'IA in sanità continua a crescere giorno dopo giorno.