This week...

What have I learnt this week?

Wireless
Whilst 5GHz channels do not overlap, it all depends on how your access points are configured.  We found that setting up different APs on adjacent channels seemed good, but realised that the APs was broadcasting 80mhz wide and therefore caused overlap.


We reduced this down to 40Mhz which decreased the interference but it is also worth bearing in mind that narrowing this channel will slightly decrease total throughput.
I found this decent webpage which covers the above and other Enterprise WiFi considerations.

http://www.metageek.com/training/resources/design-dual-band-wifi.html

On this, I updated my WiFi logging powershell script.  It collects data every 2 seconds and includes channel being used which is useful for the above.

 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
While($a = 1)
{

Try
        {
        Sleep 2
    $time = Get-Date -Format T
    $ping = test-connection 8.8.8.8 -count 1 -ErrorAction Stop | foreach { $_.responsetime}
    $signal = (netsh wlan show interfaces) -Match '^\s+Signal' -Replace '^\s+Signal\s+:\s+',''
    $BSSID = (netsh wlan show interfaces) -Match '^\s+BSSID' -Replace '^\s+BSSID\s+:\s+',''
    $Channel = (netsh wlan show interfaces) -Match '^\s+Channel' -Replace '^\s+Channel\s+:\s+',''
    $Profile = (netsh wlan show interfaces) -Match '^\s+Profile' -Replace '^\s+Profile\s+:\s+',''
    $output = $time + "," +$ping + "," + $Signal + "," + $BSSID + "," + $Profile + "," + $channel
    Write-Host "Response Time is $Ping , $Signal , $BSSID , $Channel"
    
   Out-File -FilePath c:\temp\reportGoogle.csv -InputObject $output -append
   
        }
Catch
    {
    $ping = "Request Timed Out"
    write-host $ping
    $signal = (netsh wlan show interfaces) -Match '^\s+Signal' -Replace '^\s+Signal\s+:\s+',''
    $BSSID = (netsh wlan show interfaces) -Match '^\s+BSSID' -Replace '^\s+BSSID\s+:\s+',''
    $Profile = (netsh wlan show interfaces) -Match '^\s+Profile' -Replace '^\s+Profile\s+:\s+',''
      $Channel = (netsh wlan show interfaces) -Match '^\s+Channel' -Replace '^\s+Channel\s+:\s+',''
     $output = $time + "," +$ping + "," + $Signal + "," + $BSSID + "," + $Profile  + "," + $channel
    Out-File -FilePath c:\temp\reportGoogle.csv -InputObject $output -append
    Continue
    }
 
Finally{
 Out-File -FilePath c:\temp\reportGoogle.csv -InputObject $output -append}        } 

By the way, I use http://hilite.me/ to add this code to the blog.

CVV
I saw that Troy Hunt had verified another data breach, one with a huge amount of records that includes items like Card Verification Values (CVV).  This is that little 3-4 number code which is on the back of credit/debit cards (or front of AMEX). 

https://www.troyhunt.com/someone-just-lost-324k-payment-records-complete-with-cvvs/

Under PCI DSS rules, companies should not actually store this value on their systems.  This is why some web providers ask you for your CVV even though you have stored your main number and the expiry date.

But some retailers do not store this value and you can still make payments without any issue (Amazon one click anyone?).  Troy shares the following link in his article. 


http://security.stackexchange.com/questions/21168/how-does-amazon-bill-me-without-the-cvc-cvv-cvv2

So it looks like you don't actually require the CVV to make a payment, but companies are often provided a discount by their bank/payment processor for transactions with CVV.  This encourages its usage and decreases fraud.

Amazon have clearly taken the decision to ignore the CVV and pay a slightly higher fee per transaction.  They can keep fraud low by completing checks on all of the other information you need to provide for an account and tracking your history of purchases.  The money that Amazon makes because of the convenience one click must outweigh the costs of fraudulent purchases easily.

Export Public Folders
Someone asked me this week how to export some contact information from Public Folders, specifically the titles for a huge contact list.  My mind immediately went to Powershell on the server side, but after a little searching around it appeared there wasn't an obvious cmdlet for it.

Quick Google later and I came across the following stack overflow page

http://stackoverflow.com/questions/13350783/exchange-powershell-contacts-from-public-folder

Using Powershell on a client computer with Outlook installed can be used to get at all of the information in all of your folders.  I adapted the example provided in the link above for my example.


1
2
3
4
5
6
7
8
$Outlook       = New-Object -com Outlook.Application 
$Namespace     = $outlook.GetNamespace("MAPI") 
$PublicFolder  = $Namespace.Folders.Item("Public Folders – name@email.com")
$PublicFolders = $PublicFolder.Folders.Item("All Public Folders")
$Sublevel1 = $PublicFolders.Folders.Item("Sublevel1")
$ContactsList   = $Sublevel1.Folders.Item("ContactList")
$Contacts = $ContactsList.Items
$contact | select title

The output is what we needed for this data migration exercise. 


It needs some cleansing obviously!

Comments

Popular posts from this blog

Assigning Windows 10/11 Enterprise Subscription Activation Licences to Hybrid Azure AD Joined Devices

Power Automate: Get first item in output

De-selectable radio buttons - Power Apps