Systeembeheer :)

Hardware disablen onder Windows vanaf de commandline

Door Tomba op dinsdag 22 oktober 2013 14:38 - Reacties (10)
Categorie: Systeembeheer, Views: 3.376

Als beheerder loop je soms tegen zaken aan, waar je vantevoren geen rekening mee houdt. Laatst liep ik er tegenaan dat op nieuwe PC's alle drivemappings onder I: (Dus E:, F,: G: en H:) niet werkten. Na enige onderzoek kwam ik er achter dat de cardreader die in dat apparaat zat 4 driveletters voor zichzelf reserveerde, ook als er geen kaartje in zat. Omdat ik ťn geen zin had om alle PC's (100+) handmatig in te stellen ťn ik in de automatisering werk heb ik dit met een script en het programma 'DevCon' opgelost :)

1. Zoek in de devicemanager de naam van het device op (in onze computers heet het Multiple Card Reader USB Device'
2. Run devcon64.exe find [beginvandevicenaam]*

code:
1
devcon64.exe find Multiple*


Dit geeft als uitvoer:
USBSTOR\DISK&VEN_MULTIPLE&PROD_CARD__READER&REV_1.00\058F63666433&0: Multiple Card Reader USB Device
1 matching device(s) found.
3. Run devcon64.exe disable [hardwareID]
In dit voorbeeld dus devcon64.exe disable USBSTOR\DISK&VEN_MULTIPLE&PROD_CARD__READER&REV_1.00\058F63666433&0:

Use Checkpoint Mobile Access blade on Ubuntu

Door Tomba op donderdag 26 september 2013 12:12 - Reacties (4)
CategorieŽn: Linux, Systeembeheer, Views: 2.129

Bij mijn werkgever hebben we recentelijk onze Nokia IP350 vervangen door een cluster van Checkpoint 4400's. Een van de leukste onderdelen van deze nieuwe firewalls is de Mobile Access Blade. Via een moderne browser kun je dan een beveiligde VPN connectie opzetten zonder dat daarbij een 'fat client' geinstalleerd hoeft te worden. Erg praktisch dus als je niet thuis bent of je zakelijke laptop niet bij hebt.
Het geval wil dat wij ook een aantal mensen hebben die thuis Linux gebruiken (specifieker Ubuntu), hierop bleek de VPN oplossing wat minder 'out of the box' te werken dan onder Windows. Onderstaand vind je mijn uitzoekwerk op dit vlak :)
  1. Make sure Ubuntu is completely up to date and then install the following requisites
    • ia32-libs*
    • libpam0g:i386
    • openjdk-6-jre
    • openjdk-6-jdk
    • icedtea-plugin
    By running:
    sudo apt-get install ia32-libs libpam0g:i386 openjdk-6-jre openjdk-6-jdk icedtea-plugin

    *Ubuntu 13.10 AMD64 no longer supports the installation of ia32-libs, you have to apt-get install
    • libxi6:i386
    • libstdc++5:i386
    to make it work
  2. Start firefox as root by running sudo firefox in your terminal
  3. Log in with your Username and password
  4. After logging in click Connect

    http://tweakers.net/ext/f/2EdmVOWHU3qoZIfAkLj79tUK/full.png
  5. Toggle ‘Always trust content from this publisher’ and click Run

    http://tweakers.net/ext/f/LLMELmpmAnozZuz6cUreT9gn/full.png
  6. Select ‘Trust Server’

    http://tweakers.net/ext/f/uzIL4P4yj24x1ijGuoxkcKtG/full.png
  7. Click Yes

    http://tweakers.net/ext/f/l81tP5hKVmqZAboVkii0q652/full.png
  8. Connected!

    http://tweakers.net/ext/f/hYSwlkev1Y24Nraghsg0ACQb/full.png
E.e.a. is getest door ondergetekende met Ubuntu 12.04, 12.10, 13.04 en 13.10. Mocht je het niet werkend krijgen kijk dan goed naar de tekst die verschijnt in de terminal waar vanuit Firefox gestart is. Eventuele fouten kun je hier terugvinden. Waarschijnlijk ligt het probleem bij de Linux VPN client die bepaalde dependancies mist. Mbv sudo ldd /usr/bin/snx kun je controleren welke dat zijn.

Programma's unpinnen via script onder Windows

Door Tomba op dinsdag 27 augustus 2013 09:43 - Reacties (14)
Categorie: Systeembeheer, Views: 4.395

Windows 7 heeft de mogelijkheid geintroduceerd om vaak gebruikte programma's vast te pinnen aan
het start menu, zodat je sneller toegang hebt tot deze programma's. Als Systeembeheerder wil je echter niet altijd de standaardkeuze van Microsoft volgen, zo vind ik het erg lelijk dat de Mediaplayer (die bij ons op de zaak bij gebrek aan geluidskaarten in de PC's toch niet te gebruiken is) standaard vastgemaakt zit aan het startmenu bij een nieuwe gebruiker. Gelukkig kan dit vrij simpel opgelost worden mbv een VBS script.

Omdat unpinnen alleen mogelijk is als de snelkoppeling naar het programma in het startmenu staat moet deze echter eerst in het startmenu gekopieerd worden: (in dit voorbeeld heeft de GPO ID 096FF540-DC75-4038-9B32-09DB2E764F32, ik heb de Windows Media Player.lnk in de betreffende Scripts map geplaatst. Het startmenu van de eindgebruikers bevindt zich op de server \\fileserver) Hiervoor gebruik ik een batch file:


code:
1
2
3
4
5
6
@echo off
Echo Copying Windows Media Player Shortcut to Start Menu
copy "\\nl.contoso.com\SysVol\nl.contoso.com\Policies\{096FF540-DC75-4038-9B32-09DB2E764F32}\User\Scripts\Logon\Windows Media Player.lnk" "\\fileserver\personal$\%username%\Startmenu\Programs"

Echo Unpinning Windows Media Player
cscript "\\nl.contoso.com\SysVol\nl.contoso.com\Policies\{096FF540-DC75-4038-9B32-09DB2E764F32\User\Scripts\Logon\Unpin_Mplayer.vbs



De aangeroepen VBS

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Option Explicit

Const CSIDL_STARTMENU = &HB
Const CSIDL_COMMON_PROGRAMS = &H17

Dim objShell, objFSO
Dim objCurrentUserStartFolder
Dim strCurrentUserStartFolderPath
Dim objAllUsersProgramsFolder
Dim strAllUsersProgramsPath
Dim objFolder
Dim objFolderItem
Dim colVerbs
Dim objVerb

Set objShell = CreateObject("Shell.Application")
Set objFSO = CreateObject("Scripting.FileSystemObject")

Set objCurrentUserStartFolder = objShell.NameSpace (CSIDL_STARTMENU)
strCurrentUserStartFolderPath = objCurrentUserStartFolder.Self.Path

Set objAllUsersProgramsFolder = objShell.NameSpace(CSIDL_COMMON_PROGRAMS)
strAllUsersProgramsPath = objAllUsersProgramsFolder.Self.Path

If objFSO.FileExists(strCurrentUserStartFolderPath & "\Programs\Windows Media Player.lnk") Then
    wscript.echo "We MOve"
    Set objFolder = objShell.Namespace(strCurrentUserStartFolderPath & "\Programs")
    Set objFolderItem = objFolder.ParseName("Windows Media Player.lnk")
    Set colVerbs = objFolderItem.Verbs
    For Each objVerb In colVerbs
        wscript.echo objverb
        If Replace(objVerb.name, "&", "") = "Unpin from Taskbar" Then objVerb.DoIt
            If Replace(objVerb.name, "&", "") = "Van de taakbalk losmaken" Then objVerb.DoIt
    Next
End If



Uiteraard kan eea aangepast worden om juist te pinnen ipv unpinnen of om andere programma's op deze wijze te unpinnen.

Ads blocken met je eigen DNS server (2)

Door Tomba op dinsdag 27 augustus 2013 09:27 - Reacties (3)
CategorieŽn: Linux, Systeembeheer, Views: 3.170

In een vorige blogpost heb ik al uit de doeken gedaan hoe ik er thuis voor zorg dat onze internet ervaring zo reclamevrij mogelijk is. Aangezien ik zelf echter in de automatisering werk en er toch nog wat handwerk in deze versie zat, daarom (met dank aan de post van gjs! ) een verfijning. Een script, dat (via een cronjob) dagelijks checked of er een nieuwere versie is van de MVPS Host File en deze omzet naar een zonefile waar Bind ook wat mee kan:

code:
1
2
3
4
5
6
7
8
9
10
# Automatic ad blacklist by Tomba based on Gjs script (http://tomba.tweakblogs.net/blog/9171/ads-blocken-met-je-eigen-dns-server.html#r_127502 )

# Make backup of current zone file
cp /etc/bind/adservers /etc/bind/adservers.backup

# Get newest MVPS HOSTS File Update and write it to /etc/bind/adservers
curl -s http://winhelp2002.mvps.org/hosts.txt |grep -v localhost| grep ^127.0.0.1 |awk '{print $2}' |awk '{ sub(/\r$/,""); print "zone \""$0"\" { type master; notify no; file \"null.zone.file\"; };" }' > /etc/bind/adservers

# Restart Bind to make sure it picks up the new zonefile
service bind9 restart



Voor de mensen die niet helemaal thuis zijn in Linux, bovenstaande code in een bestand zetten en dan uitvoerbaar maken mbv chmod +x. (in dit voordeel heb ik het script update_adservers
in /etc/bind staan)

code:
1
chmod +x /etc/bind/update_adservers



In cron (aanpassen via crontab -e):

code:
1
0 0 * * *  /etc/bind/update_adservers


Hiermee wordt het script iedere dag om middernacht aangeroepen :)

Ads blocken met je eigen DNS server

Door Tomba op dinsdag 16 juli 2013 09:37 - Reacties (39)
CategorieŽn: Linux, Systeembeheer, Views: 10.280

Na wederom een nu.nl adserver hack was ik het eigenlijk wel zat, ik heb direct een adblocker geinstalleerd. Toch viel het mij op dat er nog regelmatig wat doorkwam en op bv mijn Surface bleven ads binnen komen. Dat moet beter kunnen!

Enter Bind! Bind is een DNS server die op o.a. Linux draait en aangezien ik al een Ubuntu machine heb draaien met daarop een DNS server (tbv interne resolving) vond ik het een mooie uitdaging om de adservers al bij de DNS server te blocken mbv de Ad hostfile van http://msmvps.com/blogs/hostsnews/default.aspx.

In deze instructie ga ik er vanuit dat je al een werkende BIND DNS server hebt draaien, die valt dus buiten scope.

Stap 1.
Ga naar http://winhelp2002.mvps.org/hosts.txt en kopieer alle data
http://tweakers.net/ext/f/cMpa63Wu1nQIWxTss70Vz1YU/full.png
Stap 2.
ga naar http://pgl.yoyo.org/as/hosts2bind.php en plak hier de hosts file uit stap 1 in om hem om te zetten naar Bind formaat. Haal wel even alles t/m # [Misc A-Z] weg!
http://tweakers.net/ext/f/HkoVQuISdUVpFGAD8oAcqkkV/full.png
Stap 3.
Kopieer het resultaat en plak deze in notepad
http://tweakers.net/ext/f/PRefQqYSvULlpmBMMBz2V6iZ/full.png
Stap 4.
Search and Replace (CTRL-H) { type door IN { type (anders accepteert Bind de gegevens niet)
http://tweakers.net/ext/f/ktLnnBWjj1CYLIe3MGZjOxto/full.png
En haal de localhost entry weg
http://tweakers.net/ext/f/xZPPjC1we8MuLxRAauhoanV3/full.png
Stap 5.
Maak een zone file aan voor de Adservers (ik gebruik /etc/bind/adservers)
http://tweakers.net/ext/f/mcM6gMoVzuBYOzZFW4wp0di4/full.png
Stap 6.
Plak hier het resultaat van stap 4 in en sla het bestand op
http://tweakers.net/ext/f/SHKtabTeQYUTJ8VFQ5cTHnFm/full.png
Stap 7.
Pas /etc/bind/named.conf.local aan en include de file /etc/bind/adservers
http://tweakers.net/ext/f/W2jwXHSOcQos6MvOjVA3yngM/full.png
Stap 8.
Maak het bestand /etc/bind/null.zone.file aan en zet hier de volgende data in:
$TTL 86400 ; one day

@ IN SOA [servernaam.localdomain]. hostmaster.[localdomain]. (
2002061000 ; serial number YYMMDDNN
28800 ; refresh 8 hours
7200 ; retry 2 hours
864000 ; expire 10 days
86400 ) ; min ttl 1 day
NS [servernaam.localdomain]

A [IP Adres van je BINDserver]

@ IN A 127.0.0.1
* IN A 127.0.0.1
Voor [servernaam.localdomain] voer je de naam en het locale domein in van je bind server
http://tweakers.net/ext/f/VBDGGD7E0FFZs1u3zKEc4riY/full.png
http://tweakers.net/ext/f/Ltuk6kaS6gQQyjd50XaOV72s/full.png
Stap 9.
Herstart Bind mbv het commando 'service bind9 restart'
http://tweakers.net/ext/f/UQlloMdT3OlnzgtU8C7QT96W/full.png
Stap 10.
Test :)
http://tweakers.net/ext/f/sinZ5eNQ716oO0ftUaHZNbE2/full.png

En hoe ziet het er dan uit?
http://www.hemmy.net/2006...sements-around-the-world/ :
http://tweakers.net/ext/f/nMS8OotFTCIdRynb3Efudw9v/full.png
ipv
http://tweakers.net/ext/f/g3jle2w2HPPtTMBMlPdcuOqN/full.png

nu.nl:
http://tweakers.net/ext/f/Gz5LBgkeQasQssCBsMGzGPlo/full.png
ipv
http://tweakers.net/ext/f/WdU92zrF2swgr4zwR3quzfS9/full.png

[Update]
Inmiddels heb ik er een tweede post aan besteed: Tomba's Hideout: Ads blocken met je eigen DNS server (2)