giovedì, settembre 19, 2024

Server DNS: come crearlo nella propria LAN locale

Ho dovuto realizzare un server DNS locale per risolvere tutti quei domini interni alla mia rete LAN perché mi sono rotto le palle che su un pool di macchine tutte le volte mi tocca cambiare il file di hosts  per reindirizzare un client su un server che per manutenzione mi necessitava spostare su un altro IP.

Quindi questo è quello che ho fatto.

Ho creato un container con una distro linux leggera (io ho usato Ubuntu ma il concetto vale per ogni distro) ed ho usato Dnsmasq.

Come sempre aggiorno i repository, per ubuntu / debian like:

# apt update && apt upgrade -y

Naturalmente la distro dovrà avere un IP statico

Devo disabilitare il servizio di ubuntu "resolve" che è in ascolto sulla porta 53, quella che serve a me per Dnsmasq:

# systemctl disable systemd-resolved
# systemctl stop systemd-resolved

Mi assicuro che il file /etc/resolv.conf abbia un nameserver dns pubblico

# rm /etc/resolv.conf
# echo nameserver 8.8.8.8 | tee /etc/resolv.conf

Bene, installo Dnsmasq

# apt install dnsmasq -y

Imposto alcuni parametri di configurazione sul file /etc/dnsmasq.conf, quindi aggiungo alla configurazione:

domain-needed
bogus-priv
server=8.8.8.8
server=8.8.4.4
cache-size=1000

Giusto per ricordarsi:
"domain-needed", le denominazioni locali (ad esempio sitoweb) che non hanno alcun TLD specificato non saranno mai inoltrate al DNS gestito da terze parti (ad esempio ai DNS Google)
"bogus-priv",  gli indirizzi IP privati non saranno esposti al gestore del server DNS remoto
"cache-size", si chiede a Dnsmasq di conservare una cache locale formata da un numero massimo di 1.000 elementi, in questo modo si velocizzerà la risoluzione dei nomi a dominio più richiesti dai client collegati in rete locale

Bene, adesso modificando il file di hosts di questa macchina e impostando su tutti i singoli sistemi come DNS il suo IP potrò propagare a tutti i client eventuali indirizzamenti.

Editiamo il file /etc/hosts:

192.168.178.123 server.lan
192.168.178.321 storage.lan
ecc...

Ok, installo il servizio Dnsmasq e lo avvio:

# systemctl enable dnsmasq
# systemctl restart dnsmasq

Naturalmente quando cambierò qualcosa nel file hosts dovrò riavviare il servizio per propagare i nuovi IP.


domenica, luglio 07, 2024

Installa Windows 10/11 direttamente da hdd

Con questa procedura si potrà installare windows trasferendo direttamente la sua immagine (presente nell'ISO o DVD d'installazione) sul disco fisso nel caso ci siano errori durante la normale procedura di installazione.

Il file che ci necessita si chiama "install.wim" ma probabilmente nell'ISO si troverà il file "install.esd" (che si trova nella directory /sources/) che contiene appunto il file che serve. Quindi dobbiamo estrarlo.

Preparazione del disco
(SHIFT+F10 nella prima parte di installazione dell'ISO per avere accesso al prompt di comando)

    diskpart

    list disk

    select disk 0

    clean

    convert mbr

    cre par pri size=600

    format fs=ntfs Label="Riservato al sistema" quick

    active

    assign letter s

    cre par pri size=6000

    format fs=ntfs quick

    assign letter w

    cre par pri

    format fs=ntfs quick

    assign letter z

Verifica iso per file "install.esd" (si presume che il drive D: sia quello dove presenti i files d'installazione)

    dism /get-wiminfo /wimfile:d:\sources\install.esd
    (segnarsi il numero dell'indice che fa riferimento alla versione di windows che si desidera)

Esportare da "install.esd" il file "install.wim"

    dism /export-image /sourceimagefile:d:\sources\install.esd /sourceindex:<numero indice> /destinationimagefile:w:\install.wim /compress=max /checkintegrity

Applicare l'immagine sul disco finale Z: (che poi diventerà il C:)

    dism /apply-image /imagefile:w:\install.wim /index:1 /applydir:z:\

Installare il boot

    bcdboot z:\windows /s s: /L it-IT


Ok, rimuovere tutte le unità, uscire con EXIT e riavviare il sistema.

sabato, maggio 14, 2022

aaPanel -- How to install aaPanel web hosting control panel on CentOS 7 or Ubuntu

 Install wget

sudo yum install wget

For CentOS or Redhat 7 0r 8 Linux

wget -O install.sh http://www.aapanel.com/script/install_6.0_en.sh 

For Debian or Ubuntu Linux

wget -O install.sh http://www.aapanel.com/script/install-ubuntu_6.0_en.sh

Run install.sh script of aaPanel Linux web control panel

bash install.sh 

 

mercoledì, aprile 13, 2022

VestaCP - Aggiornare PHP a 7.4 o 8.0

add-apt-repository ppa:ondrej/php

add-apt-repository ppa:ondrej/apache2

Installazione PHP 7.4

apt install php7.4

apt install php7.4-common php7.4-mysql php7.4-xml php7.4-xmlrpc php7.4-curl php7.4-gd php7.4-imagick php7.4-cli php7.4-dev php7.4-imap php7.4-mbstring php7.4-opcache php7.4-soap php7.4-zip php7.4-intl

a2dismod php7.2

a2enmod php7.4

systemctl restart apache2

apt remove php7.2*

apt autoremove

apt install php7.4-bcmath php7.4-gmp

systemctl restart apache2

Installazione PHP 8.0

apt install php8.0

apt install php8.0-common php8.0-mysql php8.0-xml php8.0-curl php8.0-gd php8.0-imagick php8.0-cli php8.0-dev php8.0-imap php8.0-mbstring php8.0-opcache php8.0-soap php8.0-zip php8.0-intl

a2dismod php7.4

a2enmod php8.0

systemctl restart apache2


venerdì, aprile 08, 2022

VestaCP - Come disabilitare accesso diretto IP pubblico

Modificare il file /etc/nginx/conf.d/your-ip.conf in questo modo:

# Per accesso in http
server {
   listen       [il tuo ip]:80 default;
   server_name  _;
   location / {
      access_log /dev/null;
      error_log /dev/null;
      return 444;
   }
   # per abilitare l'accesso in phpmyadmin
   location /phpmyadmin/ {
      proxy_pass  http://[il tuo ip]:8080;
   }
   # per abilitare l'accesso in webmail
   location /webmail/ {
      proxy_pass  http://[il tuo ip]:8080;
   }
}

# Per accesso in https
server {
   listen       [il tuo ip]:443 default;
   server_name  _;
   ssl on;
   ssl_certificate /home/user/conf/web/ssl.domain.ru.pem;
   ssl_certificate_key /home/admin/conf/web/ssl.domain.ru.key;

   location / {
      access_log /dev/null;
      error_log /dev/null;
      return 444;
   }
   # per abilitare l'accesso in phpmyadmin
   location /phpmyadmin/ {
      proxy_pass  http://[il tuo ip]:8080;
   }
   # per abilitare l'accesso in webmail
   location /webmail/ {
      proxy_pass  http://[il tuo ip]:8080;
   }
}


Riavviare NGINX


Server DNS: come crearlo nella propria LAN locale

Ho dovuto realizzare un server DNS locale per risolvere tutti quei domini interni alla mia rete LAN perché mi sono rotto le palle che su un ...