Proxmox - Container: differenze tra le versioni
Nessun oggetto della modifica |
|||
| Riga 1: | Riga 1: | ||
== Operazioni Preliminari == | == Operazioni Preliminari == | ||
* aggiungere utente '''designbest''' | |||
<syntaxhighlight lang="bash"> | |||
adduser designbest | |||
adduser designbest www-data | |||
</syntaxhighlight> | |||
== Database == | == Database == | ||
Versione delle 14:21, 23 mag 2025
Operazioni Preliminari
- aggiungere utente designbest
adduser designbest
adduser designbest www-data
Database
Di default la configurazione ha una restrizione per le connessione solo sull'IP locale.
Nel file di configurazione cercare e modificare la riga con bind-address così
bind-address = 0.0.0.0
Il file di configurazione cambia a seconda della distribuzione.
- Debian: si trova in
/etc/mysql/mariadb.conf.d/50-server.cnf
sudo systemctl restart mariadb.service
Creare un nuovo utente ed assegnarli tutti i privilegi.
sudo mysql -u root
Creare l'utente ( % significa qualsiasi provenienza) ed assegnargli tutti i privilegi a qualsiasi database.
In MariaDB (Debian)
CREATE USER 'webmobili'@'%' IDENTIFIED BY 'W3bm0b1l!';
GRANT ALL PRIVILEGES ON *.* to 'webmobili'@'%';
FLUSH PRIVILEGES;
exit
VS Code XDebug
- In VS Code installare estensione di Microsoft
Remote - SSH - Creare una cartella ad esempio
C:\LAVORO\wordpress-debug\.ssh
in cui creare il seguente file senza estensione config con questi dati:
Host wordpress-proxmox
HostName 10.13.17.125
User designbest
Port 22
- Hostname -> corrisponde all'indirizzo ip del container Proxmox
- Username -> utente del container per accesso SSH
Connessione SSH al container
- Aprire il folder appena creato con VS Code.
- Premere F1
- Selezionare Remote-SSH: Connect to Host
- Configure SSH Hosts e inserire nel settings il percorso al file config appena creatoù
- Premere nuovamente F1
- Selezionare wordpress-proxmox e poi Linux
- Si aprirà una nuova finestra VSCode e bisogna inserire la password dell'utente ssh
- Poi selezionare Open Folder nella sezione a sinistra
- Selezionare il folder www, dare ok e reimmettere la password.
Configurazione Container
- Creare una cartella
.vscodenella root.
- Estensioni da installare:
- PHP Debug
- Creare configurazione di debug e aggiungere la voce seguente a
"name": "Listen for Xdebug",
"pathMappings": {
"/var/www/html/wordpress": "${workspaceFolder}"
}
- Sezione PORTS -> aggiungere solo 9003 e confermare
- Installare pacchetti da terminale del container:
apt install php-xdebug
apt install php-curl php-xml php-imagick php-gd php-mbstring php-zip php-intl
- Modificare php.ini in
/etc/php/8.2/apache2/:
upload_max_filesize = 128M
post_max_size = 256M
max_execution_time = 900
max_input_vars = 5000
memory_limit = 4096M
max_input_time = 400
- Modificare config di php-xdebug in
etc/php/8.2/apache2/conf.d/20-xdebug.ini:
zend_extension=xdebug.so
[xdebug]
xdebug.mode=develop,debug
xdebug.start_with_request=yes
xdebug.client_host=127.0.0.1
xdebug.client_port=9003
FTP
Installare un FTP server su Linux, in questo caso "Very Secure FTP Daemon" (questi sono cretini)
sudo apt install vsftpd
configuriamo
sudo nano /etc/vsftpd.conf
cercare e cambiare così
write_enable=YES
chroot_local_user=YES
# aggiungere questa riga che evita un errore legato ai permessi di scrittura per gli utenti chrootati
allow_writeable_chroot=YES
# cercare e scommentare la riga
local_umask=022
#ed aggiungere appena sotto
file_open_mode=0777
#Queste specificano che i file vengono introdotti coi permessi 777 ma viene tolto un 022 per fare 755.
Se si vuole utilizzare la modalità passiva aggiungere
pasv_enable=YES
pasv_max_port=50030
pasv_min_port=50000
riavviare vsftpd
sudo systemctl reload vsftpd.service
a questo punto ogni utente della macchina può connettersi via FTP usando le proprie credenziali.
La root è la propria Home folder.
ESEMPIO:
Se siamo su un server e vogliamo mostrare solo la cartella www:
Si crea un utente ad hoc e gli si montano nella home tutte le cartelle che servono col comando
mkdir /home/ftp_user/www
mount --bind /var/www /home/ftp_user/www
ovviamente consideriamo che l'utente in questione abbia i permessi di scrittura sulla WWW.
Si potrebbe fare
sudo chown root:www-data /var/www -R
sudo chmod 775 /var/www -R
sudo adduser <nomeutente> www-data