Thursday, March 21, 2019

How to Add a USB to Hyper-V (Pre-VMware Data Migration)

You need to copy the data off of the Hyper-V Server and it's driving you nuts over the LAN.

1. Connect your USB to the physical server.

2. RDP into Hyper-V.

3. Open Hyper-V Manager. Click on the host and then select "Hyper-V Settings".

4. Enable/Check Use Enhanced Session Mode (2 Places)

5. Now click the VM itself and click settings and click "Integration Services" and select "Guest services". (NOTE: If the VM is online. Reboot it to pick up the change).

6. When you first connect to the VM. It will pop up and ask you to select an option. Integration Service is the last icon on the top left of the VM Toolbar.

7. Click on Local Resources ==> More

8. Click on Drives and select the USB you connected E:\ etc. Select Drive's that I Plug in Later if you will add more USB's later.

9. Now it will show the mounted USB. Copy your data!

Credits: YouTube University! =) (Easy w/ No English) (Detailed w/ English)


Tuesday, March 19, 2019

I'm Unable to Uninstall any Programs or Install Software on Windows Server 2012 R2

1. You try to uninstall a program on Windows Server and your unable to proceed after getting an error that the their is a pending operation.

2. Troubleshooting Tip #1: Open up Task Manager and then find any msiexec services and right click and then "End Task" to all of them.

3. Try again. If everything works fine. Your done.

4. Troubleshooting Tip #2: Scan for Malware (MalwareBytes) or download and run CCleaner (I do not recommend this on production servers...that's your own risk.

5. Clean up the registry errors and then uninstall any unnecessary, unused and "makes no sense that it's installed" software.

6. Try again. If everything then works ok. Your done.

FYI. Doing things manually without a backup in the registry can wreak havoc. Be careful. If it's a VM. Take a snapshot. 5 minutes of patience and preparation can save you hours of anger, stress and fear of getting your head chomped off by _____________________!

Tuesday, March 5, 2019

How to Convert an OVA Image to an AWS EC2 Instance

1. Create an S3 Bucket to import the OVA Image.

2. Upload the OVA Image via the browser. (Pro Tip: If the OVA has a long and complicated name, rename it. Your going to be using the command line.)

3. Install the AWS CLI and Python onto your Laptop

4. Verify via CMS that python --version and pip --version is working and you get a response.

C:\Users\ubuntu.power>pip --version
pip 19.0.1 from c:\users\ubuntu.power\appdata\local\programs\python\python37-32\lib\site-packages\pip (python 3.7)

C:\Users\ubuntu.power>python --version
Python 3.7.2

FYI. You can also use PowerShell

5. You will need your AWS Secret ID and Key from IAM. Generate a new one if you forgot it or haven't use it or just plain don't know it.

Note: Make sure you can run an aws command like the following with output:

aws s3 ls

6. AWS Import/Export Guide:

7. Convert from an OVA File:

8. In order to import the OVA file, you have to save it to a location on your local machine where you can point to the path from PowerShell (If you're on Linux, the location from your shell). Note: If your on Windows, use the C:\ Drive Path. 

Professional Note: Use Notepad++ on Windows to create the file

9. trust-policy.json file



10. role-policy.json file


11. You import the policies from your machine using a local path. Drive Shares (e.g. Google Drive, etc seem to complain).

PS C:\Users\username> aws iam create-role --role-name vmimport --assume-role-policy-document file://C:\Users\username\Documents\AWS\s3\trust-policy.json

PS C:\Users\usernamet> aws iam put-role-policy --role-name vmimport --policy-name vmimport --policy-document file://C:\Users\username\Documents\AWS\s3\role-policy.json

Page 14-15 of

12. Create "containers.json" file.

    "Description": "Bubba Lovey",
    "Format": "ova",
    "UserBucket": {
        "S3Bucket": "bubba-lab-lovey",
        "S3Key": "anykindofvm.ova"

13. aws ec2 import-image --description "FireEye CMS" --license-type BYOL --disk-containers file://C:\Users\username\Documents\AWS\s3\containers.json

NOTE: This is a Linux Image

You can check the status of the running job by using the "ImportTaskID" that was provided when you kicked off the job:

This blog saved the day. Credit has to go to Daniel Lopez Azana! (Helpful)


How to Quickly Setup the AWS CLI on Windows

Download the AWS CLI App.

1. Open Powershell after you install the software.

2. type aws configure

3. Note: If you don't know or have your Access Key Id and Secret Key, create a new one and delete the other one.

4. Check your region here:

Monday, January 28, 2019

How to Configure AWS Active Directory Conditional Forwarders for a Trust between Your AWS Managed Microsoft AD and On-Premises Domain

As you get started. Make sure your VPC configurations for Inbound and Outbound traffic are correct.

If you are using a VPN. Make sure the AWS CIDR and your Local CIDR's are there. The local CIDR range is also your local AWS CIDR, not just your on-premise CIDR block range.

1. In order to establish a connection between your on-premises Active Directory and the AWS Cloud AWS Managed Microsoft Active Directory you must setup both the on-premise server (LOCALDOMAIN.COM) and your AWS Domain (AWSDOMAIN.LOCAL).

2. Create an AWS EC2 VM that will be joined to your awsdomain.local domain. After you have created the VM. Login to the VM and add the DNS addresses that are listed for AWSDOMAIN.LOCAL in the AWS Directory Service. Do an ipconfig /all to make sure that the DNS IP addresses are correct or nslookup will fail.

3. FYI. You cannot RDP into the AWS DC's for the AWS Managed Microsoft AD. You have to use the Server Manager Tools on the server that is joined to the the AWSDomain.Local.

4. Join the machine to your AWS Domain. The default username is "admin" and not "administrator". Then reboot the computer.

Right-click on Conditional Forwarder and then select New Conditional Forwarder

5. Configure your domain that will be used for the trust so that it can talk from your domain.

6. Run PowerShell or CMD Prompt as an administrator and run ipconfig /flushdns

7. Now ping the domain (FYI. It takes a few minutes. Relax). ping the domain name (e.g. ping awsisyourfriend.local) and you should get the ip address back that you put as the IP addresses of the master servers (domain IP's). DNS Settings are here with the arrow.

Image sanitized.

8. After you are able to ping the DNS IP addresses. Do an nslookup awsisyourfriend.local. Now you will get a response something like

C:\Windows\system32>nslookup awsisyourfriend.local

Non-authoritative answer:
Name:    awsisyourfriend.local

9. Next. Open your Active Directory Domains and Trusts and start the setup of the trust.

Note: URL if you have time.

Pics below for us that need to Get it Done!

10. Type the domain

11. Click Forest Trust

12. Two-Way

13. This Domain Only

14. Forest-wide authentication

15. Trust Password (NOTE: This is the password that you set up with the creation of the AWS Managed Microsoft AD).

16. Do not confirm the Outgoing or Incoming Trust (select No)

11. Now the on-premises side of the AD Domain Trust (Two-Way) is done.

12. Do the AWS Side now.

13. Note: You cannot create the trust from within the Windows OS on AWS. You must do it through the AWS Console. If you attempt to do it from the OS. You will get an error that says Access Denied!

14. If you have done everything correctly. You will get rewarded with a "Verified" green check mark!

AWS Articles:


Thursday, January 24, 2019

How to Enable Windows Server 2016 Remote Shell

1. Open PowerShell

2. Get-Item WSMan:\localhost\shell\allowremoteshellaccess

3. Open GPEdit and Turn it off. Restart the installation for the File Server and then you can turn it back on.

Computer Configuration > Administrative Templates > Windows Components > Windows Remote Shell > Allow Remote Shell Access

4. gpupdate

5. Now run the app again.

Thank you XIA!!


How to Recover a Deleted Office 365 Mailbox

1. Launch Powershell as an Administrator

2. Connect to Office365 via the CLI (You can't do this from the GUI/Browser)

3. You will need both GUID's to move the old mailbox data that was soft deleted to the new mailbox that was created.

NOTE: Background on how this would be applicable. The reason you would have to do this is if you had a local hybrid Active Directory and you did not migrate one mailbox to Office365 or whatever other reason you had a local mailbox stuck on the local exchange DB. You deleted the mailbox in OWA and Microsoft Active Directory Sync wiped out your Office365 account because the local AD account was wiped/deleted when you were fixing the OWA on-premise. You created a new account and when it was replicated to Azure Active Directory and you enabled the Mail license, you now need to copy the data from the old mailbox to the new Mailbox. Either way, you have a new mailbox and the soft deleted data needs to be migrated/copied to the new mailbox.

4. Informational. Your ExchangeGuid is not the same as the account Guid. Don't mix them up.

5. Get-Mailbox -SoftDeletedMailbox

6. Get the GUID's of the Old and New Mailboxes

Get-Mailbox -SoftDeletedMailbox -Identity cchicken | fl *guid*

Get-Mailbox -Identity curry.chicken | fl *guid*

7. Merge the old data into the new mailbox

New-MailboxRestoreRequest -SourceMailbox aef196y7-9036-4bec-b63b-f34re8rv6705 -TargetMailbox 0a897d6d-67a9-4ff8-a79d-k64rsvb678a3 -AllowLegacyDNMismatch