====== AMPP Server ====== ===== 1. Installazione base ===== ===== 2. Installare il Server SSH ===== Per installare il server SSH digitate sudo apt-get install ssh openssh-server Da questo punto in avanti è possibile usare un client SSH come [[http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html|PuTTY]] per connettersi al server Ubuntu 14.04 LTS da una qualsiasi workstation e terminare l'installazione comodamente seduti alla propria postazione. ===== 3. Configurare la rete ===== http://www.cyberciti.biz/faq/setting-up-an-network-interfaces-file/ ===== 4. Aggiornare Linux (Opzionale) ===== Digitare sudo apt-get update per aggiornare il database dei package di ''apt'' e poi sudo apt-get upgrade per installare gli ultimi apgrade (se esistono). ===== 5. Cambiare la Shell di default (Opzionale) ===== ///bin/sh// è un link simbolico (symlink) a ///bin/dash//, io preferisco usare la bash quindi sudo ln -sf /bin/bash /bin/sh ===== 6. Disabilitare AppArmor ===== AppArmor è un pacchetto che dovrebbe garantire la sicurezza. In realtà, spesso, causa più problemi di quanti ne previene. Deve essere fermato digitando sudo /etc/init.d/apparmor stop sudo update-rc.d -f apparmor remove e disinstallato digitando sudo apt-get remove apparmor apparmor-utils ===== 7. Installare il Software di Base ===== Alcuni dei seguenti pacchetti sono propedeutici al completamento del server, altri servono solo per rendere la vita "più facile". sudo apt-get install build-essential nmap openssl unzip zip p7zip-full zlib1g-dev autoconf automake1.9 bison autotools-dev flex sudo apt-get install libarchive-zip-perl libio-compress-perl libpcre3 perl perl-modules g++ libdb5.1-dev libpopt-dev m4 make libtool sudo apt-get install lynx ncftp sudo apt-get install mc imagemagick curl ===== 8. Installare MySQL ===== Per installare MySQL digitare sudo apt-get install mysql-server mysql-client Durante l'installazione verrà richiesta la password per l'utente **root** di MySQL. Tale password è valida sia per l'utente //''root@localhost''// che per //''root@server1.example.com''//. A fine installazione MySQL è attivo ma risponde solo per interrogazioni che provengono da ''localhost'' quindi necessitano di software come phpMyAdmin per lavorarci. \\ Volendo usare il server MySQL anche da altre postazioni (magari con applicazioni Windows per leggere e modificare i DB) è necessario modificare il file ''/etc/mysql/my.cnf'' commentantdo la linea ''bind-address = 127.0.0.1'' sudo nano /etc/mysql/my.cnf [...] # Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure. #bind-address =127.0.0.1 [...] Riavviare MySQL sudo /etc/init.d/mysql restart e verificare tramite il comando sudo netstat -tap |grep mysql che la risposta sia come quella riportata di seguito root@server1:~# netstat -tap | grep mysql tcp 0 0 *:mysql *:* LISTEN 5869/mysqld root@server1:~# ===== 9. Installare il frontend Web ===== ==== 9.1. Installare Apache ==== Installare Apache digitando sudo apt-get install apache2 apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert ==== 9.2. Installare PHP5 / Python / Perl / Ruby ==== === PHP5 === Per installare PHP e gran parte delle sue librerie digitare sudo apt-get install libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-pspell php5-recode php5-snmp php5-tidy php5-xmlrpc php5-xsl Consiglio di aggiungere anche i seguenti moduli per i collegamenti con DB diversi da MySQL e per la grafica sudo apt-get install php5-odbc php5-pgsql php5-sybase php5-ldap php5-sqlite php5-interbase libphp-jpgraph Molti script ''php'' usano lo ''short tag'' che nelle ultime versioni di PHP5 e disattivo di default, per ovviare a questo problema editare il file ''php.ini'' cd /etc/php5/apache2 sudo nano php.ini Premere Ctrl-w e digitare ''short_open_tag'' seguito da Invio. \\ Ripetere questa operazione sino a trvare una riga che riporta short_open_tag = Off Trasformarla in short_open_tag = On Riavviare Apache in modo che le modifiche vengano rese attive sudo service apache2 restart Ora la configurazione è ricaricata e PHP è pronto. === Python === Per installare il modulo Python di Apache digitare sudo apt-get install libapache2-mod-python Potrebbe essere utile installare anche questi moduli sudo apt-get install python-mysqldb Per cercarne altri sudo apt-cache search python === Perl === Per installare il modulo Perl di Apache digitare sudo apt-get install libapache2-mod-perl2 === Ruby === **libapache2-mod-ruby** è stato rimosso dai repo di Ubuntu ... si rende quindi necessario trovare un'altra strada per l'installazione di Ruby on Rails e la sua integrazione con Apache ===== 10. Configurare il frontend Web ===== ==== 10.1. Configurare di Apache ==== === 10,1.1 Creazione dell'utente WebMaster e delle Cartelle che ospiteranno il sito === La parte seguente non è un must ... è la via che ho trovato io per fare funzionare tutto e per poter uploadare il sito in ftp. \\ In parte è presa dalla [[https://wiki.debian.org/it/LaMp|documentazione]] di Debian Creare un nuovo utente (potrebbe essere fatto anche sull'utente corrente ma esso è ''"sudoers"'' quindi potenzialmente pericoloso). Io lo chiamerò **webmaster**. sudo adduser webmaster Dopo averne impostato la password aggiungerlo al gruppo ''www-data'' sudo usermod -aG www-data webmaster Loggarsi con il nuovo utente su webmaster e creare la seguente struttura di cartelle nella sua ''/home'' mkdir public_html mkdir materiale mkdir config mkdir cgi-bin mkdir backup Queste cartelle serviranno ad ospitare il sito ed il suo backup. Tornare all'utente precedente exit cambiare il gruppo sulla cartella appena creata e riavviare il webserver sudo chown :www-data /home//public_html service apache2 restart Sistemare i permessi sulla cartella ''/home//public_html'' come segue: chmod 775 /home//public_html === 10.1.2 Nuovo Virtual Host per Apache === Spostarsi nella cartella dei siti di Apache e creare il nuovo file di configurazione. \\ Ovviamente la dicitura miosito andrà sostituita con il nome del sito. cd /etc/apache2/sites-available/ sudo cp 000-default.conf 010-miosito.conf Ora modifichiamo il file di configurazione per impostare la nuova ''DocumentRoot'' del sito sudo nano 010-miosito.conf Trovare la riga che contiene DocumentRoot e modificarla per farla puntare alla cartella contenete il sito. DocumentRoot /home//public_html/ A questo punto il file di configurazione è pronto e deve essere attivato sudo a2ensite 010-miosito.conf e per evitare che vada in conflitto con la configurazione di default sudo a2dissite 000-default.conf A questo bunto è necessario riavviare Apache sudo service apache2 restart ==== 10.2. Configurazione dei linguaggi per il funzionamento con Apache ==== === PHP === Per poter usare PHP controllare che ''/etc/apache2/mods-available/php5.conf'' sia corretto: sudo nano /etc/apache2/mods-available/php5.conf SetHandler application/x-httpd-php SetHandler application/x-httpd-php-source # Per ri-abilitare php nelle directory utente commentare le righe seguenti # (da a .) NON lo impostare a On dato che # impedisce ai file .htaccess di disabilitarlo. # # # php_admin_value engine Off # # === Python === Esistono due modi per gestire il codice Python con Apache * Il Publisher Handler -- Consente di scrivere scripts in puro Python (''.py'') che vengono interpretati * PSP Handler -- Python Server Pages, consentono di embeddare codice Python nell'HTML come avviene per PHP (''.psp''). Perché Apache comprenda queste estensioni e le utilizzi in modo corretto è necessario editare il file ''mod_python.conf'' in ''/etc/apache2/mods-available/'' cd /etc/apache2/mods-available/ sudo nano python.conf e valorizzarlo come segue AddHandler mod_python .py .psp PythonHandler mod_python.publisher | .py PythonHandler mod_python.psp | .psp A questo punto è necessario attivare il modulo Python sudo a2enmod python Se dovesse risultare già attivo è necessario disattivarlo prima di procedere ad una nuova attivazione sudo a2dismod mod_python o creare un link simbolico a ''mod_python.conf'' in ''/etc/apache2/mods-enabled/'' Potrebbe essere utile installare anche questi moduli sudo apt-get install python-mysqldb Per cercarne altri sudo apt-cache search python === Perl === Analogamente a quanto visto per Python è necessario creare il file ''perl.conf'' in ''/etc/apache2/mods-available/'' sudo nano /etc/apache2/mods-available/perl.conf e valorizzarlo come segue AddHandler perl-script .pl PerlHandler ModPerl::PerlRunPrefork PerlOptions +ParseHeaders PerlSendHeader On Anche in questo caso il modulo deve essere attivato sudo a2enmod perl ==== 10.3. Ultimi Ritocchi ==== Perché tutto funzioni correttamente è necessario editare il file ''/etc/apache2/mods-available/dir.conf'' sudo nano /etc/apache2/mods-available/dir.conf e modificare la direttiva ''DirectoryIndex'' come segue #DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl index.xhtml Ora è necessario abilitare alcuni moduli di Apache ( SSL , rewrite , suexec , e include ) sudo a2enmod ssl sudo a2enmod rewrite sudo a2enmod suexec sudo a2enmod include sudo a2enmod userdir ed, in fine, è necessario riavviare Apache affinchè tutte le modifiche diventino effettive sudo /etc/init.d/apache2 restart o più velocemente sudo service apache2 restart ===== 11. Primi Test ===== Per verificare il corretto funzionamento di Apache è sufficiente spostarsi in ''/home/webmaster/www/htdocs'' e creare i seguenti files come utente ''webmaster''. su webmaster ==== info.php ==== Questo file verifica il corretto funzionamento di PHP mostrando la pagina informativa. vi info.php Test PHP Per testare aprire un bowser e puntare a **%%http://[your_site]/info.php%%**. ==== test.py ==== Questo file verifica il corretto funzionamento di Python in modalità Publisher Handler. vi test.py def index(req): return "Test successful"; Per testare aprire un bowser e puntare a **%%http://[your_site]/test.py%%**. ==== test.psp ==== Questo file verifica il corretto funzionamento di Python in modalità Python Server Pages. vi test.psp

<% req.write("Hello!") %>

Per testare aprire un bowser e puntare a **%%http://[your_site]/test.psp%%**. ==== printenv.pl ==== Questo file verifica il corretto funzionamento di Perl come CGI e contrariamente agli altri deve essere posizionato in ''/home/webmaster/www/cgi-bin''. vi printenv.pl #!c:/perl/bin/perl.exe ## ## printenv -- demo CGI program which just prints its environment ## print "Content-type: text/plain; charset=iso-8859-1\n\n"; foreach $var (sort(keys(%ENV))) { $val = $ENV{$var}; $val =~ s|\n|\\n|g; $val =~ s|"|\\"|g; print "${var}=\"${val}\"\n"; } Per testare aprire un bowser e puntare a **%%http://[your_site]/cgi-bin/printenv.pl%%**. ===== 12. ProFTPD ===== Per installare ProFTPD digitare sudo apt-get install proftpd ucf Il programma di installazione chiede di selezionare la modalità di funzionamento. \\ Selezionare **standalone**. \\ Editare il file ''proftpd.conf'' ed aggiungere le righe riportate di seguito sudo nano /etc/proftpd/proftpd.conf [...] DefaultRoot ~ IdentLookups off ServerIdent on "FTP Server ready." [...] Riavviare il servizio per rendere attive le modifiche sudo /etc/init.d/proftpd restart ===== xx. Postfix con SMTP-AUTH e TLS ===== ===== 14. Sincronizzare l'orologio di sistema ===== Poiché tutti i log e molte operazioni sono legate all'orario di sistema, è una buona idea tenere aggiornato l'orologio di sistema con un NTP (**n**etwork **t**ime **p**rotocol) server su internet. \\ Per fare questo digitare sudo apt-get install ntp ntpdate Ora l'orologio di sistema verrà costantemente aggiornato ===== 15. Applicazioni Web ===== ^ Elenco Applicazioni ^^^^ ^ Applicazione ^ Licenza ^ Sito ^ Descrizione ^ | [[linux:ampp_server_14.04#AWStats|AWStats]] | Freeware | http://www.awstats.org/ | Statistiche del sito estratte dal log di Apache | | [[linux:ampp_server_14.04#DokuWiki|DokuWiki]] | Freeware | https://www.dokuwiki.org/dokuwiki# | Documentazione ed Appunti | | [[linux:ampp_server_14.04#Koken|Koken]] | Freeware + Coomercial | http://koken.me/ | Galleria Fotografica Professionale | | [[linux:ampp_server_14.04#ownCloud|ownCloud]] | Freeware | https://owncloud.org/ | | | [[linux:ampp_server_14.04#PasteBin|PasteBin]] | Freeware | https://github.com/atmoner/php-pastebin-v3 | Strumento per la collaborare nel debug di ''code snipet'' | | [[linux:ampp_server_14.04#phpBB|phpBB]] | Freeware | http://www.phpbbitalia.net/ | | | [[linux:ampp_server_14.04#phpMyAdmin|phpMyAdmin]] | Freeware | http://www.phpmyadmin.net/ | DB Manager per ''MySQL'' | | [[linux:ampp_server_14.04#phpSysInfo|phpSysInfo]] | Freeware | http://phpsysinfo.github.io/phpsysinfo/ | Un piccolo script PHP che consente di monitorare lo stato del server | | [[linux:ampp_server_14.04#Veno File Manager|Veno File Manager]] | Coomercial | http://filemanager.veno.it/it/ | | | [[linux:ampp_server_14.04#Webmin|Webmin]] | Freeware | http://www.webmin.com/ | Controllo del server via interfaccia ''web'' | | [[linux:ampp_server_14.04#WordPress|WordPress]] | Freeware | https://it.wordpress.org/ | | ==== AWStats ==== Questo software è un analizzatore del file ''access.log'' di Apache. Genera grafici sulla fruizione delle pagine. Per installarlo basta digitare sudo apt-get install awstats Se si vuole avere anche la geolocalizzazione dei visitatori installare anche sudo apt-get install libnet-ip-perl sudo apt-get install libgeo-ipfree-perl Il file di configurazione di AWStats si trova in ''/etc/awstats''. Viene fornito un template chiamato "awstats.conf". E' necessario creare una copia di ''awstats.conf'' per ogni dominio di cui si desidera avere le statistiche: sudo cp /etc/awstats/awstats.conf /etc/awstats/awstats.yourdomain.ext.conf Successivamente modificare il nuovo file sudo nano /etc/awstats/awstats.yourdomain.ext.conf e renderlo come segue: # apache2 LogFile="/var/log/apache2/access.log" # domain name SiteDomain="yourdomain.ext" HostAliases="localhost 127.0.0.1 yourdomain.ext" LogFormat=1 Potete anche aggiungere le seguenti righe per attivare i plugins della geolocalizzazione LoadPlugin="tooltips" LoadPlugin="geoipfree" Generare le prime statistiche (basate sul file ''var/log/apache2/access.log'' già esistente /usr/lib/cgi-bin/awstats.pl -config=yourdomain.ext -update Dovreste ottenere un output simile a questo Create/Update database for config "/etc/awstats/awstats.toto.com.conf" by AWStats version 6.7 (build 1.892) From data in log file "/var/log/apache2/access.log"... Phase 1 : First bypass old records, searching new record... Searching new records from beginning of log file... Phase 2 : Now process new records (Flush history on disk after 20000 hosts)... Jumped lines in file: 0 Parsed lines in file: 191338 Found 0 dropped records, Found 24 corrupted records, Found 0 old records, Found 191314 new qualified records. Creare il file ''/etc/apache2/conf.d/statistics'' nano /etc/apache2/conf.d/statistics e copiarvi le seguenti linee Alias /awstatsclasses "/usr/share/awstats/lib/" Alias /awstats-icon/ "/usr/share/awstats/icon/" Alias /awstatscss "/usr/share/doc/awstats/examples/css" ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ ScriptAlias /statistics/ /usr/lib/cgi-bin/ Options ExecCGI -MultiViews +SymLinksIfOwnerMatch Riavviare Apache sudo /etc/init.d/apache2 restart e verificare se tutto ha funzionato puntando il vostro browser su \\ http://yourdomain.ext/awstats/awstats.pl \\ o \\ http://yourdomain.ext/awstats/awstats.pl?config=yourdomain.ext \\ se avere più files di configurazione. Per rendere la generazione delle statistiche automatica è necessario mettere la chiamata per l'aggiornamento in ''contab'' crontab -e ed aggiungere queste righe # update every 10 min */10 * * * * root /usr/lib/cgi-bin/awstats.pl -config=toto.com -update > /dev/null ^Riferimenti^ |[[http://awstats.sourceforge.net/|Sito Ufficiale 1]]| |[[http://www.awstats.org/|Sito Ufficiale 2]]| |[[http://awstats.sourceforge.net/docs/awstats_faq.html]]| |[[http://awstats.sourceforge.net/docs/index.html]]| |[[http://awstats.sourceforge.net/docs/awstats_setup.html]]| |[[http://jeromejaglale.com/doc/ubuntu/awstats]]| |[[http://ubuntu-tutorials.com/2008/01/16/configuring-awstats-on-ubuntu-server/]]| |[[http://www.mneylon.com/blog/archives/2005/08/03/configuring-awstats-with-apache-2-on-ubuntu/]]| |[[https://help.ubuntu.com/community/AWStats]]| |[[http://kastang.com/blog/2010/07/awstats-on-ubuntu-10-04-server/]]| ==== Dokuwiki ==== Come per quasi tutte le applicazioni Web esiste un pacchetto di sistema da installare ma di solito è obsoleto e rende difficile l'aggiunta di plugins e temi. === Installazione Automatizzata (di sistema) === Per installare digitare sudo apt-get install dokuwiki === Installazione Manuale === L'installazione manuale non è eccessivamente difficile. \\ Impersonando ''webmaster'', spostarsi in ''/home/materiale'' e scaricare l'ultima versione del tgz che si trova [[http://download.dokuwiki.org|qui]]. Copiate il link e sostituitelo nel comando sottostante. su - webmaster wget http://download.dokuwiki.org/out/dokuwiki-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.tgz Decomprimere il file scaricato e settare i permessi tar -xvf ./dokuwiki-xxxx-xx-xx.tgz -C /home/webmaster/pubblic_html/ exit cd /home/webmaster/pubblic_html sudo chown -R webmaster:www-data dokuwiki sudo chmod 775 -R dokuwiki/ Puntare il browser su **%%http://[vostro_sito]/doluwiki%%** e terminare l'installazione. Alla fine rimuovere il file di installazione per evitare che possa essere usato come ''attacco'' cd dokuwiki rm install.php === Considerazioni Finali === In questo caso io voto per l'installazione manuale, non comporta rischi di sicurezza e consente di avere un maggior controllo sul prodotto. ==== Koken ==== Per prima cosa creare il database dove verranno salvati i dati, aprire ''phpMyAdmin'' e nel tab sql digitare quanto segue poi premere **esegui** Create Database Koken; CREATE USER 'kokenuser'@'localhost' IDENTIFIED BY 'yourpassword'; Grant All On Koken.* To 'kokenuser'@'localhost'; Spostarsi nella cartella ''materiale'' e scaricare il file di installazione cd /home/webmaster/materiale wget https://s3.amazonaws.com/install.koken.me/releases/Koken_Installer.zip Decomprimere il file nella ''DocumentRoot'' del sito sudo unzip -d /home/webmaster/public_html Koken_Installer.zip Sistemare utenti e permessi cd /home/webmaster/public_html cd Koken_Installer/ sudo mv koken .. cd .. sudo rmdir Koken_Installer sudo chown -R webmaster:www-data koken sudo chmod 775 -R koken Navigare con il browser all'indirizzo **http://[vostro_sito]/koken** e terminare l'installazione in modo grafico La pagina che si aprirà eseguirà un controllo di tutte le configurazioni necessarie al funzionamento di ''Koken''. Dovrebbe presentarsi come in figura seguente {{ :linux:ampp_server_14.04:koken_testing_server.png | Koken - Testing Server}} Premere su **Begin installation** Nella schermata successiva vengono richiesti i dati anagrafici dell'amministratore, una mail ed una password {{ :linux:ampp_server_14.04:koken_setup_user.png | Koken - Setup Utente}} **Attenzione!**: l'indirizzo e-mail che inserirete in fase di installazione servirà sia per accedere al vostro sito che per la registrazione al market di Koken (che avviene in automatico senza avvisare l'utente) e, se non fate attenzione quando vi viene chiesto, anche per spedirvi la newsletter ... Premete **Next -->** La videata successiva vi chiederà o parametri di collegamento a ''MySQL'', se avete dato gli stessi nomi che ho usato io per la guida questi sono il parametri da fornire: ^Host| localhost | ^Database| Koken | ^User| kokenuser | ^Passwor| La Vostra Password | Ricordatevi che sotto Linux tutti gli oggetti di ''MySQL'' (Database, Utenti, Tabelle, Ecc...) **//sono case sensitive//** Premendo nuovamente su **Next -->** giungiamo alla fase finale dell'installazione {{ :linux:ampp_server_14.04:koken_download.png | Koken - Download}} Premenso **Install now** inizia l'installazione di ''Koken'' al termina della quale si viene rimandati al login della sezione di amministrazione. \\ Usate la mail e la password inseriti nella prima videata per loggarvi. \\ Ora ''Koken'' è installato e quasi funzionante. \\ Portarsi nella ''root'' del webserver e sistemare i permessi della cartella cd /home/webmaster/public_html sudo chown -R webmaster:www-data koken sudo chmod 775 -R koken/storage ==== ownCloud ==== Purtroppo sembra esserci un problema su ownCloud 8.x.x.x che ne rende impossibile l'installazione e l'utilizzo ... riverificherò questa parte della guida appena i problemi saranno risolti. Per prima cosa creare il database dove verranno salvati i dati, aprire ''phpMyAdmin'' e nel tab sql digitare quanto segue poi premere **esegui** CREATE DATABASE ownCloud; CREATE USER 'oCloudUser'@'localhost' IDENTIFIED BY 'yourpassword'; GRANT ALL ON ownCloud.* TO 'oCloudUser'@'localhost'; Per installarlo ci porteremo come di consueto nella solita cartella ''materiale'' cd /home/webmaster/materiale Con un browser portarsi all'indirizzo [[https://owncloud.org/install/#instructions-server]] e copiare l'url dello zip (che poi dovrete sostituire nel comando seguente) sudo wget https://download.owncloud.org/community/owncloud-x.x.x.zip Ora sarà sufficiente decomprimere il file nella giusta cartella sudo unzip -d /home/webmaster/public_html/ owncloud-x.x.x.zip Per sistemare i permessi, il manuale di ''ownCloud'' ci consiglia di usare un batch. \\ Torniamo quindi nella cartella ''materiale'' cd /home/webmaster/materiale e creiamo il file ownPermission.sh sudo nano ownPermission.sh in cui andremo ad inserire le seguenti righe #!/bin/bash ocpath='/home/webmaster/public_html//owncloud' htuser='webmaster' htgroup='www-data' find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640 find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750 #chown -R root:${htuser} ${ocpath}/ chown -R ${htuser}:${htgroup} ${ocpath}/ chown -R ${htuser}:${htgroup} ${ocpath}/apps/ chown -R ${htuser}:${htgroup} ${ocpath}/config/ chown -R ${htuser}:${htgroup} ${ocpath}/data/ chown -R ${htuser}:${htgroup} ${ocpath}/themes/ chown root:${htuser} ${ocpath}/.htaccess chown root:${htuser} ${ocpath}/data/.htaccess chmod 0644 ${ocpath}/.htaccess chmod 0644 ${ocpath}/data/.htaccess chmod 755 ${ocpath}/ Rendere il il batch appena creato eseguibile ed eseguirlo sudo chmod +x ./ownPermission.sh sudo ./ownPermission.sh Contrariamente a quanto avviene di solito, dove a questo punto si accede al server con il browser e si termina l'installazione effettuando il setup grafico via web, per configurare ''ownCloud'' è necessario dare un comando dalla shell. Spostandosi nella cartella di ''ownCloud'' cd /home/webmaster/public_html//owncloud digitare quanto segue avendo cura di sostituire i parametri con i vostri dati sudo -u webmaster php occ maintenance:install --database "mysql" --database-name "ownCloud" --database-user "oCloudUser" --database-pass "password_utente_mysql" --admin-user "Vostro_Nome_Utente_Admin" --admin-pass "Vostra_Password_Utente_Admin" **NOTA:** il comando sopra citato si occupa di creare l'utente amministratore di ''ownCloud'', per tanto //''Vostro_Nome_Utente_Admin''// e //''Vostra_Password_Utente_Admin''// sono il nome e la password di quell'utente. Il risultato del comando dovrebbe essere questo ownCloud is not installed - only a limited number of commands are available ownCloud was successfully installed ==== Pastebin ==== Esistono diverse versioni di php-PasteBin, in questa guida copriremo la release ''v3''. \\ PasteBin è uno strumento che serve a collaborare nel debug di ''code snipet'' nel modo seguente: * Postare un frammento di codice in php-pastebin, * Copiare l'url generato (tipo [[http:///php-pastebin/4lqbxycs]]), * Incollare l'url in una mail o su un forum, qualcuno risponde postando una modifica e voi potete vedere le differenze dalla vostra versione mediante l'apposito strumento integrato. **NOTA:** Perchè tutto funzioni è necessario che sia attivo il modulo apache ''mod_rewrite'' (se avete seguito la guida passo passo lo è, in caso contrario fate un giro sulla sezione della configurazione di apache per vedere come si attiva). Per prima cosa creare il database dove verranno salvati i dati, aprire ''phpMyAdmin'' e nel tab sql digitare quanto segue poi premere **esegui** CREATE DATABASE PasteBin; CREATE USER 'PasteBinusr'@'localhost' IDENTIFIED BY 'yourpassword'; GRANT ALL ON PasteBin.* TO 'PasteBinusr'@'localhost'; Per installarlo ci porteremo come di consueto nella solita cartella ''materiale'' cd /home/webmaster/materiale Con un browser portarsi all'indirizzo [[https://github.com/atmoner/php-pastebin-v3]] e copiare l'url dello ''zip'' (che poi dovrete sostituire nel comando seguente) sudo wget https://github.com/atmoner/php-pastebin-v3/archive/master.zip Ora sarà sufficiente decomprimere il file nella giusta cartella sudo unzip -d /home/webmaster/public_html/ master.zip rinominare la cartella sudo mv /home/webmaster/public_html//php-pastebin-v3-master /home/webmaster/public_html//php-pastebin e sistemare i permessi cd /home/webmaster/public_html/ sudo chown -R webmaster:www-data php-pastebin sudo chmod 775 -R php-pastebin/ Navigare con il browser all'indirizzo [[http://[vostro_sito]/php-pastebin]] e terminare l'installazione in modo grafico. La prima videata dovrebbe essere la seguente: {{ :linux:ampp_server_14.04:php-pastebin_setup_step_0.png?nolink |}} Selezionando **''Start Installation''** si accede alla schermata successiva {{ :linux:ampp_server_14.04:php-pastebin_setup_step_1.png?nolink |}} Poiché i percorsi sono tutti scritti in verde significa che hanno passato il test, quindi possiamo premere **''Stem 2''** e passare alla schermata successiva {{ :linux:ampp_server_14.04:php-pastebin_setup_step_2.png?nolink |}} In questa pagina vi vengono richiesti i parametri di collegamento al ''DB'' precedentemente creato, dovreste quindi avere una situazione come mostrata in figura seguente {{ :linux:ampp_server_14.04:php-pastebin_setup_step_2a.png?nolink |}} Premete quindi **''Test Connection''** per accedere alla pagina di creazione delle tabelle nel ''DB'' {{ :linux:ampp_server_14.04:php-pastebin_setup_step_3.png?nolink |}} Premendo il tasto **''Install database!''** si accede all'ultima pagina di configurazione {{ :linux:ampp_server_14.04:php-pastebin_setup_step_4.png?nolink |}} Immettere i dati per la creazione dell'utente amministratore e modificare il titolo a piacimento, poi premere il tasto **''Update Config''** ed eccovi giunti alla fine dell'installazione {{ :linux:ampp_server_14.04:php-pastebin_setup_step_5.png?nolink |}} Prima di premere il tasto **''Go to your website''** assicuratevi di aver dato gli "ultimi ritocchi". Ultimi ritocchi come indicato dalla schermata finale sudo rm /home/webmaster/public_html//php-pastebin/install.php sudo rm /home/webmaster/public_html//php-pastebin/libs/db.sql sudo chmod 644 /home/webmaster/public_html//php-pastebin/libs/db.php Ora ''php-PasteBin'' è pronto per essere usato [[http://[vostro_sito]/php-pastebin]]. ==== phpBB ==== ==== phpMyAdmin ==== phpMyAdmin è un database manager indispensabile per gestire MySQL (verranno fatti riferimenti ad esso nel corso della guida). \\ === Installazione Automatizzata (di sistema) === Per installare digitare sudo apt-get install phpmyadmin Il programma di installazione effettuerà la configurazione automatica del webserver. Selezionare **Apache2** (usando la barra spaziatrice e non l'invio :!:) Per testarne il funzionamento è sufficiente aprire un borwser e farlo puntare a **%%http://[vostro_sito]/phpmyadmin%%** La versione pacchettizzata nel sistema, solitamente, è meno aggiornata ma si integra meglio con le logiche di sicurezza del sistema. === Installazione Manuale === Se siete dei puristi potete cimentarvi nell'installazione da 0. \\ Il vostro pacchetto sarà allineato all'ultima versione ma potrebbe essere più insicuro. Purtroppo il sito di ''phpMyAdmin'' non esporta la comoda funzione per scaricare sempre l'ultima versione, si rende quindi necessario andare sul sito e copiare il link della versione corrente per poi sostituirlo a quello riportato in questa guida. Mentre questa guida viene redatta la versione rilasciata di phpMyAdmin è la 4.4.8 il cui url per il download è [[http://sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/4.4.8/phpMyAdmin-4.4.8-all-languages.tar.gz/download#!md5!e0ba0592078f43a6ac1a47546877df18]] \\ Spostarsi nella cartella ''Materiale'' precedentemente creata cd /home/webmaster/materiale e scaricare phpMyAdmin (avendo cura di sostituire l'url con quello della versione più recente presente al momento dell'instalazione e di togliere tutta la parte da /download che darebbe problemi.) sudo wget http://sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/4.4.8/phpMyAdmin-4.4.8-all-languages.tar.gz Decomprimere il contenuto del file appena scaricato nella ''DocumentRoot'' del sito tar -xzvf phpMyAdmin-x.x.x-all-languages.tar.gz -C /home/webmaster/pubblic_html Sistemare owner e nome della catella cd /home/webmaster/pubblic_html sudo chown webmaster:www-data -R phpMyAdmin-x.x.x-all-languages sudo mv phpMyAdmin-x.x.x-all-languages phpMyAdmin Ora procediamo alla configurazione (semi-automatica di phpMyAdmin) cd phpMyAdmin mkdir config # create directory for saving chmod 775 config # give it world writable permissions cp config.sample.inc.php config.inc.php cp config.inc.php config/ # copy current configuration for editing chmod 775 config/config.inc.php # give it world writable permissions Per terminare la configurazione, aprire il browser e navigare verso la locazione del vostro phpMyAdmin aggiungento ''/setup'' \\ [[http://[vostro_sito]/phpmyadmin/setup]] Finito il setup salvate e tornate con il browser su [[http://[vostro_sito]/phpmyadmin]] === Considerazioni Finali === Personalmente mi ha divertito scrivere e provare la parte della configurazione manuale ... ma l'eccessivo numero di parametri nella configurazione del pacchetto rendono tedioso il tentativo e non c'è una reale certezza di averlo reso anche sicuro quindi personalmente (almeno per ora) penso rimarrò sulla versione automatizzata. ==== phpSysInfo ==== phpSysInfo riporta alcune info riguardanti Hardware e Software del server su cui viene messo. Per installarlo ci porteremo come di consueto nella solita cartella ''materiale'' cd /home/webmaster/materiale Con un browser portarsi all'indirizzo [[https://github.com/phpsysinfo/phpsysinfo/releases/latest]] e copiare l'url del ''tar.gz'' (che poi dovrete sostituire nel comando seguente) sudo wget https://github.com/phpsysinfo/phpsysinfo/archive/vx.x.x.tar.gz Ora sarà sufficiente decomprimere il file nella giusta cartella sudo tar -xvf ./vx.x.x.tar.gz -C /home/webmaster/pubblic_html/ rinominare la cartella sudo mv /home/webmaster/pubblic_html/phpsysinfo-x.x.x/ /home/webmaster/pubblic_html/phpsysinfo/ e sistemare i permssi cd /home/webmaster/pubblic_html sudo chown -R webmaster:www-data phpsysinfo sudo chmod 775 -R phpsysinfo/ Ora creiamo il nuovo file di configurazione cd phpsysinfo sudo cp phpsysinfo.ini.new phpsysinfo.ini sudo chown webmaster:www-data phpsysinfo.ini Modificate il file ''phpsysinfo.ini'' a vostro piacimento ma attenzione a non esporre troppi dati //"sensibili"// Ora potete, con il browser, navigare all'indirizzo [[http://[vostro_sito]/phpsysinfo]] per gli ultimi ritocchi tipo il tema da usare (nel mio caso ''nextgen''). ==== WebMin ==== Webmin è un pacchetto che consente la gestione del server tramite interfaccia ''Web''. Come quasi tutte le webapp ha due modi per poter essere installato === Installazione Automatizzata (di sistema) === Per installare digitare sudo apt-get install webmin Solo che, come per tutti i package delle distro, installa una versione non nuovissima ... === Installazione Manuale === Per questa partitcolare webapp l'installazione manuale è abbastanza semplificata dall'esistenza di un ''.deb'' con l'ultima versione. Quindi spostarsi nella cartella materiale e scaricare il ''.deb'' andando prima sul sito con il browser e copiando il link all'ultima versione da sostituire nel comando seguente cd /home/webmaster/materiale sudo wget http://prdownloads.sourceforge.net/webadmin/webmin_x.xxx_all.deb ed ora procediamo all'installazione vera e propria sudo dpkg -i webmin_x.xxx_all.deb Se vengono segnalati errori riguardanti le dipendenze dare il seguente comando sudo apt-get -f install digitare y alla richiesta di poter installare le dipendenze. \\ Al termine ''webmin'' verrà attivato nel sistema. \\ === Conclusioni === Una volta installato, ''webmin'' è raggiuncipile all'indirizzo [[https://your_site:10000/]] ==== WordPress ==== ===== 16. Dynamic DNS ===== Perchè un webserver possa essere visibile nel web è necessario che abbia un dominio registrato che punti su di lui. \\ Se avete l'IP fisso nessun problema ma, che succede se avete un IP dinamico ? \\ Serve qualcosa che mantenga allineato il vostro indirizzo con il dominio che avete registrato. \\ Io ho scelto di farlo attraverso il servizio di **''[[http://www.noip.com|NO-IP]]''** Per mantenere il vostro IP sincronizzato con NO-IP è necessario installare il client di NO-IP. \\ Una volta esisteva un pacchetto di sistema ma nelle ultime versioni di ''Ubuntu'' è stato dismesso quindi sarà necessario procedere come segue sudo -i cd /usr/local/src/ wget http://www.noip.com/client/linux/noip-duc-linux.tar.gz tar xf noip-duc-linux.tar.gz cd noip-2.1.9-1/ make install rm /usr/local/src/noip-duc-linux.tar.gz exit Questo installerà il client di sincronia, per configurarlo digitare **ATTENZIONE!!!:** prima di dare questo comando assicurarsi di aver già fatto la registrazione su NO-IP ed avere le credenziali dell'account a disposizione sudo /usr/local/bin/noip2 -C Per cambiare l'intervallo di sincronizzazione digitare sudo /usr/local/bin/noip2 -U 120 Per far ripartire il servizio digitare sudo /usr/local/src/noip-2.1.9-1/debian.noip2.sh restart #! /bin/sh ### BEGIN INIT INFO # Provides: noip2 # Required-Start: $syslog # Required-Stop: $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: noip.com client service ### END INIT INFO # . /lib/lsb/init-functions case "$1" in start) echo "Starting noip2." /usr/local/bin/noip2 ;; stop) echo "Shutting down noip2." killall noip2 #killproc /usr/local/bin/noip2 ;; *) echo "Usage: $0 {start|stop}" exit 1 esac exit 0 Then give it executable permissions and update the rc.d scripts: sudo chmod +x /etc/init.d/noip2 sudo update-rc.d noip2 defaults Now you can reboot your Raspberry Pi and it will automatically update it’s ip at noip on boot. ===== 17. Backups ===== ==== Il disco dei backups ==== Poichè lasciare il backup sugli stessi dischi che si stanno backuppando potrebbe non essere un'idea geniale, ho acquistato un disco esterno dove poter copiare i bacups. \\ Per prima cosa attaccare un disco esterno ed identificarlo sudo fdisk -l //(dalle dimensioni dovrebbe essere facilmente identificabile)// \\ Nel mio caso è stato identificato dal sistema come ''/dev/sdb1''. \\ A questo punto si procede alla formattazione in **ext4** //(In questo modo sarà leggibile solo da ''linux'' se preferite che venga visto anche da ''windows'' non eseguite il passo successivo) //. sudo mkfs.ext4 -L BackupsDisk /dev/sdb1 Poi è necessario montare il disco, io ho optato per un mount in fase di startup del server. \\ Eseguire il comando seguente e prendere nota dello UUID sudo lsblk --output NAME,LABEL,FSTYPE,UUID il cui risultato sdb └─sdb1 BackupsDisk ext4 aca1e3de-aa82-46e2-b54d-de9950f672f7 Vi fornirà lo UUID del disco. Ora sarà necessario editare il file ''fstab'' per aggiungere il ''mount'' in fase di boot sudo nano /etc/fstab aggiungere al file ''fstab'' la seguente riga UUID=aca1e3de-aa82-46e2-b54d-de9950f672f7 /media/backups ext4 defaults 0 1 Ovviamente al parametro UUID dovrete sostituire quello precedentemente copiato, il mount point potete metterlo anche diverso da quello che ho indicato io ... \\ per tutti gli altri parametri rimando alla [[https://wiki.archlinux.org/index.php/Fstab_%28Italiano%29|guida]] seguente. Prima di procedere oltre, riavviate il server ed assicuratevi che il disco sia stato montato correttamente. ==== Utente MySQL per il dump del DB ==== Per eseguire il dump de db è sempre meglio avere un utente specifico che abbia la possibilità di leggere ed eseguire il dump su tutti i DB (presenti e futuri) presenti nel vostro MySQL. \\ Ecco lo script di creazione da eseguire con ''phpMyAdmin'' CREATE USER 'Your_Backup_User'@'localhost' IDENTIFIED BY 'Your_Backup_User_Password'; GRANT SELECT, RELOAD, FILE, SUPER, LOCK TABLES, SHOW VIEW ON *.* TO 'Your_Backup_User'@'localhost' IDENTIFIED BY 'Your_Backup_User_Password' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0; ==== Script di backup ==== Posizionarsi nella cartella ''/usr/local/sbin'' e creare il file ''backmeup.sh'' cd /usr/local/sbin sudo nano backmeup.sh il cui contenuto è il seguente date=`date +%Y%m%d_%H%M%S` usrname='webmaster' dbackups='/home/'$usrname'/backup/' fname=$dbackups'backup-'$date'.tar' dumpfile=$dbackups'dump-all-'$date'.sql' zfname=$dbackups'backup-'$date'.7z' oldfiles=$dbackups'backup-*.7z' fddimg=$dbackups'backup-mbr-'$date'.img' fetcname=$dbackups'backup-etc-'$date'.tgz' frootname=$dbackups'backup-root-'$date'.tar' fvarlogname=$dbackups'backup-varlog-'$date'.tar' fhomename=$dbackups'backup-home-'$date'.tar' fconfigfiles=$dbackups'backup-configfiles-'$date'.tar' dconffiles=$dbackups'configfiles' cd $dbackups echo ==== INIZIO [`date +%Y%m%d_%H%M%S`] ==== # Elimina Backups vecchi echo ==[ Elimina Backups vecchi ]== rm $oldfiles #BackUp MBR #echo ==[ BackUp MBR ]== #dd if=/dev/sda of=$fddimg bs=512 count=1 # Ripulisce i vecchi files di configurazione precedentemente salvati echo ==[ Ripulisce i vecchi files di configurazione precedentemente salvati ]== rm $dconffiles/*.txt rm $dconffiles/*.cf rm $dconffiles/*.ini # Esporto il crontab, le configurazioni di postfix (in 2 formati) ed il php.ini echo ==[ Esporto il crontab, le configurazioni di postfix [in 2 formati] ed il php.ini ]== crontab -l > $dconffiles/crontab.txt postconf > $dconffiles/postconf.txt cp /etc/postfix/main.cf $dconffiles/ cp /etc/php5/apache2/php.ini $dconffiles/ #Eseguo il dump del DB (Ricordardi di modificare user e password) echo ==[ Eseguo il dump del DB ]== mysqldump -uYour_Backup_User -pYour_Backup_User_Password --add-drop-table --all-databases > $dumpfile # Backup delle webapps installate con apt-get echo ==[ Backup delle webapps installate con apt-get ]== echo $fname tar cpvf $fname /usr/share/phpmyadmin tar rpvf $fname /usr/share/webmin echo ==[ Backup /etc /root /var/log ]== tar -czvpf $fetcname /etc tar cpvf $frootname /root tar cpvf $fvarlogname /var/log echo ==[ Backup dump file del DB ]== tar rvf $fname $dumpfile rm $dumpfile echo ==[ Compressione files di configurazione ]== tar cpvf $fconfigfiles $dconffiles echo ==[ Compressione di tutti i files backuppati ]== 7z a $zfname $fname 7z a $zfname $fetcname 7z a $zfname $frootname 7z a $zfname $fvarlogname 7z a $zfname $fddimg 7z a $zfname $fconfigfiles echo ==[ Rimozione dei backups non compressi ]== rm $fname rm $fetcname rm $frootname rm $fvarlogname rm $fddimg rm $fconfigfiles echo ==[ Backup /home ]== tar -cpvf $fhomename --exclude backup /home/$usrname echo ==[ Compressione /home ]== 7z a $zfname $fhomename echo ==[ Rimozione dei backup /home non compresso ]== rm $fhomename echo ==[ Sistemazione diritti backup compresso ]== chown $usrname:www-data $zfname echo ==[ Copia in backups ]== cp $zfname /media/backups/ echo ==== FINE [`date +%Y%m%d_%H%M%S`] ==== avendo cura di sostituire nelle righe seguenti i vostri dati usrname='webmaster' dbackups='/home/'$usrname'/backup/' mysqldump -uYour_Backup_User -pYour_Backup_User_Password --add-drop-table --all-databases > $dumpfile Ora rendetelo eseguibile con sudo chmod 775 backmeup.sh ==== Schedulare il backup ==== Poichè molte parti dello script richiedono i privilegi di **''root''** per funzionare, dovremo avere cura di schedulare lo script nel ''crontab'' del ''root''. sudo -i crontab -e Se è la prima volta che lanciate il comando **crontab -e**, il sistema vi chiederà con quale editor volete eseguire le modifiche //(verrà reso predefinito per il futuro)// \\ Fate la vostra scelta (io ho scelto di continuare ad usare ''nano'') Aggiungere al file crontab la seguente riga 00 20 * * * /usr/local/sbin/backmeup.sh > /var/log/my_backup.log Per i parametri di crontab vi rimando a [[http://www.pc-freak.net/images/crontab-execute-cron-jobs-every-second-on-linux-cron-logo.png|questa immagine]] abbastanza esplicativa. Premere Ctrl-X e salvare le modifiche ed uscire dalla ''//modalità root//'' con exit ==== Conclusioni ==== Ora il vostro backup è pronto per essere eseguito. \\ Se volete fare un primo giro di prova senza attendere l'esecuzione della schedulazione cd /usr/local/sbin sudo ./backmeup.sh Al termine dello script verificate che il file generato si trovi sia sotto la cartella ''backup'' dell'utente ''webmaster'' che sul disco dei backups ===== 18. Accesso Remoto e Tunneling ===== Spesso è utile poter accedere al server da remoto per cambiare configurazioni o modificare parametri che non si vuole siano "aggredibile" tramite un'interfaccia web da chiunque. Per questo ci viene in aiuto il procolollo SSH il cui server abbiamo installato come primo passo di questa guida. Poichè esporre il protocollo SSH con la richiesta di login e password rappresenta comunque un rischio, è preferibile disattivare la richiesta delle credenziali ma accedere tramite un meccanismo a chiave pubblica e privata. ==== Prerequisiti ==== Per la parte successiva della guida è necessario disporre di PuttyGen che può essere scaricato [[https://the.earth.li/~sgtatham/putty/latest/x86/puttygen.exe|qui]] ==== Creazione Struttura su File System ==== Per fare ciò è necessario creare la cartella ''.ssh'' nella ''home'' dell'utente con cui intendete collegarvi. Immaginando di essere già nella sua ''home'' procedere come segue: mkdir .ssh cd .ssh nano authorized_keys2 #salvare il file vuoto cd .. chmod 600 .ssh/authorized_keys2 chmod 700 .ssh ==== Generazione delle chiavi (Pubblica / Privata) ==== Avviare PuttyGen, selezionare **SSH-2 RSA** nel riquadro **Type of key to generate** e specificare ''1024'' (o valore superiore) come valore per **Number of bits in a generated key**. \\ A questo punto premere il tasto **Generate**. {{ :linux:ampp_server_14.04:key-based_ssh_logins_01.png?nolink |}} \\ Durante il processo di generazione è necessario "agitale" il puntatore del mouse nell'area in alto della finestra di PuttyGen per aumentare il random della chiave. {{ :linux:ampp_server_14.04:key-based_ssh_logins_02.png?nolink |}} \\ Quando la barra blu arriva a fine dell'indicatore, le chiavi sono state generate. \\ Mettete in **Key comment** qualcosa che faccia capire di quale chiave si tratta (avendo generato una chiave per ognuno dei miei dispositivi mobili, nel commento ho messo il nome del dispositivo in modo da sapere a quale fa riferimento la chiave. La cosa potrebbe tornare utile in caso di furto o smarrimento per poter disattivare solo quel dispositivo). Per aumentare la sicurezza, potete impostare una passphrase che vi verrà richiesta al momento dell'utilizzo della chiave, non è obbligatorio metterla ma senza chiunque avrà la chiave potrà collegarsi (io la uso per la macchina in ufficio, per evitare che chiunque possa collegarsi al mio server da li). Se volete impostarla digitate la password desiderata nel campo **Key passphrase** e ripetetela nel campo **Confirm passphrase**. \\ {{ :linux:ampp_server_14.04:key-based_ssh_logins_03.png?nolink |}} \\ Ora premete **Save publick key** e salvate la chiave in un percorso "sicuro" del vostro PC avendo cura di darle un nome che vi consenta di capire a quale sistema verrà applicata. \\ {{ :linux:ampp_server_14.04:key-based_ssh_logins_04.png?nolink |}} \\ Premete **Save private key**. {{ :linux:ampp_server_14.04:key-based_ssh_logins_05.png?nolink |}} \\ Potete salvare questa chiave nello stesso percorso dell'altra ma badate di potervi accedere solo voi e di non perderla perchè se disattivate il login tramite username/password non sarà più possibile accedere al server se non con una live. Potete dare qualsiasi nome vogliate al file ma l'estensione deve rimanere **.ppk**. {{ :linux:ampp_server_14.04:key-based_ssh_logins_06.png?nolink |}} \\ Ora copiate la chiave pubblica dalla finestra di PuttyGen {{ :linux:ampp_server_14.04:key-based_ssh_logins_07.png?nolink |}} ==== Salvare la chiave pubblica sul server ==== Accedere al server con il solito login username/password e salvare la chiave precedentemente copiata nel file ''authorized_keys2'' cd .ssh nano authorized_keys2 Portatevi alla fine del file e premete il tasto destro del mouse per incollare. \\ La linea aggiunta dovrebbe assomigliare a questa ssh-rsa AAAAB3NzaC1yc2EA[...]Lg5whU0zMuYE5IZu8ZudnP6ds= myname@example.com ===== xx. Links ===== [[http://articles.techrepublic.com.com/2415-7343_11-161368.html|webalizer]] \\ [[http://www.rigacci.org/wiki/doku.php/doc/appunti/linux/sa/dokuwiki|dokuwiki]] \\ [[https://www.howtoforge.com/ssh_key_based_logins_putty|Key-Based SSH Logins With PuTTY]] \\ [[http://terminal28.com/how-to-install-and-configure-teamspeak3-server-linux-debian-ubuntu/|TeamSpeack3 Server]] \\ Quella che segue è solo una serie di appunti che serviranno alla stesura della guida. ===== Rendere Accessibile la /var/www ===== mkdir /home/[YOUR USERNAME]/www mount --bind /var/www /home/[YOUR USERNAME]/www seguendo [[http://www.zaphu.com/2007/08/21/ubuntu-lamp-server-guide-configure-apache-mysql-and-cgi-bin/|questa guida]] ===== Applicazioni Web ===== WordPress [[http://www.supriyadisw.net/2006/12/wordpress-installation-on-ubuntu-with-lamp]] ===== Nuovi Appunti: 20100120 ===== [[http://wiki.vpslink.com/HOWTO:_CentOS_5_setup_for_LAMP_and_ISPconfig]] \\ (Utile per vedere alcune configurazioni)