How to force Winrm to listen interfaces over HTTPS

Windows Remote Management (WinRM) is a protocol for Windows operating systems which is implemented as a web service and is used for secure remote management of systems. Following actions depends on WinRM configuration;

  • Windows Remote Shell command line tool
  • Winrs
  • Event Forwarding
  • Windows PowerShell 2.0 Remoting

WinRM service starts automatically on Windows Server 2008 but by default no listener for WinRM is configured. That means no WS-Management protocol message can be received or sent.

Default ports for WinRM 2.0 are;

HTTP: 5985

HTTPS: 5986

For those who are interested in PowerShell scripting, PowerShell remoting is a great and helpful feature which comes with 2.0 version. PsRemoting provides to execute powershell scripts on remote computers over WinRM protocol. Even you are in your local PowerShell console, you can run any scripts and these will be executed on remote computers. And each remote connection resides in a session that you can manage separately.

But be aware of that if you want to get some actions on a operating system that uses WinRM, you must configure  required prerequirements. In this blog post we’ll cover how to configure WinRM to work over HTTPS. So that for example you can execute your powershell scripts on remote computers over HTTPS with certificate based authentication. This will also help you to configure mutual authentication between untrusted computers that uses WinRM for communication.

For basic configuration, simply run WinRM qc(quickconfig) command.

image

This is a shortcut to configure winrm to work over http. Running this command takes following actions;

  • Creating a WinRM listener on HTTP://* for local networks.
  • Enabling firewall exceptions for WinRM

After you configure with QuickConfig command you can enumerate listener status;

image

As you see above, it listens over HTTP and for all network interfaces. But what we want is to configure HTTPS communication.

HTTPS communication requires certificate based authentication. For Windows Remote Management, each computer that will be managed with WinRM must have a Server Authentication certificate.

Most important point is that certificate must have a subject name same with computer netbios name(workgroup) or FQDN(domain joined). You can use Web Server Template in your certificate templates store. My suggestion is just duplicate your web server certificate and configure it as its private key exportable.

Now let’s request a certificate from local Certification Authority step by step.

image

Type your local CA URL in your browser and click Request a certificate.

image

Click  advanced certificate request.

image

image

Choose your custom Server Authentication template and fill up the fields.

Don’t forget to set Name field same as your computer name. If it’s a domain joined computer, type your fully qualified domain name. Otherwise netbios name will be enough.

image

When you click Install Certificate on your browser, certificate will be sent to Current User account store. We should export it with private key and then import to the computer account store again.

image
professional writing

image

image

image

image

image

image

image

Check your certificate Subject name if it matches with your computer name.

image

To configure WinRM over HTTPS we need Server Authentication certificate thumbprint.

Just open your certificate that you import earlier and note thumbprint details.

image

Now we can run following winrm command to create winrm listener and configure it to work with previously created certificate.

winrm create winrm/config/Listener?Address=*+Transport=HTTPS  @{Hostname=”serverfqdn”;CertificateThumbprint=”1fd53031caf98df226428069ccfdf3152b6ddc2b”}

image

Check for the ResourceCreated output.

Now lets enumerate listener again;

image

As you see above, listener sends and receives messages over HTTPS.

From now on, WinRM connections will be active.

If you try to start Remote PowerShell session between two computer that uses certificate based WinRM, you will notice that it opens and listens connections over port 5986.

image

image

As I mentioned before this method also can be used between a domain joined computer and workgroup computer. And please note that, If you don’t configure required authentication method, WinrM first tries to communicate over Kerberos.

765qwerty765

Exchange 2007 SP1 on gereksinimlerin Windows Server 2008 uzerine yuklenmesi

Windows Server 2008 üzerine Exchange Server 2007 SP1 yüklemeye karar verdiysek ilk önce server 2008 üzerinde birkaç hazırlık yapmamız gerekli.
İsterseniz tek tek bu hazırlıkları sıralayalım:

Client Access servers için Windows Server 2008 üzerinde yüklenmesi gerekenler:

Komut istemini açarak ilk önce Active Directory management tools’u yüklememiz gerekli.Bunun için aşağıdaki komutu kullanırız.
ServerManagerCmd -i RSAT-ADDS
Ardından PowerShell’i yüklememiz gerekli.Aslında server 2008 üzerinde powershell tümleşik geliyor fakat yüklü değildir.Bunun için aşağıdaki komutu kullanırız.
ServerManagerCmd -i PowerShell
ISS’i yüklemek için aşağıdaki komutları kullanırız:
ServerManagerCmd -i Web-Server
ServerManagerCmd -i Web-ISAPI-Ext
ServerManagerCmd -i Web-Metabase
ServerManagerCmd -i Web-Lgcy-Mgmt-Console
ServerManagerCmd -i Web-Basic-Auth
ServerManagerCmd -i Web-Digest-Auth
ServerManagerCmd -i Web-Windows-Auth
ServerManagerCmd -i Web-Dyn-Compression

Edge Transport servers için Windows Server 2008 üzerinde yüklenmesi gerekenler:

Komut istemini açarak ilk önce Active Directory management tools’u yüklememiz gerekli.Bunun için aşağıdaki komutu kullanırız.
ServerManagerCmd -i RSAT-ADDS
Ardından PowerShell’i yüklemek için aşağıdaki komutu kullanırız.
ServerManagerCmd -i PowerShell
Son olarak Active Directory Lightweight Directory Services’i yani önceki ismiyle ADAM’ı yükleriz.
ServerManagerCmd -i ADLDS

Hub Transport servers için Windows Server 2008 üzerinde yüklenmesi gerekenler:

Active Directory management tools’u yükleriz.
ServerManagerCmd -i RSAT-ADDS
Ardından PowerShell’i yüklemek için aşağıdaki komutu kullanırız.
ServerManagerCmd -i PowerShell

Mailbox servers için Windows Server 2008 üzerinde yüklenmesi gerekenler:

Active Directory management tools’u yükleriz.
ServerManagerCmd -i RSAT-ADDS
Ardından PowerShell’i yükleriz.
ServerManagerCmd -i PowerShell
Son olaran ISS’i yüklemek için aşağıdaki komutları kullanırız:
ServerManagerCmd -i Web-Server
ServerManagerCmd -i Web-ISAPI-Ext
ServerManagerCmd -i Web-Metabase
ServerManagerCmd -i Web-Lgcy-Mgmt-Console
ServerManagerCmd -i Web-Basic-Auth
ServerManagerCmd -i Web-Digest-Auth
ServerManagerCmd -i Web-Windows-Auth
ServerManagerCmd -i Web-Dyn-Compression

Eğer mailbox sunucumuz cluster yapısında olucaksa Failover Clustering özelliğinide yüklememiz gerekli.
ServerManagerCmd -i Failover-Clustering

Windows Server 2008 üzerinde tümleşik firewall

Windows Server 2008 ile birlikte gelen tümleşik firewall’da önemli geliştirmeler yapılmış.Bunun en önemli belirtiside Microsoft’un güvenlik duvarına verdiği “Windows Firewall with Advanced Security” ismidir.Gerçekten gelişmiş birçok özelliğiyle sistem yöneticilerine oldukça kolaylık sağlıyor.

Yeni arayüz ““ Artık gelişmiş firewall özelliklerini kontrol edebilmemiz için MMC snap’in ni kullanabiliriz..
Bi-directional ““ Gelen trafiği olduğu kadar giden trafiğide filtreleyebiliriz.
IPSEC ile uyum ““ Artık güvenlik duvarında oluşturduğumuz kurallar ve IPSEC konfigurasyonumuz tek bir arayüzde içiçe çalışabiliyor.
Gelişmiş kural konfigurasyonu ““ ICMP,IPv6,TCP/UDP,ip adresleri,protokol numaraları,active directory hesapları ve grupları için kurallar yaratabiliriz.

Bu özelliklerle birlikte bilgisayarımızda kullandığımız diğer firewall uygulamaların yerini tutacağa benziyor.En beğendiğim özelliği ise MMC konsolunu kullanarak yönetimi gerçekleştirebilmemiz.

Bir önceki sürümden en büyük farkı ise tümleşik gelen kural sayısı. (more…)

Server CORE uzerinde IIS7 kullanimi

Technet’te belirtildiği üzere Windows Server 2008 Core edition’da artık IIS 7 kullanabiliyoruz.Bildiğimiz gibi core versiyonda herhangi bir arayüz yok ve komut istemiyle tüm konfigurasyonları yapmamız gerekli.
İsterseniz CORE üzerinde IIS7 kullanımı ile ilgili komutlardan bahsedelim.

Server Core üzerine IIS7 yüklemek için:

Bunun için pkgmgr.exe komut aracını kullanırız.Varsayılan bir kurulumda
tart /w pkgmgr /iu:IIS-WebServerRole;WAS-WindowsActivationService;WAS-ProcessModel
komutu işimizi görücektir.
Full kurulum yapmak için ise
start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument; IIS-
komutunu kullanırız.

IIS7’yi kaldırmak için:

Yukarıdaki parametrelerde dikkat edersek iu kullandık.Uninstall işlemi içinde uu parametresini kullanabiliriz.
Start /w pkgmgr /uu:IIS-WebServerRole .. gibi

Server Core üzerine IIS7 kurulumu yaparsak hangi özelliklerden mahrum kalırız?

· IIS-ASPNET
· IIS-NetFxExtensibility
· IIS-ManagementConsole
· IIS-ManagementService
· IIS-LegacySnapIn
· IIS-FTPManagement
· WAS-NetFxEnvironment
· WAS-ConfigurationAPI

Server Core üzerine ASP yüklemek için:

Start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument;
IIS-DirectoryBrowsing;IIS-HttpErrors;IIS-ApplicationDevelopment;IIS-ASP;IIS-ISAPIExtensions;IIS-HealthAndDiagnostics;
IIS-HttpLogging;IIS-LoggingLibraries;IIS-RequestMonitor;IIS-Security;IIS-RequestFiltering;IIS-HttpCompressionStatic;
IIS-WebServerManagementTools;WAS-WindowsActivationService;WAS-ProcessModel

komutunu kullanırız.

Core üzerinde hangi özelliklerin yüklendiğini nasıl kontrol ederiz?

Regeditte HKEY_LOCAL_MACHINESoftwareMicrosoftInetSTPComponents anahtarının altında geçeriz.(regediti açmak için çalıştıra regedit.exe yazmamız yeterli)
0x00000001 değerine sahip DWORD anahtarında tüm yüklenen özellikleri görebiliriz.

Windows Server 2008 – Active Directory'deki degişikliler

Microsoft’tan Uday Hegde’nin belirttiğine göre Windows Server 2008 ile birlikte Active Directory üzerindeki birkaç değişiklik;

Güvenlik
# WS2008 ile birlikte Read Only Domain Controllers teknolojisi gelmiştir.(Bknz: RODC)

# Multiple password policies OUlar hariç kullanıcılara ve gruplara uygulanabilir hale getirilmiş.

Auditing
#Active Directory üzerinde geliştirilmiş auditing özellileri

Yönetilebilirlik
# Artık reboot işlemi gerekmeksizin dizin hizmetleri için yamaları uygulayabilir,offline defraglar gerçekleştirebiliriz.

# NTDSutil ile Active Directory üzerinde snapshot yaparak anlık kaydını alabilir ve dsamain.exe ile e restore edebiliriz.

# Protect object from accidential deletion checkboxunu kullanarak kaza ile OUlar’ın silinmesini engelleyebiliriz.

Read-Only Domain Controller (RODC)

Windows server 2008 ile gelen diğer hoş bir özellikte Read-Only Domain Controller (RODC) ‘dır.Adındanda anlaşılacağı gibi bildiğimiz Domain Controller sunuculardan tek farkı read-only olmasıdır.
Microsoft’un böyle bir seçenek sunmasının sebebi, güvenliğini sağlayamadığımız uzak lokasyonlardaki DC’lere bir alternatif oluşturmasıdır.
Örneğin İzmir şubemize forest altında bir dc yapılandırması yapmak istiyoruz.Böylece kullanıcıların kaynak erişimi,authentication işlemleri locallerindeki DC üzerinden yapılabilecek ve performans artışı sağlanacaktır.
Fakat aynı zamanda kuracağımız bu DC üzerindeki fiziksel güvenlik , bizim kafamızı kurcalıyor.İşte bu durumda izmir lokasyonuna RODC kurulumu yaparak kafamızdaki sorunlardan kurtulabiliriz.Bu RODC aynen DC gibi çalışacaktır.Tek farkı ise üzerinde herhangi bir değişiklik yapılmasına izin vermemesidir.Yani Active Directory yapısı üzerinde bu RODC ‘yi kullanarak herhangi bir yazma işlemi gerçekleştiremeyiz.Ancak istanbul şubemizdeki DC üzerinde gerekli değişiklikleri yaparız ve bunun İzmirdeki RODC’ye replike olmasını bekleriz.

longhorn-rodc.GIF