Test

Powershell zum zählen aller Listenelemente innerhalb einer WebApplication

Dieses PowerShell-Skript läuft durch alle Listen und Bibliotheken innerhalb einer WebApplication und schreibt die Ergebnisse (URL, Listenname, Anzahl der Elemente) in eine SharePoint-Liste.

#————————————————————————————————

#————————————————————————————————

# clear host and add PS-SnapIn

clear-host

Add-PSSnapin Microsoft.SharePoint.Powershell -ErrorAction SilentlyContinue

#————————————————————————————————

#————————————————————————————————

# list where the results will be written in

$DestSite = Get-SPWeb „SiteCollection der Zielliste“

$DestList = $DestSite.Lists[„Listenname“]

# Get all SiteCollections in your WebApplication

Get-SPSite -Limit All | % {$webs += $_.Allwebs}

# check if site is empty

if($webs.count -ge 1)

{

# loop through all SiteCollections and load the lists

ForEach($Web in $webs)

{

$lists = $web.Lists
# loop through all lists an load SiteCollection, List Name, and current number of items

ForEach ($list in $lists)

{

# check if current number of items is greater then 10000

if ($list.ItemCount -gt 10000)

{

$newItem = $DestList.Items.Add()
$newItem[„Site Collection“] = $Web.Url

$newItem[„List Name“] = $list.Title

$newItem[„Current Items“] = $list.ItemCount
$newItem.Update()

}

}

}

}

#————————————————————————————————

#————————————————————————————————

Powershell MD5 Hash erstellen

Um einen MD5 HAsh aus einen String zu berechenen kann man in Powershell folgende Funktion benutzen:

Function Get-StringHash([String] $String,$HashName = „MD5“)
{
$StringBuilder = New-Object System.Text.StringBuilder
[System.Security.Cryptography.HashAlgorithm]::Create($HashName).ComputeHash([System.Text.Encoding]::UTF8.GetBytes($String))|%{
[Void]$StringBuilder.Append($_.ToString(„x2“))
}
$StringBuilder.ToString()
}

$md5inputString = „Hallo WELT“

$TEXTMD5 = Get-StringHash($md5inputString)

Workflow für jedes Element einer Liste starten

Wird ein Sharepoint Workflow verändert, ist es oft sehr mühselig diesen für jedes Element einer Liste auszuführen. Man müsste jedes einzelne Element seperat anklicken und den Workflow manuell starten. Dies ist bei größeren Listen nicht mehr praktikabel.

Hier kann das folgende Skript helfen:

 

Deaktivieren der Upgradeleiste 2010 auf 2013

Um die Statusleiste:

Erleben Sie alles, was SharePoint 2013 zu bieten hat. Jetzt starten oder Später erinnern

in allen 2010er Site Collections zu deaktivieren benutzt man folgenden Powershellcode:

$webAppUrl = „http://intranet„; # Deine Web Applikation URl!
Get-SPSite -Limit All -CompatibilityLevel 14 -WebApplication $webAppUrl | % { $_.AllowSelfServiceUpgrade = $false; $_.AllowSelfServiceUpgradeEvaluation = $false;}

Debian Mailserver Howto

Debian Mailserver Howto 1
Dieses Howto befasst sich mit der Einrichtung eines Standalone Mailservers unter Debian GNU/Linux 4.0 unter Verwendung der folgenden Software:

Postfix, Spamassassin, Procmail, Courier-IMAP/POP3, Squirrelmail(optional)

1. Installation der Pakete

Zur Installation der benötigten Pakete bedienen wir uns dem Befehl apt-get.

Code:

Die Nachfrage, bei der Installation, über das anlegen einer www-Administrationsoberfläche können sie getrost mit „Nein“ beantworten.
Als Postfix Konfigurationsart entscheiden wir uns für „Internet-Server“.
Der Mailname des Systems sollte unbedingt der FQDN ihres Servers sein.

2. Konfiguration von Postfix

Nach erfolgreicher Installation der Pakete geht es nun an die Konfiguration von Postfix. Postfix ist der Mail Transfer Agent und wird für jede „Fremdkommunikation“ zuständig sein. Wir werden Postfix so konfigurieren, dass es Mails für mehrere Domains entgegen nimmt.
Öffnen sie die Datei /etc/postfix/main.cf mit einem Editor ihrer Wahl und übernehmen sie das Listing:

Code:

Damit ist die Konfiguration von Postfix abgeschlossen, überprüfen sie die Syntax mittels

Code:

Kommt keine Ausgabe, ist alles in Ordnung und sie können Postfix per

Code:

die neue Konfiguration beibringen.

Jetzt müssen wir Postfix noch kurz beibringen, wie es auf SASL zur Authentifizierung zugreifen kann.
Dazu legen wir die Datei /etc/postfix/sasl/smtpd.conf mit folgendem Inhalt an:

Code:

3. Konfiguration der virtuellen Domains

Legen sie die Dateien /etc/postfix/virtual_alias und /etc/postfix/virtual_domains an.
Editieren sie die zuerst die Datei virtual_domains mit einem beliebigen Editor.
Speichern sie in der Datei alle ihre Domains durch Kommata getrennt. Zeilenumbrüche sind erlaubt.

Eine virtual_domains Datei könnte z.B. so aussehen:

Code:

Als nächstes bearbeiten wir die Datei virtual_alias. Öffnen sie auch diese Datei mit einem beliebigen Texteditor. Das Format dieser Datei ist im Vergleich zur virtual_domains Datei höchst kompliziert. Es müssen Paare aus Quelle und Ziel(en) gebildet werden. Auf der linken Seite steht die volle Adresse, z.B. test@domain1.de und durch ein Leerzeichen oder einen Tabulatorvorschub getrennt das Ziel, z.B. das Postfach des Benutzers user1. Das sähe dann so aus:

Code:

Sie können einer Adresse auch mehrere Empfänger zuordnen. Dazu trennen sie die Empfänger wieder mit Kommata, z.B. so:

Code:

Wie sie in diesem Beispiel sehen, können sie die Mails auch an eine andere Mailadresse weiterleiten.
Nachdem die Datei fertiggestellt wurde, speichern sie diese und konvertieren Sie sie in das Datenbankformat von Postfix mittels:

Code:

Anschließend führen sie erneut eine Konfigurationüberprüfung durch:

Code:

Alles Okay? Dann laden sie die Konfiguration neu:

Code:

Weiter mit der Einrichtung von Courier.

3. Die Einrichtung von Courier

Das war’s auch schon

4. Konfiguration von SASL

Als erstes müssen wir SASL „aktvieren“, da es nach der Installation standardmäßig deaktiviert ist. Dazu öffnen wir die Datei /etc/default/saslauthd mit einem beliebigen Editor.

Die Zeile

Code:

muss in

Code:

geändert werden.
Anschließend sollte die Zeile

Code:

in

Code:

geändert werden. Dies ist nötig, da Postfix in einem Chroot-Käfig läuft und auf den Standardsocket von SASL nicht zugreifen kann!
Im Chroot-Käfig von Postfix fehlen ein paar Ordner, diese können wir von dpkg erzeugen lassen:

Code:

Nun fügen wir noch Postfix zur Gruppe Sasl hinzu, damit ersteres auch auf letzteres zugreifen kann

Code:

Anschließend kann der saslauthd gestartet werden:

Code:

Fertig. Die SMTP-AUTH sollte nun laufen.

5. Squirrelmail einrichten

Squirrelmail ist ein IMAP-Webclient.
Um Squirrelmail zu aktivieren, müssen wir einen Symlink setzen.

Code:

Apache2 berücksichtigt alle Konfigurationsdateien im Ordner /etc/apache2/conf.d. Die Datei apache.conf konifguriert Apache2 so, dass ein Zugriff auf Squirrelmail möglich ist.
Nach einem Restart von Apache2 ist Squirrelmail sofort verfügbar.

Code:

Squirrelmail ist nun einsatzbereit und unter

http://$FQDN/squirrelmail

verfügbar.

6. Einrichtung von Spamassassin

Als erstes aktivieren wir Spamassassin, da auch dieses bei der Standardinstallation deaktviert ist. Dazu bearbeiten wir die Datei /etc/default/spamassassin mit einem beliebigen Texteditor.
Ändern sie die Zeile

Code:

in

Code:

und starten sie Spamassassin anschließend:

Code:

Ich werde hier nicht sehr detailliert auf die Konfiguration von Spamassassin eingehen, da dies den Rahmen dieses Howtos erheblich sprengen würde.

Erstellen wir Razor Account

Code:

Wenn beim Erstellen des Kontos Fehler auftreten, ist es eventuell notwendig es mehrfach zu versuchen, da der Server eventuell ausgelastet ist.

Anschließend editieren wir /root/.razor/razor-agent.conf wieder mit einem Texteditor und setzen den Debuglevel auf Null.

nun bearbeiten wir die Konfigurationsdatei von Spamassassin (/etc/spamassassin/local.cf) mit einem Texteditor.
Hängen Sie die folgenden Zeilen an die Datei an:

Code:

Mit dem letzten Parameter werden sie vermutlich ein wenig rumspielen wollen, da die Einstufung ob eine Mail Spam ist oder nicht, von ihnen und nicht von mir abhängt.

Anschließend muss Spamassassin noch neugestartet werden:

Code:

Die Konfiguration von Spamassassin ist damit abgeschlossen.
Natürlich lässt sich dort noch eine ganze menge verfeinern, ich empfehle dazu das Buch „Spamassassin – Leitfaden zu Konfiguration, Integration und Einsatz“ von Alistair McDonald aus dem Addison-Wesley Verlag.

7. Konfiguration von Procmail als Mailfilter

Da Spamassassin die Mails nur markiert, sie jedoch nicht sortiert, müssen wir hierzu ein weiteres Programm bemühen. Procmail ist ein sehr flexibler Mailfilter. Ich werde hier nur kurz zeigen, wie man damit Spammails sortieren kann und alle Mails an Spamassassin weiter reicht.

Damit unsere Mails überhaupt von Spamassassin geprüft werden, müssen wir unsere Mail dorthin weiterleiten, dazwischen befindet sich Procmail als zentrale „Steuerstelle“ der Mails.
Diese Kette schaut dann so aus:
Postfix -> Procmail -> Spamassassin -> Procmail -> Mailbox

Als erstes legen wir für alle Benutzer, deren Mails geprüft werden sollen eine .forward-Datei im jeweiligen Heimatverzeichnis an.
Hier der Inhalt:

Code:

Dies sorgt dafür, dass alle Mails durch eine sogenannte Pipe an Procmail geleitet werden. Nun ist es an der Zeit Procmail zu konfigurieren. Dazu benötigt jeder Benutzer eine .procmailrc Datei in seinem Heimatverzeichnis. Der Inhalt:

Code:

Procmail wird angewiesen folgendes zu tun:
Als erstes wird jede Mail an /usr/bin/spamc (also Spamassassin) geleitet und von diesem gescannt. Als nächstes wird das Ergebnis des Scans überprüft. Ist im Mailheader die Zeile

Code:

zu finden, so wird die Mail in den Ordner Junk einsortiert.
Alle weiteren Mails landen ganz normal im Maildir.

8. Schlusswort

Ich hoffe ich konnte ihnen einen guten Einblick in die Konfiguration eines Mailservers unter Debian GNU/Linux 4.0 bieten und gebe hiermit sämtliche Rechte an diesem Werk ab, insofern sie nicht kommerziell genutzt werden.

© Copyleft 2007 by Oliver H.