Come installare Paste 2.1 su un VPS CentOS 7 LAMP

Paste 2.1 è un'applicazione pastebin semplice e flessibile, gratuita e open source per la memorizzazione di codice, testo e altro. Inizialmente è stato sottratto dal codice sorgente originale disponibile gratuitamente utilizzato da pastebin.com prima che il dominio fosse venduto nel 2010. Da quel momento, gli sviluppatori di Paste hanno aggiunto molti miglioramenti e funzionalità come un dashboard di amministrazione con caratteristiche statiche e impostazioni del sito, Divieti di IP e utente, la possibilità di eliminare in modo selettivo paste, account utente con integrazione sociale, pagine del profilo e tutti i soliti extra come l'evidenziazione della sintassi per la maggior parte delle lingue, limiti di incolla configurabili e molto altro.

In questo tutorial installeremo Paste 2.1 su un VPS CentOS 7 LAMP usando il web server Apache, PHP 7.1 e un database MariaDB.

Prerequisiti

  • Un'istanza del server Vultr CentOS 7 pulita con accesso SSH

Passaggio 1: aggiungere un utente Sudo

Inizieremo aggiungendo un nuovo sudoutente.

Innanzitutto, accedi al tuo server come root:

ssh root@YOUR_VULTR_IP_ADDRESS

Aggiungi un nuovo utente chiamato user1(o il tuo nome utente preferito):

useradd user1

Successivamente, imposta la password per l' user1utente:

passwd user1

Quando richiesto, inserire una password sicura e memorabile.

Ora controlla il /etc/sudoersfile per assicurarti che il sudoersgruppo sia abilitato:

visudo

Cerca una sezione come questa:

%wheel        ALL=(ALL)       ALL

Questa riga ci dice che gli utenti membri del wheelgruppo possono usare il sudocomando per ottenere i rootprivilegi. Sarà decommentato di default in modo da poter semplicemente uscire dal file.

Quindi dobbiamo aggiungere user1al wheelgruppo:

usermod -aG wheel user1

Possiamo verificare l' user1appartenenza al gruppo e verificare che il usermodcomando abbia funzionato con il groupscomando:

groups user1

Ora usa il sucomando per passare al nuovo user1account utente sudo :

su - user1

Il prompt dei comandi verrà aggiornato per indicare che si è ora connessi user1all'account. Puoi verificarlo con il whoamicomando:

whoami

Ora riavvia il sshdservizio in modo da poter accedere tramite sshil nuovo account utente sudo non root che hai appena creato:

sudo systemctl restart sshd

Esci user1dall'account:

exit

Esci rootdall'account (che disconnetterà la sshsessione):

exit

Ora puoi sshaccedere all'istanza del server dal tuo host locale usando il nuovo user1account utente sudo non root :

ssh user1@YOUR_VULTR_IP_ADDRESS

Se vuoi eseguire sudo senza dover digitare una password ogni volta, quindi apri di /etc/sudoersnuovo il file, usando visudo:

sudo visudo

Modifica la sezione per il wheelgruppo in modo che assomigli a questo:

%wheel        ALL=(ALL)       NOPASSWD: ALL

Nota: la disabilitazione del requisito password per l'utente sudo non è una pratica consigliata, ma è inclusa qui in quanto può rendere la configurazione del server molto più conveniente e meno frustrante, specialmente durante sessioni di amministrazione di sistemi più lunghe. Se sei preoccupato per le implicazioni di sicurezza, puoi sempre ripristinare la modifica della configurazione all'originale dopo aver completato le attività di amministrazione.

Ogni volta che si desidera accedere rootall'account sudoutente dall'account utente, è possibile utilizzare uno dei seguenti comandi:

sudo -i
sudo su -

Puoi uscire rootdall'account e tornare al tuo sudoaccount utente in qualsiasi momento semplicemente digitando:

exit

Passaggio 2: aggiornare il sistema CentOS 7

Prima di installare eventuali pacchetti sull'istanza del server CentOS, aggiorneremo innanzitutto il sistema.

Assicurarsi di aver effettuato l'accesso al server utilizzando un utente sudo non root ed eseguire il comando seguente:

sudo yum -y update

Passaggio 3: installare Apache Web Server

Installa il web server Apache:

sudo yum -y install httpd

Quindi utilizzare il systemctlcomando per avviare e abilitare l'esecuzione automatica di Apache all'avvio:

sudo systemctl enable httpd
sudo systemctl start httpd

Controlla il tuo file di configurazione di Apache per assicurarti che la DocumentRootdirettiva punti alla directory corretta:

sudo vi /etc/httpd/conf/httpd.conf 

L' DocumentRootopzione di configurazione sarà simile a questa:

DocumentRoot "/var/www/html"

Ora, assicuriamoci che il mod_rewritemodulo Apache sia caricato. Possiamo farlo cercando il termine " mod_rewrite" nel file di configurazione dei moduli base di Apache .

Apri il file:

sudo vi /etc/httpd/conf.modules.d/00-base.conf

Cerca il termine mod_rewrite.

Se il mod_rewritemodulo Apache è caricato, troverai una linea di configurazione simile a questa:

LoadModule rewrite_module modules/mod_rewrite.so

Se la riga sopra inizia con un punto e virgola, sarà necessario rimuovere il punto e virgola per decommentare la linea e caricare il modulo. Questo, ovviamente, si applica anche a qualsiasi altro modulo Apache richiesto.

Ora dobbiamo modificare il file di configurazione predefinito di Apache in modo che mod_rewritefunzioni correttamente con l'app Incolla.

Apri il file:

sudo vi /etc/httpd/conf/httpd.conf

Quindi trova la sezione che inizia con <Directory "/var/www/html">e cambia AllowOverride nonein AllowOverride All. Il risultato finale (con tutti i commenti rimossi) sarà simile a questo:

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

Ora salva e chiudi il file di configurazione di Apache.

Riavvieremo Apache alla fine di questo tutorial, ma riavviare Apache regolarmente durante l'installazione e la configurazione è sicuramente una buona abitudine, quindi facciamolo ora:

sudo systemctl restart httpd

Passaggio 4: aprire le porte del Web Firewall

Ora abbiamo bisogno di aprire i valori predefiniti HTTPe le HTTPSporte poiché saranno bloccati firewalldper impostazione predefinita.

Apri le porte del firewall:

sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp

Ricarica il firewall per applicare le modifiche:

sudo firewall-cmd --reload

Vedrai la parola successvisualizzata nel tuo terminale dopo ogni comando di configurazione del firewall riuscito.

Possiamo verificare rapidamente che la HTTPporta Apache sia aperta visitando l'indirizzo IP o il dominio dell'istanza del server in un browser:

http://YOUR_VULTR_IP_ADDRESS/

Vedrai la pagina Web predefinita di Apache nel tuo browser.

Step 5: Disabilita SELinux (se abilitato)

SELinux sta per "Security Enhanced Linux". È un miglioramento della sicurezza di Linux che consente a utenti e amministratori un maggiore controllo sul controllo degli accessi. È disabilitato per impostazione predefinita sulle istanze di Vultr CentOS 7, ma tratteremo i passaggi per disabilitarlo, nel caso in cui non si stia iniziando da un'installazione pulita ed è stato precedentemente abilitato.

Per evitare problemi di autorizzazione dei file con l'app Incolla, dobbiamo assicurarci che SELinux sia disabilitato.

Innanzitutto, controlliamo se SELinux è abilitato o disabilitato con il sestatuscomando:

sudo sestatus

Se vedi qualcosa del genere: SELinux status: disabledè sicuramente disabilitato e puoi saltare direttamente al punto 6. Se vedi altri messaggi, dovrai completare questa sezione.

Apri il file di configurazione SELinux con il tuo editor terminale preferito:

sudo vi /etc/selinux/config

Passare SELINUX=enforcinga SELINUX=disablede quindi salvare il file.

Per applicare la modifica della configurazione, SELinux richiede un riavvio del server, quindi puoi riavviare il server utilizzando il pannello di controllo Vultr oppure puoi semplicemente usare il shutdowncomando:

sudo shutdown -r now

Al riavvio del server, la sessione SSH verrà disconnessa e potresti visualizzare un messaggio che ti informa su un 'broken pipe'o 'Connection closed by remote host'. Non c'è nulla di cui preoccuparsi, attendi semplicemente 20 secondi circa e poi di nuovo SSH (con il tuo nome utente e dominio):

ssh user1@YOUR_DOMAIN

Oppure (con il tuo nome utente e indirizzo IP):

ssh user1@YOUR_VULTR_IP_ADDRESS

Dopo aver effettuato nuovamente l'accesso, è necessario verificare nuovamente lo stato di SELinux con il sestatuscomando per assicurarsi che sia disabilitato correttamente:

sudo sestatus

Dovresti vedere un messaggio che dice SELinux status: disabled. Se vedi un messaggio che dice SELinux status: enabled(o qualcosa di simile) dovrai ripetere i passaggi precedenti e assicurarti di riavviare correttamente il tuo server.

Passaggio 6: installa PHP 7.1

CentOS 7 ci richiede di aggiungere un repository esterno per installare PHP 7.1, quindi esegui il seguente comando:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Ora possiamo installare PHP 7.1 insieme a tutti i moduli PHP necessari richiesti dall'app Paste:

sudo yum -y install php71w php71w-gd php71w-mbstring php71w-mysql php71w-xml php71w-common php71w-pdo php71w-mysqlnd

Passaggio 7: installare il server MariaDB (MySQL)

CentOS 7 utilizza automaticamente il database server MariaDB, che è un sostituto drop-in avanzato, completamente open source, sviluppato dalla comunità e drop-in per il server MySQL.

Installa il server di database MariaDB:

sudo yum -y install mariadb-server

Avvia e abilita l'esecuzione automatica del server MariaDB all'avvio:

sudo systemctl enable mariadb
sudo systemctl start mariadb    

Proteggi l'installazione del tuo server MariaDB:

sudo mysql_secure_installation

La rootpassword sarà vuota, quindi premi Invio quando ti viene richiesta la rootpassword.

Quando viene richiesto di creare un utente MariaDB / MySQL root, selezionare "Y" (per Sì) e quindi immettere una rootpassword sicura . Rispondi semplicemente a "Y" a tutte le altre domande sì / no poiché i suggerimenti predefiniti sono le opzioni più sicure.

Passaggio 8: Creare il database per incollare

Accedere alla shell MariaDB come rootutente MariaDB eseguendo il comando seguente:

sudo mysql -u root -p

Per accedere al prompt dei comandi di MariaDB, inserire semplicemente la rootpassword di MariaDB quando richiesto.

Eseguire le seguenti query per creare un database MariaDB e un utente del database per Incolla:

CREATE DATABASE paste_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'paste_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON paste_db.* TO 'paste_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Se preferisci, puoi sostituire il nome del database paste_dbe il nome utente paste_usercon qualcosa in più di tuo gradimento. (Si noti che la lunghezza massima predefinita per i nomi utente in MariaDB su CentOS 7 è di 16 caratteri). Inoltre, assicurati di sostituire "UltraSecurePassword" con una password effettivamente sicura.

Passaggio 9: Installa Incolla file

Cambia la tua directory di lavoro corrente nella directory web predefinita:

cd /var/www/html/

Se ricevi un messaggio di errore che dice qualcosa del genere, 'No such file or directory'prova il seguente comando:

cd /var/www/ ; sudo mkdir html ; cd html

La vostra directory di lavoro corrente sarà ora: /var/www/html/. Puoi verificarlo con il pwdcomando (print working directory):

pwd

Ora usa wgetper scaricare il pacchetto di installazione Incolla:

sudo wget --content-disposition https://sourceforge.net/projects/phpaste/files/latest/download?source=files

Nota: dovresti assolutamente verificare la versione più recente visitando la pagina di download Incolla .

Elenca la directory corrente per verificare di aver scaricato correttamente il file:

ls -la

Installiamo rapidamente in unzipmodo da poter decomprimere il file:

sudo yum -y install unzip

Ora decomprimi l'archivio zip:

sudo unzip paste-2.1.zip

Modifica la proprietà dei file Web per evitare problemi con le autorizzazioni:

sudo chown -R apache:apache * ./

Riavvia nuovamente Apache:

sudo systemctl restart httpd

Ora siamo pronti per passare al passaggio finale.

Passaggio 10: completare l'installazione dell'incolla

È tempo di visitare l'indirizzo IP dell'istanza del server nel browser o se hai già configurato le impostazioni Vultr DNS (e gli hai concesso abbastanza tempo per propagarsi) puoi semplicemente visitare il tuo dominio.

Per accedere alla pagina Incolla installazione, inserisci l'indirizzo IP dell'istanza Vultr nella barra degli indirizzi del browser, seguito da /install/:

http://YOUR_VULTR_IP_ADDRESS/install/

La maggior parte delle opzioni di installazione sono autoesplicative, ma qui ci sono alcuni suggerimenti per aiutarti:

  1. Assicurarsi che Pre-installation checkssiano tutti verdi. In particolare, i seguenti 3 file devono essere writable:

    config.php
    tmp/temp.tdata
    sitemap.xml
    
  2. Inserisci quanto segue DATABASE INFORMATION:

    Hostname:               localhost
    Database Name:          paste_db
    Username:               paste_user
    Password:               UltraSecurePassword
    

    Prendi nota del keyvalore e memorizzalo in un luogo sicuro, quindi fai clic Installper continuare.

  3. Immettere i seguenti dettagli dell'amministratore:

    Username:               admin
    Password:               <secure admin password>
    

    Fare clic Submitper finalizzare l'installazione.

Per accedere alla sezione admin è sufficiente fare clic sul dashboardpulsante e inserire nome utente e password. Se non si viene reindirizzati alla pagina di accesso dell'amministratore, è possibile inserire manualmente l'indirizzo dell'amministratore:

http://YOUR_VULTR_IP_ADDRESS/admin/

Per motivi di sicurezza, assicurati di eliminare la /install/directory dalla directory webroot:

sudo rm -rf ./install

Se viene visualizzato un messaggio di errore durante il tentativo di eliminare la /install/directory, è sufficiente modificare le autorizzazioni del webroot e riprovare:

sudo chmod 755 .
sudo rm -rf ./install

Ora sei pronto per iniziare ad amministrare il tuo sito personale di pastebin.



Leave a Comment

Come installare e configurare CyberPanel sul server CentOS 7

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

Come installare e configurare Sensu Monitoring su CentOS 7

Come installare e configurare Sensu Monitoring su CentOS 7

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

Come installare OpenMeetings su CentOS 7

Come installare OpenMeetings su CentOS 7

Usi un sistema diverso? Apache OpenMeetings è unapplicazione per conferenze Web open source. È scritto in Java e supporta più server di database. io

Come usare Sudo su Debian, CentOS e FreeBSD

Come usare Sudo su Debian, CentOS e FreeBSD

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

Come installare RabbitMQ su CentOS 7

Come installare RabbitMQ su CentOS 7

Usando un sistema diverso? RabbitMQ è un broker di messaggi open source ampiamente utilizzato scritto nel linguaggio di programmazione Erlang. Come middleware orientato ai messaggi

Installazione di Nginx-RTMP su CentOS 7

Installazione di Nginx-RTMP su CentOS 7

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

Come installare TaskBoard 0.3.1 su CentOS 7

Come installare TaskBoard 0.3.1 su CentOS 7

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

Come installare Gradle su CentOS 7

Come installare Gradle su CentOS 7

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

Installa un server FTP con ProFTPd su CentOS 6 o CentOS 7

Installa un server FTP con ProFTPd su CentOS 6 o CentOS 7

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.

Installazione di Netdata su CentOS 7

Installazione di Netdata su CentOS 7

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:

Come installare Apache Cassandra 3.11.x su CentOS 7

Come installare Apache Cassandra 3.11.x su CentOS 7

Usi un sistema diverso? Apache Cassandra è un sistema di gestione di database NoSQL gratuito e open source progettato per fornire scalabilità, alta

Come installare Just Cause 2 (JC2-MP) Server su CentOS 7

Come installare Just Cause 2 (JC2-MP) Server su CentOS 7

In questo tutorial imparerai bene come configurare un server multiplayer Just Cause 2. Prerequisiti Assicurarsi che il sistema sia completamente aggiornato prima di iniziare

Come installare Starbound Server su CentOS 7

Come installare Starbound Server su CentOS 7

Usando un sistema diverso? In questo tutorial, spiegherò come impostare un server Starbound su CentOS 7. Prerequisiti Devi possedere questo gioco su di te

Installazione e configurazione di ZNC su CentOS 7

Installazione e configurazione di ZNC su CentOS 7

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

Come installare Django su CentOS 7

Come installare Django su CentOS 7

Django è un popolare framework Python per la scrittura di applicazioni Web. Con Django, puoi creare applicazioni più velocemente, senza reinventare la ruota. Se vuoi

Come impostare lautenticazione a due fattori (2FA) per SSH su CentOS 6 utilizzando Google Authenticator

Come impostare lautenticazione a due fattori (2FA) per SSH su CentOS 6 utilizzando Google Authenticator

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

Come installare MyCLI su Linux (CentOS, Debian, Fedora e Ubuntu)

Come installare MyCLI su Linux (CentOS, Debian, Fedora e Ubuntu)

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

Come installare Directus 6.4 CMS su un VPS CentOS 7 LAMP

Come installare Directus 6.4 CMS su un VPS CentOS 7 LAMP

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

Creare una rete di server Minecraft con BungeeCord su Debian 8, Debian 9 o CentOS 7

Creare una rete di server Minecraft con BungeeCord su Debian 8, Debian 9 o CentOS 7

Cosa ti serve Un VPS Vultr con almeno 1 GB di RAM. Accesso SSH (con privilegi di root / amministrativi). Passaggio 1: installare prima BungeeCord

Come installare MaraDNS su CentOS 6

Come installare MaraDNS su CentOS 6

MaraDNS è un programma server DNS open source leggero ma robusto. Rispetto ad altre applicazioni dello stesso tipo, come ISC BIND, PowerDNS e djbdns

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

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: è questo il futuro di Windows?

ReactOS: è questo il futuro di Windows?

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.

Rimani connesso tramite lapp desktop WhatsApp 24*7

Rimani connesso tramite lapp desktop WhatsApp 24*7

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+

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

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.

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

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 lestrazione dei dati dai Big Data

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per l'estrazione dei dati dai Big Data

Che cosè un file system di journaling e come funziona?

Che cosè un file system di journaling e come funziona?

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

Singolarità tecnologica: un lontano futuro della civiltà umana?

Singolarità tecnologica: un lontano futuro della civiltà umana?

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

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Limpatto dellintelligenza artificiale nella sanità 2021

Limpatto dellintelligenza artificiale nella sanità 2021

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.