How-To

Using Get-SPWebTemplate to list available site templates in SharePoint 2013

In this tech-short we will go over a simple yet effective way to list out the available site templates in SharePoint 2013.

Using the New-SPSite PowerShell cmdlet allows you to specify the name of a template to use. In my case I was unaware of the name of available templates in my SharePoint installation.  Using the Get-SPWebTemplate command to produce a list for me.

Steps

  1. Open the SharePoint 2013 Management Shell
  2. The the following command: Get-SPWebTemplate | Sort-Object “Name”

The results are a list Templates which could be used in this environment.

 

If you wanted to do the same with PowerShell locally or remote the following steps can be taken.

Open PowerShell and issue the following commands:

  1. New-PSSession -ComputerName SharePoint
  2. Add-PSSnapin Microsoft.SharePoint.Powershell
  3. Get-SPWebTemplate | Sort-Object “Name”

Deploy Template Using VMware Guest Customization Specification

Using templates save you lots of time when it comes to deploying virtual machines. And if you are looking to get a slight edge on your deployments in lab or production using customization specifications may be the way you want to go.

Here are some quick steps to deploy using this method:

 

  1. From the home page of  vCenter Web click VMs and Templates
  2. Right click on the template of choice and select New VM from Template…
  3. Enter the name of your virtual machine guest as you would refer to it in vCenter. Choose your datacenter and click Next to continue
  4. If you are using clusters, choose your cluster and click Next to continue
  5. Select your datastore and click Next
  6. On the select clone option screen choose customise the operating system option; you may also set the machine to power on after creation to start the process which customises the guest – Click Next to continue
  7. On our last screen we are shown our customization choices.  Choose your template configuration and click next
  8. Clicking Next on the confirmation screen start our deployment

And that’s all folks  — posted this for a friend with screenshots to illustrate the process.

– Jermal

VMware Flings: Embedded Host Client Update

I am excited about the release of VMware Labs Flings release of  version 3 of the Embedded Host Client. For those of you who find yourself out of the loop at time, no worries it happens.  Here is some details about the the embedded host client:

The Embedded Host Client is written purely in HTML and JavaScript, and is served directly from your ESXi host. The installed client is in its development phase at this time and does not have full feature sets, but has implemented a very useful feature set.

These features include:

  • VM operations (Power on, off, reset, suspend, etc).
  • Creating a new VM, from scratch or from OVF/OVA (limited OVA support)
  • Displaying summaries, events, tasks and notifications/alerts
  • Providing a console to VMs
  • Configuring host networking
  • Configuring host services

 

Installation Steps:

  1. Enable SSH on your ESXi host, using DCUI (Direct Console User Interface) or the vSphere web client.
  2. SCP the VMware_bootbank_esx-ui_0.0.2-0.1.3172496.vib to a directory on your ESXi host. In my case I used a shared storage LUN or NFS volume as I will apply this to multiple hosts.
  3. Next issue the following command:

     

Upgrade Steps

  1. Enable SSH on your ESXi host, using DCUI (Direct Console User Interface) or the vSphere web client.
  2. SCP the VMware_bootbank_esx-ui_0.0.2-0.1.3172496.vib to a directory on your ESXi host. In my case I used a shared storage LUN or NFS volume as I will apply this to multiple hosts.
  3. Next issue the following command:

     

Example output from running the above command:

[root@esx1:~] esxcli software vib update -v /vmfs/volumes/nfs/installs/flings/VMware_bootbank_esx-ui_0.0.2-0.1.3172496.vib
Installation Result
Message: Operation finished successfully.
Reboot Required: false
VIBs Installed: VMware_bootbank_esx-ui_0.0.2-0.1.3172496
VIBs Removed: VMware_bootbank_esx-ui_0.0.2-0.1.2976804
VIBs Skipped:

 

Tools of choice

WinSCP – http://winscp.net/eng/index.php

Putty – http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

 

For more info on ESXi Embedded Host Client: https://labs.vmware.com/flings/esxi-embedded-host-client

 

Thanks for visiting – jermal

 

Windows 2003, HTTPS Access Issues

One of the teams I support had run into some issues. Spending a lot of time investigating code and possible configuration problems. What they later suspected to be a policy issue, possibly a firewall, network issues turned out to be something entirely different.

Lets start with the symptoms:

  • Service request to a secured site stopped functioning, there were no know changes on the client (server) end. All attempts to connect to this site using the internet explorer failed.  However connections can be made to the site from the same network on other systems.
  • Windows updates did not resolve the issue
  • There was no proxy server or network firewall in the path from the client to the destination server hosting the services
  • Note: Port 80 (HTTP) web requests and even alternate ports listening on HTTP had all worked

 

Differential testing:

  • Attempted to access other known and popular SSL enabled sites and encountered the same issue
  • Attempted to connect to some SSL enabled sites which I had in a lab environment and they worked — OK, Good… SSL is working from this host.
  • But why?  I did some checking on the SSL Certificates, using some of the steps from one of my older posts: http://jermsmit.com/tech-short-lets-test-for-poodle-or-sslv3/

Example of the command used: openssl s_client -connect google.com:443

Discovery: I noticed that the Cipher types where different between those sites which worked using SSL and those that did not.

  • The sites that worked used SSL-Sessions with a Cipher of: AES128-SHA
  • The sites that no longer worked used SSL-Sessions with a Cipher of: ECDHE-RSA-AES128-GCM-SHA256, AES256-GCM-SHA384, etc.

It seems that all SSL sites using SHA2 256 or higher encryption where no longer supported.

 

Resolution: I started my search for a possible hotfix for this issue and I found it

The following KB post details this issue and provides the hotfix download to resolve the limitation on this older OS: https://support.microsoft.com/en-us/kb/968730

Note: Make sure to download the correct Platform version of the hotfix.

 

 

OVF Deployment Issue Ubuntu Snappy 15.04-stable (5 cloud)

When you have time, you do something.

Tonight I was headed over the Ubuntu site to grab me the latest version because I was thinking of installing OpenStack when I noticed on their landing page and noticed “Get Ubuntu Core” ; yes something new.

But where is my Raspberry Pi? No worries they have OVF images I can use to deploy to my vCenter Lab here at home. So I started just this and encountered an issue I once had.

Lets walk you through my events.

Downloading the image

  1. Found myself on the Ubuntu Internet of Things landing page: http://www.ubuntu.com/internet-of-things
  2. Located the OVF section of the getting started page: http://developer.ubuntu.com/en/snappy/start/
  3. Downloaded the OVA image (x86): 15.04/stable

Deploying the OVF Template 

  1. Using the vSphere Client, connected to vCenter (or stand alone ESXi host)
  2. Select server to deploy to and choose file > Deploy OVF Template
  3. Browse to the path were you downloaded your OVF image and select it

This is when I received the following error:
The following manifest file entry (line 1) is invalid: SHA256(core-stable-amd64-cloud.ovf)= d4b8922ed38a4eb9055576f7b46f8e92f463398298f3a42af942f25457d4d41c

Troubleshooting Step 1

  1. I extracted the OVA image (core-stable-amd64-cloud) with 7zip
  2. Once extracted attempted the steps detailed above “Deploying the OVF Template”

The same error was thrown once more.

Troubleshooting Step 2

Within the extracted folder exists the following file types: certificate, manifest, ovf (instruction / configuration) and disk image

  1. I remove the SHA256(core-stable-amd64-cloud.ovf)= d4b8922ed38a4eb9055576f7b46f8e92f463398298f3a42af942f25457d4d41c line from the .MF (manifest)
  2. Once removed I attempted the steps detailed above “Deploying the OVF Template”

It failed also, only this time the error started the the remaining SHA256 was also invalid.

Troubleshooting Step 3 – Third time is the charm

  1. Moved into the extracted OVA folder
  2. Deleted the .mf (manifest) file
  3. Followed steps above “Deploying the OVF Template” only this time using the OVF located in the extracted folder

This go around everything worked

So why did this happen?

The template was changed after its creation which invalidated the SHA256 key.  I have made templates myself, only to have to edit something out such as removing a CD Rom reference which later caused me issues.

I hope this helps if you face this incident or something similar

 

Thanks for visiting – jermal

Also published here

Activating RMS in Office 365

Microsoft Azure Rights Management provides a comprehensive policy-based enterprise solution to help protect your valuable information, no matter whom you share it with.

These policies help improve data security using both Both Information Rights Management and Office 365 Message Encryption

To activate rights management:

  1. Log into Office 365 with an account which has been assigned an administrator role. To do this simply go to the portal site: https://portal.office.com
  2. Click on admin to enter the Office 365 admin center via the admin app icon

  3. In the left pane, expand the service settings
  4. Click on Rights Management to enter the Rights Management dashboard
  5. Here on the dashboard, click on Manage
  6. Click on Activate to active Rights Management

For additional options and steps please have a log over on technet

 

Thanks for visiting – jermal

Remove Wireless Profiles in Windows 10

Similar to my previous post ‘Windows 8: Remove Old Wireless Network Profiles‘ the following are steps which can be preformed in both the command prompt or PowerShell prompt.

Task: Clean up all wireless profiles in Windows 10

Requirements:

  • PowerShell or Command Prompt
  • Elevated Privileges

Steps:

  1. Open, a PowerShell prompt or Command prompt as Administrator
  2. Enter netsh wlan show profiles to show all wireless profiles

  3. Enter netsh wlan delete profile name=”ProfileName” to delete a particular profile by name

     
  4. Or enter  netsh wlan delete profile name=”*” to remove all saved profiles

For more info on managing wireless networks on Windows 8, 8.1, 10 check out the following: Manage wireless network profiles

 

I hope you enjoyed this short post, thanks for visiting – jermal

 

Tech Short: Using PowerShell to join Computer to AD Domain

Working on a server installation I decided to use a simple yet effective power-shell command to join a Windows Server 2012/R2 system to our domain.

For the sake of brevity lets just show you.

Requirements:

  • Admin access to the computer/server you are joining to the domain along with permissions in the AD domain to join machines
  • Connected to the network where the domain is accessible
  • Obtain an network ip address along with dns that can resolve the domain you are joining
  • PowerShell

Steps:

  1. Launch PowerShell as an Administrator
  2. Issue the following command example: Add-Computer -DomainName <domain name> -Restart

You will be prompt for a username and password at this point. Enter in the correct credentials and soon after a restart will occur.

When you resume from the restart you can now log in on this workstation/server with domain credentials.

Additional info can be found on Technet

I hope you enjoyed this short, thanks for visiting – jermal

VMware: vCenter Server Appliance 6.0 Update 1

That time has come, when you upgrade vCenter 6.0.  Here are some quick simple steps to see this done.

As always, its a good idea to have a backup before proceeding.  In my case I used a snapshot of my appliance. This was done by me connecting directly to the ESXi and creating a snapshot.

And here are the steps to start this process:

  1. Download the VCSA 6.0 Update 1 from  the VMware Patch Download Website. File-name: VMware-vCenter-Server-Appliance-6.0.0.10000-3018521-patch-FP.iso
  2. Mount the VCSA 6.0 Update 1 Patch ISO to your VCSA 6.x appliance. I attached the ISO by logging into the ESXi and then attaching to the guest appliance
  3. Next is to be logged into the VCSA 6.x appliance via SSH – note this must be an admin account.  I used the local root user and password
  4. Run the following command to begin the installation process: software-packages install –iso –acceptEulas

  5. When completed issue the reboot command: shutdown reboot -r “Updated, thanks to my buddy jermsmit”

     

Congrats you have upgraded.

Info sources:

VMware KB – for additional info

William Lam – who’s tweet informed me of this release, thanks dude

 

I hope you enjoyed this post, thanks for visiting – jermal

Creation of Virtual Machine Fails – StatusCode: 610–MandatorySysPrepEntryNotFound

Working with the team in creating new virtual machine templates I found that some of our Windows 7 templates when they are being deployed with the following error:

Virtual Machine Manager was unable to find a value for the required Sysprep parameter ProductKey. (StatusCode: 610–MandatorySysPrepEntryNotFound)

I attempted to do some google searching which gave me no information for this issue and I started thinking about the issue in detail. Perhaps the sysprep operation requires a key. Then again its right there in the error message which I overlooked at first glance

So I did just that.

I logged into my MSDN and obtained a MAC key, applying it to the template, saved my change and attempted the process again. This time my deployment worked.

I decided to use a KMS Client setup key for these images as our network supports KMS activation.

For a list of KMS Client Keys: https://technet.microsoft.com/en-us/library/JJ612867.aspx

 

Another error encountered was:

Virtual Machine Manager was unable to find a value for the required Sysprep parameter LocalAdminCredential. (StatusCode: 610–MandatorySysPrepEntryNotFound)

As we did above we needed to define a local admin account (user/password) to be added to our deployments.

 

I hope you enjoyed this post, thanks for visiting – jermal