Installazione di Fork CMS su Fedora 28
Usi un sistema diverso? Fork è un CMS open source scritto in PHP. Il codice sorgente di Forks è ospitato su GitHub. Questa guida ti mostrerà come installare Fork CM
Un uso comune di un server virtuale Vultr è l'hosting di siti Web Wordpress. Questa guida mostra come automatizzare da zero la configurazione di un server virtuale (usando Ansible) e distribuire più siti Web Wordpress indipendenti (usando Webmin / Virtualmin). Virtualmin / Webmin è un'interfaccia utente grafica che consente di gestire la distribuzione di più account di server virtuali sullo stesso computer (completo di stack LAMP / LEMP). Virtualmin è molto simile a cPanel e Plesk e in questo tutorial utilizzeremo l'edizione GPL gratuita. Dopo la configurazione iniziale del server Vultr e l'installazione di Virtualmin, è possibile configurare molto rapidamente più server virtuali dall'interfaccia di Virtualmin e installare direttamente Wordpress su quel server virtuale completo con il proprio nome di dominio.
In questo tutorial, invece di inserire manualmente un lungo elenco di comandi, utilizzeremo invece Ansible. Ansible è uno strumento di automazione basato su Python che consente di automatizzare in modo affidabile e ripetuto le attività del server. Ciò significa che dopo aver seguito questo tutorial, sarai in grado di distribuire un altro server allo stesso modo con solo un paio di comandi.
Installa Ansible sul tuo computer locale o su un altro server.
mkdir ansible
cd ansible
virtualenv env
source env/bin/activate
pip install ansible
Ansible funziona accedendo al server tramite SSH. L'accesso a SSH è più sicuro se utilizziamo le chiavi anziché una password. Generiamo prima una coppia di chiavi pubblica e privata.
mkdir ssh_keys
ssh-keygen -t rsa -b 2048 -f ./ssh_keys
Nella ssh_keys
directory ora ci saranno due file ssh_keys
e ssh_keys.pub
. ssh_keys
è il tuo file di chiave privata e dovrebbe essere tenuto al sicuro. Ora puoi aprire il ssh_keys.pub
, che contiene la chiave pubblica.
Accedi alla dashboard web Vultr e fai clic Deploy New Server
.
Seleziona una regione, il tipo di server (Ubuntu 16.04), le dimensioni del server e quindi nella parte 6 ( SSH keys
), fai clic su Add New
. Nella pagina successiva incolla la tua chiave pubblica, assegnagli un nome e fai clic Add SSH key
. Assicurati infine che la chiave sia selezionata e fai clic Deploy now
.
Una volta terminata la distribuzione del server, ti verrà mostrato il suo indirizzo IP. Dovrai accedere al server DNS del tuo nome di dominio e puntarlo a questo indirizzo.
Vengono chiamati i file di automazione di Ansible roles
. Prima imposteremo la struttura della directory (all'interno della ansible
directory appena creata nel passaggio 1) e i file di base.
mkdir -p group_vars roles/common/tasks/ roles/common/handlers
touch hosts group_vars/all deploy.yml roles/common/handlers/main.yml
Modifica il hosts
file per contenere quanto segue, sostituendo il ip address
per il server appena creato. Ansible usa python 2, che Ubuntu 16.04 non ha installato di default. Nel hosts
file diciamo ad Ansible di usare Python 3.
[common]
192.0.2.1 ansible_python_interpreter=/usr/bin/python3
Modifica il deploy.yml
file per contenere quanto segue. Utilizzeremo l' root
utente.
- name: apply common configuration to server
hosts: all
user: root
roles:
- common
Modifica il /group_vars/all
file per contenere quanto segue. Queste variabili indicano ad Ansible l'ubicazione delle chiavi SSH, i parametri del file di scambio, il nome di dominio completo e la password di root. Ricorda di non includere il file nel controllo del codice sorgente poiché contiene la password in chiaro.
ssh_dir: ./ssh_keys
swap_file_path: /swapfile
swap_file_size: 1G
swappiness: 1
hostname: example.com
new_password: YOUR_PASSWORD_HERE
Modifica il common/handlers/main.yml
file per contenere quanto segue.
- name: restart sshd
service: name=ssh state=restarted
L'automazione sensibile è più facile da capire se la suddividiamo in attività. Creiamo file per ciascuna delle nostre attività nel processo.
cd roles/common/tasks
touch hosts main.yml setup.yml users.yml ufw.yml swap.yml virtualmin.yml
main.yml
dovrebbe puntare a ciascun file contenente i comandi Ansible, quindi modificalo per contenere quanto segue.
- include: setup.yml
- include: users.yml
- include: ufw.yml
- include: swap.yml
- include: virtualmin.yml
Il primo passo per configurare un nuovo server è aggiornare la cache dei repository e impostare il fuso orario. Modifica il common/handlers/setup.yml
file per contenere quanto segue.
- apt: update_cache=yes
sudo: yes
- name: set timezone to Europe/London
timezone:
name: Europe/London
Ora forniremo all'utente root una password (di cui avremo bisogno per accedere all'interfaccia web di virtualmin), ma disabiliteremo gli accessi password tramite SSH (poiché stiamo utilizzando il metodo di autenticazione con chiavi più sicure). Modifica users.yml
per contenere quanto segue.
- name: Change passwd
user: name=root password={{ new_password | password_hash('sha512') }} update_password=always
- name: Disable SSH password login
lineinfile: dest=/etc/ssh/sshd_config regexp="^#?PasswordAuthentication" line="PasswordAuthentication no"
notify: restart sshd
Per sicurezza, abbiamo bisogno di un firewall. Utilizzeremo il firewall semplice per consentire l'accesso SSH sulla porta 22
, l'accesso Web sulla porta 80
e l'accesso Web sicuro sulla porta 443
. Modifica il ufw.yml
file per contenere quanto segue.
- name: Set default firewall policy to deny all
become: True
ufw: state=enabled direction=incoming policy=deny
tags: firewall
- name: enable SSH in firewall
ufw: rule=allow port=22
sudo: yes
- name: enable HTTP connections for web server
ufw: rule=allow port=80
sudo: yes
- name: enable HTTPS connections for web server
ufw: rule=allow port=443
sudo: yes
- name: enable firewall
ufw: state=enabled
sudo: yes
Facoltativamente, è possibile includere un file di scambio. Questo è essenziale se il tuo server ha meno di 2 GB di RAM per evitare arresti anomali della memoria. Modifica swap.yml
per contenere quanto segue.
- name: Set swap_file variable
set_fact:
swap_file: "{{swap_file_path}}"
tags:
- swap.set.file.path
- name: Check if swap file exists
stat:
path: "{{swap_file}}"
register: swap_file_check
tags:
- swap.file.check
- name: Create swap file
command: fallocate -l {{swap_file_size}} {{swap_file}}
when: not swap_file_check.stat.exists
tags:
- swap.file.create
- name: Change swap file permissions
file: path="{{swap_file}}"
owner=root
group=root
mode=0600
tags:
- swap.file.permissions
- name: Format swap file
sudo: yes
command: "mkswap {{swap_file}}"
when: not swap_file_check.stat.exists
tags:
- swap.file.mkswap
- name: Write swap entry in fstab
mount: name=none
src={{swap_file}}
fstype=swap
opts=sw
passno=0
dump=0
state=present
tags:
- swap.fstab
- name: Turn on swap
sudo: yes
command: swapon -a
when: not swap_file_check.stat.exists
tags:
- swap.turn.on
- name: Set swappiness
sudo: yes
sysctl:
name: vm.swappiness
value: "{{swappiness}}"
tags:
- swap.set.swappiness
Virtualmin ha il suo file di installazione che può essere scaricato ed eseguito da Ansible. Qui stiamo usando l'installazione minima ( LINK
). Gli elementi aggiuntivi sono la configurazione della password del server MySQL che non è impostata quando installata da Virtualmin. È necessario arrestare temporaneamente MySQL e aggiungere la directory di autenticazione prima di modificare la password. Modifica virtualmin.yml
per contenere quanto segue.
- name: download virtualmin install script
get_url: >
url=http://software.virtualmin.com/gpl/scripts/install.sh
dest=/root/install.sh
mode=0755
- name: virtualmin install (takes around 10 mins) you can see progress using $ sudo tail -f /root/virtualmin-install.log
tags: non-idem
shell: ~/install.sh --force --hostname {{ hostname }} --minimal --yes
args:
chdir: /root
- name: temp stop mysql
service:
name: mysql
state: stopped
- name: change owner (and group) of mysqld dir
file:
path: "/var/run/mysqld"
state: directory
owner: mysql
group: mysql
- name: virtualmin set mysql password
shell: virtualmin set-mysql-pass --user root --pass {{ new_password }}
- name: restart mysql
service:
name: mysql
state: started
Il ruolo Ansible è ora terminato e siamo pronti per la distribuzione.
Dalla cartella ansible, ora possiamo semplicemente eseguire il seguente comando e Ansible eseguirà tutte le attività che abbiamo creato automaticamente. La prima volta che ti connetti riceverai un avviso chiave SSH, basta digitare " yes
" al prompt.
ansible-playbook deploy.yml --private-key=ssh_keys/ssh_keys -i hosts
Se desideriamo utilizzare un altro server, possiamo semplicemente cambiare l'indirizzo IP nel file hosts ed eseguire nuovamente quel comando per completare esattamente la stessa configurazione.
L'installazione è completa e ora possiamo andare a https://192.0.2.1:10000
(usare l'indirizzo IP del tuo server). Il tuo browser emetterà un avviso di sicurezza perché il certificato è autofirmato, quindi fai clic su advanced
e aggiungi un'eccezione. Ti verrà presentata una pagina di accesso. Il nome utente è root
e la password è quella immessa nel group_vars/all
file al passaggio 3. La prima volta che si accede a Virtualmin, verrà visualizzata la procedura guidata di post-installazione. È possibile passare manualmente attraverso queste impostazioni o fare clic cancel
per accettare le impostazioni predefinite.
Per avviare e far funzionare il tuo primo server Wordpress, dalla dashboard di Virtualmin fai clic su Create Virtual Server
. Devi inserire un nome di dominio, una descrizione e una password dell'amministratore. Il nome di dominio dovrebbe essere diverso dal nome di dominio completo di Virtualmin e dovrai indirizzare il record DNS all'indirizzo IP del tuo server.
Fare clic Create Server
. Una volta che Virtualmin ha terminato di creare il tuo server, fai clic Install Scripts
sul menu a sinistra. Seleziona Wordpress
, fai clic Show install options
e nella pagina seguente scegli la posizione dell'installazione di Wordpress. Basta scegliere At top level
e fare clic Install Now
.
Questo è tutto ciò che devi fare: puoi completare l'installazione di Wordpress visitando il tuo http://example.net/wp-admin/install.php
(dove si example.net
trova questo nome di dominio dei server virtuali). Se i tuoi record DNS non si sono ancora propagati, puoi andare Services > Preview Website
dal menu Virtualmin.
Puoi ripetere questo passaggio più volte per creare più siti Wordpress tutti sullo stesso server Vultr.
Usi un sistema diverso? Fork è un CMS open source scritto in PHP. Il codice sorgente di Forks è ospitato su GitHub. Questa guida ti mostrerà come installare Fork CM
Usi un sistema diverso? Ghost è una piattaforma di blog open source che sta guadagnando popolarità tra gli sviluppatori e gli utenti ordinari dal suo 201
Usi un sistema diverso? Ghost è una piattaforma di blog open source che sta guadagnando popolarità tra gli sviluppatori e gli utenti ordinari dal suo 201
Usi un sistema diverso? MODX Revolution è un sistema di gestione dei contenuti (CMS) rapido, flessibile, scalabile, gratuito e open source di livello aziendale scritto i
Usi un sistema diverso? MODX Revolution è un sistema di gestione dei contenuti (CMS) rapido, flessibile, scalabile, di livello aziendale scritto in PHP. Io
Usi un sistema diverso? MODX Revolution è un sistema di gestione dei contenuti (CMS) rapido, flessibile, scalabile, gratuito e open source di livello aziendale scritto i
Introduzione Più vicino manterrai linstallazione di OpenBSD al valore predefinito e senza altrettanti pacchetti aggiunti, più sicura sarà. Mentre più commo
Introduzione WordPress è il sistema di gestione dei contenuti dominante su Internet. Alimenta tutto, dai blog ai siti Web complessi con contenuti dinamici
Usi un sistema diverso? Ghost è una piattaforma di blog open source che sta guadagnando popolarità tra gli sviluppatori e gli utenti ordinari dalla sua versione del 2013. io
Usi un sistema diverso? Dotclear è un motore di blogging molto semplice. È open-source e facile da usare. Questo tutorial eseguirà linstallazione su
Neos è un innovativo sistema di gestione dei contenuti open source che è ottimo per creare e modificare contenuti online. Con in mente autori ed editori, Neo
Le istanze Vultr sono un ottimo modo per eseguire il tuo blog WordPress, ma unestensione più notevole di WordPress è WooCommerce, un plug-in e-commerce che estende
Ghost è lultimo e il migliore in assoluto per competere con WordPress. Lo sviluppo del tema è rapido e facile da imparare perché gli sviluppatori Ghost hanno deciso di utilizzare entrambi
Ghost è una moderna piattaforma di pubblicazione open source costruita su Node.js con un client di amministrazione Ember.js, unAPI JSON e unAPI tematica basata su Handlebars.js. ghos
Usi un sistema diverso? Ghost è una piattaforma di blog open source che sta guadagnando popolarità tra gli sviluppatori e gli utenti ordinari dal suo 201
Usi un sistema diverso? Fork è un CMS open source scritto in PHP. Il codice sorgente di Forks è ospitato su GitHub. Questa guida ti mostrerà come installare Fork CM
Typesetter è un CMS open source scritto in PHP incentrato sulla facilità duso con lediting True WYSIWYG e larchiviazione di file flat. In questo articolo, verremo installati
Usi un sistema diverso? MODX Revolution è un sistema di gestione dei contenuti (CMS) rapido, flessibile, scalabile, gratuito e open source di livello aziendale scritto i
Usi un sistema diverso? Ghost è una piattaforma di blog open source che sta guadagnando popolarità tra gli sviluppatori e gli utenti ordinari dal suo 201
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.