Por las razones que sean, a veces necesitamos añadir o eliminar entradas DNS masivamente en todos o varios dominios en Plesk, ya sea porque se crearon entradas DNS (como por ejemplo, SPFs) que ya no son válidos y queremos cambiar, o bien porque queremos añadir en cada dominio una nueva entrada DNS. La plantilla de Plesk es potente, pero muchas veces no se ajusta a nuestras necesidades.
Afortunadamente, con los siguientes comandos podemos realizar entradas DNS de forma masiva, o borrarlas.
Primeramente, debemos obtener el listado de dominios de los que queremos modificar, esto lo podemos hacer a mano, o bien con otro script:
1 |
mysql -uadmin -p`cat /etc/psa/.psa.shadow` --database=psa -Bne "select name from domains" | grep -Ev "^name$" > lista_dominios.txt |
Con este comando, obtendremos un listado línea a línea de todos los dominios del servidor. Nosotros vamos a trabajar sobre este listado.
Para añadir entradas masivamente
1 |
for i in `cat lista_dominios.txt`; do /usr/local/psa/bin/dns -a $i -txt "v=spf1 +a +mx ip4:192.168.1.1 -all"; done ; |
Con este comando, crearemos en TODOS los dominios una entrada tipo TXT con el contenido v=spf1 +a +mx ip4:192.168.1.1 -all. Por supuesto, podemos cambiar el tipo de entrada poniendo -a si queremos una entrada A, -ns si queremos una entrada NS, y así sucesivamente.
Para eliminar entradas masivamente.
Pongamos que queremos eliminar todas las entradas creadas anteriormente:
1 |
for i in `cat lista_dominios.txt`; do /usr/local/psa/bin/dns -d $i -txt "v=spf1 +a +mx ip4:192.168.1.1 -all"; done ; |
Sencillo, simplemente cambiamos la acción de -a (add) a -d (delete) y se borrarán todas las entradas automáticamente.
0 comentarios