Hi an @lle,
ich hab ein kleines Skript gebastelt, welches mit Hilfe von NAI den Port 80 dicht macht. Da ich an Schulen tätig bin ist das sehr gefragt
Ihr benötigt eine Freigabe und NAI 8 um das Tool zu nutzen, bzw. zu testen. Ich bin über jede Verbesserung froh, ich bin relativ frisch in AutoIT was sicherlich an manch einem Umständlich Programmierten Teil festgestellt wird.
Sporatischer Installer
Spoiler anzeigen
;EDU Pad GUI
;(c) Copyright 2006 by hessebou
;-----------------------------------------------------
;Dieses Programm ermöglicht das Sperren des Internets. Dies wird über die Blockierung des Ports 80 im McAfee Virenscanner realisiert
;-----------------------------------------------------
$version = "BETA 1.0"
[/autoit] [autoit][/autoit] [autoit];Einbinden der Dateien
#include <GUIConstants.au3>
#include <file.au3>
;EDU Pad GUI Anfang
GUICreate("EDU Pad",600,420)
;========================================= IBLOCKER =============================================
;================================================================================================
;Tab für IBlocker
$tabi=GUICtrlCreateTab (1,1, 600,417)
$tab0=GUICtrlCreateTabitem ("IBlocker")
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit];Beginn der Eingabemaske
GUICtrlCreateLabel("Installationspfad",10,35)
$ipfad = GUICtrlCreateInput("",100,30,200,20);Dient für FileCopy weiter unten
GUICtrlCreateLabel("UNC-Pfad",10,65)
$unc = GUICtrlCreateInput("",100,60,200,20);Dient für FileCopy weiter unten
GUICtrlCreateLabel("Raum",10,95)
$raum = GUICtrlCreateInput("",100,90,100,20);Dient zur Namensgebung der txt-Datei und anlegen eines Unterorndners
GUICtrlCreateLabel("PCs",10,125)
$pcs = GUICtrlCreateEdit("",100,120,200,200);Eingabe der Computernamen welcher betroffen sind
;GUICtrlCreateLabel("LoginSkript Pfad",10,435)
;$login = GUICtrlCreateInput("",100,430,200,20);Pfad und Dateiname des LoginScriptes welches editiert werden soll
GUICtrlCreateLabel("Account",400,35)
$account = GUICtrlCreateInput("",480,30,100,20);Account der Zugriff auf REG und Share hat
GUICtrlCreateLabel("Passwort",400,65)
$passwort = GUICtrlCreateInput("",480,60,100,20);Passwort für Account
GUICtrlCreateLabel("Domäne",400,95)
$domaene = GUICtrlCreateInput("",480,90,100,20);Mitgliedsdomäne des Accounts
;Radiobuttons für OS Auswahl
GUICtrlCreateLabel("Zielbetriebssystem",400,140)
$winxp = GUICtrlCreateRadio ("Windows XP", 400, 180, 120, 20)
GUICtrlSetState ($winxp,$GUI_CHECKED)
$win2k = GUICtrlCreateRadio ("Windows 2000", 400, 200, 120, 20)
$winnt = GUICtrlCreateRadio ("Windows NT4", 400, 220, 120, 20)
;Explorermenu
$filemenu = GUICtrlCreateMenu ("Datei")
$infomenu = GUICtrlCreateMenu ("?")
$infoitem = GUICtrlCreateMenuitem ("Info",$infomenu)
$exititem = GUICtrlCreateMenuitem ("Exit",$filemenu)
GUICtrlSetState(-1,$GUI_CHECKED)
$okbutton = GUICtrlCreateButton ("Einrichten",400,330,70,20)
GUICtrlSetState(-1,$GUI_FOCUS)
$cancelbutton = GUICtrlCreateButton ("Abbrechen",490,330,70,20)
;========================================= KLASSENARBEITSMODUS===================================
;================================================================================================
$tab1=GUICtrlCreateTabitem ("Klausurmodus")
;======================== AUSLESEN DER GUI ================================
;==========================================================================
GUISetState ()
While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Or $msg = $cancelbutton Or $msg = $exititem Then ExitLoop
If $msg = $infoitem Then Msgbox(0,"Info","IBlocker V. " & $version & @CRLF & "(C) Copyright by XXX")
If $msg = $okbutton Then
;Auslesen der Variablen aus der Eingabemaske
$ipfad_read = GUICtrlRead($ipfad)
$unc_read = GUICtrlRead($unc)
$raum_read = GUICtrlRead($raum)
$pcs_read = GUICtrlRead($pcs)
;$login_read = GUICtrlRead($login)
$account_read = GUICtrlRead($account)
$passwort_read = GUICtrlRead($passwort)
$domaene_read = GUICtrlRead($domaene)
$winxp_read = GUICtrlRead($winxp)
;Anlegen der Unterordner für den Raum und kopieren der Files aus .\bin
DirCreate($ipfad_read)
DirCreate($ipfad_read & "\IBlocker\aktivieren")
DirCreate($ipfad_read & "\IBlocker\deaktivieren")
DirCreate($unc_read & "\" & $raum_read)
FileCopy(".\bin\IBlocker_ak.reg", $unc_read & "\" & $raum_read &"\")
FileCopy(".\bin\IBlocker_de.reg", $unc_read & "\" & $raum_read &"\")
FileCopy(".\bin\EDU_Pad.exe", $ipfad_read & "\")
FileCopy(".\bin\103.ico", $ipfad_read & "\")
;FileCopy(".\bin\IBlocker_ak.reg", $unc_read & "\bin");REG für LoginScript auf Share legen
;FileCopy(".\bin\IBlocker_de.reg", $unc_read & "\bin")
;Kopieren der PsExec Datei in das jeweilige OS Verzeichnis
If $winxp_read = 1 Then
FileCopy (".\bin\psexec.exe", "C:\Windows\System32\psexec.exe")
FileCopy (".\bin\MachLink.exe", "C:\Windows\System32\MachLink.exe")
FileCopy (".\bin\cmdow.exe", "C:\Windows\System32\cmdow.exe")
Else
FileCopy (".\bin\psexec.exe", "C:\Winnt\System32\psexec.exe")
FileCopy (".\bin\MachLink.exe", "C:\Winnt\System32\MachLink.exe")
FileCopy (".\bin\cmdow.exe", "C:\Winnt\System32\cmdow.exe")
EndIf
;Erzeugen der computer.txt Datei für PsExec
$file = FileOpen($ipfad_read & "\" & $raum_read &".txt",1)
FileWrite($file, $pcs_read)
If $file = -1 Then
MsgBox(0, "Error", "Konnte Datei nicht öffnen.")
Exit
Else
FileClose($file)
EndIf
;Erzeugen der Batch Dateien für PsExec
;IBlocker_ak.cmd
$iblocker_ak = FileOpen($unc_read & "\" & $raum_read &"\IBlocker_ak.cmd",1)
FileWrite($iblocker_ak, "REGEDIT /S "& $unc_read & "\"& $raum_read & "\IBlocker_ak.reg")
;IBlocker_de.cmd
$iblocker_de = FileOpen($unc_read & "\" & $raum_read &".\IBlocker_de.cmd",1)
FileWrite($iblocker_de, "REGEDIT /S "& $unc_read & "\"& $raum_read & "\IBlocker_de.reg")
;Aktivieren der Sperre
dim $array
_FileReadToArray($ipfad_read & "\" & $raum_read &".txt",$array) ;Alles in ein Array einlesen
for $i=1 to $array[0]
$remote_ak=FileOpen($ipfad_read & "\IBlocker\aktivieren\" & $array[$i] & "_ak.cmd",2) ;Für jede enthaltenes Element im Array ein File erzeugen mit desen Namen
FileWriteLine($remote_ak, "cmdow @ /HID"&@CRLF&"cd "& $ipfad_read &"\" & @CRLF & "psexec.exe \\"& $array[$i] & " -u " & $domaene_read &"\"& $account_read & " -p " & $passwort_read & " -i -c -f " & $unc_read & "\" & $raum_read &"\IBlocker_ak.cmd"&@CRLF&"exit")
FileClose($remote_ak)
Next
;Deaktivieren der Sperre
dim $array
_FileReadToArray($ipfad_read & "\" & $raum_read &".txt",$array) ;Alles in ein Array einlesen
for $i=1 to $array[0]
$remote_de=FileOpen($ipfad_read & "\IBlocker\deaktivieren\" & $array[$i] & "_de.cmd",2) ;Für jede enthaltenes Element im Array ein File erzeugen mit desen Namen
FileWriteLine($remote_de, "cmdow @ /HID"&@CRLF&"cd "& $ipfad_read &"\" & @CRLF & "psexec.exe \\"& $array[$i] & " -u " & $domaene_read &"\"& $account_read & " -p " & $passwort_read & " -i -c -f " & $unc_read & "\" & $raum_read &"\IBlocker_de.cmd"&@CRLF&"exit")
FileClose($remote_de)
Next
;Erzeugen der Startdatei zum Aufrufen der Sperrfunktion
;Aktivieren
dim $array
_FileReadToArray($ipfad_read & "\" & $raum_read &".txt",$array) ;Alles in ein Array einlesen
for $i=1 to $array[0]
$start_ak=FileOpen($ipfad_read & "\IBlocker\start_ak.cmd",2) ;Für jede enthaltenes Element im Array ein File erzeugen mit desen Namen
FileWriteLine($start_ak, "start " & $ipfad_read & "\IBlocker\aktivieren\" & $array[$i] & "_ak.cmd")
FileClose($start_ak)
Next
;Deaktivieren
dim $array
_FileReadToArray($ipfad_read & "\" & $raum_read &".txt",$array) ;Alles in ein Array einlesen
for $i=1 to $array[0]
$start_ak=FileOpen($ipfad_read & "\IBlocker\start_de.cmd",2) ;Für jede enthaltenes Element im Array ein File erzeugen mit desen Namen
FileWriteLine($start_ak, "start " & $ipfad_read & "\IBlocker\deaktivieren\" & $array[$i] & "_de.cmd")
FileClose($start_ak)
Next
Exit
EndIf
WEnd
;Desktop Shortcut
FileCreateShortcut($ipfad_read & "\EDU_Pad.exe", @DesktopDir & "\EDU Pad.lnk", $ipfad_read, "", "", $ipfad_read & "\103.ico")
GUIDelete()
Exit
EDU Pad
Spoiler anzeigen
;IBlocker GUI
;(c) Copyright 2006 by hessebou
;-----------------------------------------------------
;Dieses Programm ermöglicht das Sperren des Internets. Dies wird über die Blockierung des Ports 80 im McAfee Virenscanner realisiert
;-----------------------------------------------------
$version = "BETA 1.0"
[/autoit] [autoit][/autoit] [autoit];Einbinden der Dateien
#include <GUIConstants.au3>
#include <file.au3>
;IBlocker GUI Anfang
GUICreate("EDU Pad",200,200)
;Explorermenu
$infomenu = GUICtrlCreateMenu ("?")
$infoitem = GUICtrlCreateMenuitem ("Info",$infomenu)
;Label zur Statusabfrage
GUICtrlCreateLabel("Internet ent-/sperren",10,20)
[/autoit] [autoit][/autoit] [autoit]GUICtrlSetState(-1,$GUI_CHECKED)
$sperren = GUICtrlCreateButton ("Internet sperren",3,80,95,50)
GUICtrlSetState(-1,$GUI_FOCUS)
$entsperren = GUICtrlCreateButton ("Internet entsperren",103,80,95,50)
GUISetState ()
While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
If $msg = $infoitem Then Msgbox(0,"Info","IBlocker V. " & $version & @CRLF & "(C) Copyright by XXX")
If $msg = $sperren Then
;$i = 1
;While $i > 0
run("IBlocker\start_ak.cmd")
;WEnd
EndIf
If $msg = $entsperren Then
;While
;$i = 1
run("IBlocker\start_de.cmd")
;WEnd
EndIf
WEnd
Bin über jeden Tipp froh. Das Pad soll noch ausgeweitet werden (Trennen von Netzlaufwerken, Sperren von Wechseldatenträgern etc.)
Ich hoffe es findet jemand Zeit und hat Lust mir tipps zugeben
Danke
Gruß
Marc
edit by Gun-Food: [ autoit] Tags eingefügt, zur besseren Lesbarkeit.