PDA

Bekijk Volledige Versie : DirectAdmin Maintenance Script



rzRDJ
20/04/13, 11:52
Hoi :)

Ik ben al een tijdje bezig met een directadmin script die van alles automatisch doet zodat ik me hetzelf makkelijker maak en wou graag het script delen en uitleg geven hoe alles werkt. Hij is tot nu toe alleen getest op CentOS 6.x

Ik ben van plan om het script te herschrijven in een betere volgorde aangezien het nu wat een puinhoop script is maar het werkt wel ;).

Je kunt hier de nieuwste versie downloaden:
http://www.zentiweb.nl/da_maint.php

Maar goed... Wat doet het script en wat kan je er mee?

1) Script gebruiken om DirectAdmin te installeren
Je kunt met dit script ook DirectAdmin installeren, je kunt ook de officiele setup van DirectAdmin gebruiken maar wanneer je de parameter install gebruikt zal dit script eerst de gehele server updaten en pre-install commands uitvoeren voordat de officiele DirectAdmin setup wordt gestart en zal de gewone DirectAdmin setup de rest doen

parameter: ./da_maint.sh install

2) Server up2date houden
Wanneer je het script uitvoert zonder parameter zal hij gewoon de server updaten nadat je op [ENTER] hebt gedrukt. Hij zal weer de server software updaten en wanneer een update beschikbaar is van de DirectAdmin services zal die de nieuwste versies binnen halen en vervolgens compilen. Ook zal automatisch Ioncube en Zend worden geinstalleerd en zal je PHP.ini beveiligd worden.

parameter: ./da_maint.sh

3) SpamAssassin installeren
Standaard staat SpamAssassin niet geinstalleerd, DirectAdmin vraagt je dan om 'spamd' te installeren. Ook zal die de benodigde perl add-ons installeren die nog zijn voor SpamAssassin

parameter: ./da_maint.sh spamd

4) SuHosin
SuHosin wordt standaard niet gecompiled in DirectAdmin dus heb ik in dit script maar een functie gebouwd die SuHosin installeerd en compiled voor je.

parameter: ./da_maint.sh suhosin

5) Firewall installeren
Als je deze command uitvoert krijg je een keuze uit 2 firewalls: CSF+LFD of APF, als je de keuze hebt gemaakt zal dit script automatisch de nieuwste versie downloaden en installeren.

parameter: ./da_maint.sh firewall

6) Temp Partitie maken
Bij sommige servers zijn er geen temp partities aanwezig dus heb ik dat in dit script gebouwd, hij maakt automatisch een temp partitie in en schrijft het ook in de fstab.

parameter: ./da_maint.sp tmpmount

7) Nederlandse Taalpakket
Dit zal de nederlandse taalpakket installeren/updaten voor DirectAdmin.

parameter: ./da_maint.sh lang_dutch

8) Switch tussen CLI of SUPHP
Hier kun je switchen tussen CLI of SUPHP en zal daarna alles recompilen.

parameter: ./da_maint.sh set suphp/cli

9) Switch tussen ProFTPD of PureFTPD
Hier kun je switchen tussen ProFTPD of PureFTPD

parameter: ./da_maint.sh ftp

10) Httpd Configs rewriten
Met deze functie zal die alle httpd conf's rewriten.

parameter: ./da_maint.sh rwconfs


Mocht je nog wat functies in dit script willen zien dan hoor ik dat graag. Wil je bijdragen aan dit script dan vind ik dat ook prima! Het script is gewoon open!

Ben op het moment bezig met een nieuwe versie die ook mod_security voor je configureert

Randy
20/04/13, 12:25
6) Temp Partitie maken
Bij sommige servers zijn er geen temp partities aanwezig dus heb ik dat in dit script gebouwd, hij maakt automatisch een temp partitie in en schrijft het ook in de fstab.

parameter: ./da_maint.sp tmpmount

Gebruik tmpfs. Makkelijker en vooral sneller bij veel kleine (sessie)bestanden omdat dit in het geheugen leeft. Het enige nadeel (of voordeel) is dat je /tmp leeg is na een reboot. Debian/Ubuntu gebruikers weten niet beter, alleen EL laat voor zover ik weer zooi staan.
Combineer dit met een MySQL tweak zodat de tijdelijke tabellen (optimize acties) ook in geheugen komen in plaats van de trage disk en je kunt een behoorlijke boost krijgen. Daarnaast scheelt het ook nog eens de nodige trage IOPS, zeker bij SAN/NAS storage.

rzRDJ
20/04/13, 12:27
Gebruik tmpfs. Makkelijker en vooral sneller bij veel kleine (sessie)bestanden omdat dit in het geheugen leeft. Het enige nadeel (of voordeel) is dat je /tmp leeg is na een reboot. Debian/Ubuntu gebruikers weten niet beter, alleen EL laat voor zover ik weer zooi staan.
Combineer dit met een MySQL tweak zodat de tijdelijke tabellen (optimize acties) ook in geheugen komen in plaats van de trage disk en je kunt een behoorlijke boost krijgen. Daarnaast scheelt het ook nog eens de nodige trage IOPS, zeker bij SAN/NAS storage.

Bedankt voor de tip, ik zal het in de volgende versies updaten ;)

Randy
20/04/13, 12:50
Dat dus:


iMac:~ randy$ ssh shell.aklmedia.nl -l root cat /etc/fstab | grep /tmp
tmpfs /tmp tmpfs defaults,noatime,noexec,nosuid,size=2g 0 0

joriz
20/04/13, 13:13
Heb je al gekeken naar Easy Linux Security script (ELS : http://forum.directadmin.com/showthread.php?t=17070 )? Dat bestaat al en doet ongeveer hetzelfde.

rzRDJ
20/04/13, 13:46
Heb je al gekeken naar Easy Linux Security script (ELS : http://forum.directadmin.com/showthread.php?t=17070 )? Dat bestaat al en doet ongeveer hetzelfde.

Heb er even nagekeken maar die ziet er volgensmij wel gedateerd uit of ligt dat aan mij?

bibawa
21/04/13, 10:06
Misschien moet je het even op github plaatsen zodat andere er mee aan kunnen werken en er versiebeheer is.
Keep up the good work !

Tim Hartvelt
22/04/13, 09:28
Ziet er leuk uit, zoals bibawa al aangeeft is github misschien handig, kunnen we eventueel eens met je meekijken en hebben we geljik inzicht in de laatste versie ;-)

Piwi-Web
22/04/13, 10:10
Post @ Github. Wellicht dat er mensen zich geroepen voelen om ook mod_ruid e.d. in te bouwen.

Gert - Jan
23/04/13, 21:54
Hoi rzRDJ,

Ik vind het een goed script.
Via dit script is mijn hele server ook geïnstalleerd.
Alleen kwa wat de andere zeggen "post @ github" daar ben ik het wel mee eens.

Vriendelijke groet.

Gert-Jan

Bart L
10/05/13, 19:51
Leuk script, op Centos 5.9 wil ie niet meer...

da_maint: /lib64/libc.so.6: version `GLIBC_2.7' not found (required by da_maint)

IT-worX
11/05/13, 02:07
Netjes, ik kijk uit naar de updates!

Spyder01
11/05/13, 10:18
Leuk script, op Centos 5.9 wil ie niet meer...

da_maint: /lib64/libc.so.6: version `GLIBC_2.7' not found (required by da_maint)

Dat ligt niet aan het script, hier op CentOS 5.9 werkt het zonder problemen. Je moet even kijken welke libc.so.* je hebt en desnoods een symlink maken.

slibbe
26/11/13, 12:50
Wat is de status van dit script nu?