<?xml version="1.0"?>
<rss version="2.0"><channel><title>Break Fix Time Latest Topics</title><link>https://funtimebliss.com/forums/index.php?/forum/9-break-fix-time/</link><description>Break Fix Time Latest Topics</description><language>en</language><item><title>Some downtime errors (fixed)</title><link>https://funtimebliss.com/forums/index.php?/topic/5449-some-downtime-errors-fixed/</link><description><![CDATA[<p>
	If you had tried to visit or email in the last day, you may have seen errors on pages. Emails went nowhere in the timeframe as I had to renew the hosting payment.
</p>

<p>
	 
</p>

<p>
	Still alive, just had some funding snags until I got paid. <span><span class="ipsEmoji">🙂</span></span>
</p>
]]></description><guid isPermaLink="false">5449</guid><pubDate>Wed, 13 May 2026 03:42:21 +0000</pubDate></item><item><title>Oopsie kitty (php errors)</title><link>https://funtimebliss.com/forums/index.php?/topic/5445-oopsie-kitty-php-errors/</link><description><![CDATA[<p>
	I've been busy but do still exist. I saw some PHP errors on the wordpress and forums. Changed my running PHP version to 8.1 and they are resolved.<br />
	<br />
	I was on an older PHP version so that is sorted.<br />
	<img alt="FTB_logo_2023_800px.png.bd21d6f159b3a672" class="ipsImage" data-ratio="30.77" height="800" width="2600" src="https://funtimebliss.com/forums/uploads/monthly_2023_09/FTB_logo_2023_800px.png.bd21d6f159b3a672ec9408b7274693a2.png" />
</p>
]]></description><guid isPermaLink="false">5445</guid><pubDate>Tue, 12 Nov 2024 22:02:34 +0000</pubDate></item><item><title>Say you want to recover a saved password from Windows</title><link>https://funtimebliss.com/forums/index.php?/topic/5434-say-you-want-to-recover-a-saved-password-from-windows/</link><description><![CDATA[<p>
	Quick info as I forgot my Windows password and was going to fetch it from a saved Remote Desktop Protocol connection file (RDP). I have done this in the past to grab saved credentials from Windows Services using Run As User credentials. Theoretically, you could find the same for stored network shares too. I presume this still works for Windows 7 to 11 but now a days, this <a href="https://www.nirsoft.net/utils/remote_desktop_password.html" rel="external nofollow">NirSoft recovery tool from 2014</a> flags as "malware".
</p>

<p>
	 
</p>

<p>
	You can grab <a href="https://www.nirsoft.net/utils/remote_desktop_password.html" rel="external nofollow">Remote Desktop PassView from NirSoft</a> but you will likely need to disable defender to make it run. I made this thread as it followed my mental rule for making a note of something handy I used in the past.<br />
	In my recent Windows 11 case this week, I forgot my main user password but logged in from another PC with saved RDP credentials, changed the password on a second local admin ( You can change another user's password without their old one, but while logged in locally as the same user, you need the current ( forgotten temporarily ) to change the current pass.<br />
	Logging in as second admin, I could then reset local admin password to something new, without the existing pass being needed.
</p>

<p>
	 
</p>

<p>
	I just made a crabby twitter comment ( as opposed to any other kind on there? ) about many No-CD fixes getting spirited away from Windows 7 onward and Defender's choice for 'bad files'. Typically removed with no notification or direct logging either. If you like it and want to archive it, store it on a Non-Windows based file server.
</p>

<p>
	 
</p>

<p>
	Bonus random note of old: If you are logging into another device without a domain, you can set your username and password to the same on local and your network share or what have you. Most all the time, you will be able to connect without being prompted for a password, since they are already the same.
</p>

<p>
	 
</p>

<p>
	Fun WiFi migration? Set your Access Point ( AP Network Name ) and password to be the same as a Wifi network you have already connected to. Your devices will be on the new access point without issue, most of the time. There are extra settings that could handle this change but the likelihood of them being a factor are very low. Save time migrating off access points and testing things or pretending to be an existing network,
</p>

<p>
	Auto-connect being a client default makes this extra handy based on whatever you may be working on or with.
</p>
]]></description><guid isPermaLink="false">5434</guid><pubDate>Sun, 24 Sep 2023 21:14:54 +0000</pubDate></item><item><title>Podcast and Encoding guide</title><link>https://funtimebliss.com/forums/index.php?/topic/5370-podcast-and-encoding-guide/</link><description><![CDATA[<p>
	<span style="font-size:20px;"><strong>Encoding Guide.</strong></span><br>
	Overview on encoding video, stripping audio and preparing to submit a podcast.
</p>

<p>
	<strong>Prerequisites:</strong> Use whatever OS you like!  I have encoded using the same utilities on Linux, but in this case I'm using Windows.  Mac support should be comparable as well.
</p>

<ul><li>
		<a href="http://www.mplayerhq.hu/design7/news.html" rel="external nofollow">mplayer</a>
	</li>
	<li>
		<a href="https://www.ffmpeg.org/" rel="external nofollow">ffmpeg</a>
	</li>
	<li>
		your favorite text editor
	</li>
	<li>
		some patience while files encode
	</li>
	<li>
		A means to download source stream files. I am using <a href="https://github.com/Franiac/TwitchLeecher" rel="external nofollow">Twitch Leecher</a> in our case.
	</li>
</ul><p>
	Since I am talking about Twitch being our source file, I use Twitch Leecher to grab the raw .mp4 file from Twitch.tv servers.  For point of reference your 720p video if it is 2 hours, it will be approximately 2.2 GB!  Shit, that's a pretty big file.  Your size to time ratio may vary but that puts into perspective the next step.  Encoding to .avi files.
</p>

<p>
	Before we start, make sure you grabbed <strong>mplayer</strong> and <strong>ffmpeg</strong>.  For the Windows heads, let's make this easy and pick a folder for encoding files.  Let's say
</p>

<pre class="ipsCode">
D:\encodes</pre>

<p>
	You can set paths and stuf for mencoder and ffmpeg, but let's be lazy and drop those extracted files into D:\encodes.
</p>

<p>
	As you may guess, we will also copy the raw .mp4 file we want to encode into the encodes folder too.
</p>

<p>
	Next step: let's prepare the encode scripts.  Considering you might be doing this for more than one episode, let's just gear up to batch this process out for multiple files and to make your task easier, for each new episode.
</p>

<p>
	Pause for giving an overview of our process:
</p>

<ul><li>
		Download the raw file
	</li>
	<li>
		Encode it with Xvid to trim some of the file size down
	</li>
	<li>
		Make an MP3 to strip the audio
	</li>
	<li>
		Run a maintenance task to make sure the timing index (You'll see why below)
	</li>
	<li>
		Upload your files somewhere for people to get them
	</li>
	<li>
		(Optional) Make an XML RSS Feed for your Podcast submissions
	</li>
</ul><p>
	<span style="font-size:20px;"><strong>Sample Windows Batch file to make an .Avi:</strong></span>
</p>

<pre class="ipsCode">
@echo off
echo Cooking it up
mencoder "041_AndrewMorris_GreyNoise_io.mp4" -ovc xvid -xvidencopts bitrate=1800 -o "041_AndrewMorris_GreyNoise_io.avi" -oac mp3lame -lameopts abr:br=192</pre>

<p>
	The 1st .mp4 is your source, I'm setting the bitrate for video to 1800 kbs, -o is outputting the encoded Xvid .avi and the the audio track is being encoded at 192 kbs bitrate for the same .avi output file.
</p>

<p>
	Neat.  So now that we have a newly encoded .avi file.  Be a good encoder and test it!  Granted if one works, you should be golden for your other encodes.  Remember, that's why we are scripting it too.  Nice way to save some sanity while gaining consistency.
</p>

<p>
	This will not be an instantaneous process.  I want to say my average FPS encoding is about 70 to 90 FPS when encoding the video.  So be prepared for that.
</p>

<p>
	<span style="font-size:20px;"><strong>Next up: Let's cook up some tasty MP3s.</strong></span>
</p>

<p>
	In this batch script, we are going to extract the audio from the raw .mp4, but label it as fixTimings.mp3.  Try to just run that encoded file and you will see the timing for the track is all broken and randomly changing.  that may have been fixed in a later version of mencoder, but I call ffmpeg to fix it.
</p>

<pre class="ipsCode">
@echo off
echo Cooking it up
mencoder "041_AndrewMorris_GreyNoise_io.mp4" -of rawaudio -oac mp3lame -lameopts abr:br=192 -ovc copy -o "041_AndrewMorris_GreyNoise_iofixTimings.mp3"
echo Sync Audio
ffmpeg -i "041_AndrewMorris_GreyNoise_iofixTimings.mp3" -acodec copy "041_AndrewMorris_GreyNoise_io.mp3"
</pre>

<p>
	As you can see in the ffmpeg call, I use the source file with bad timings and make a corrected .mp3 with the proper time tables.<br>
	Luckily, encoding just audio is crazy faster than doing video and audio.  On an Intel i7-7700k setup I do about 550 FPS in respect to speeds.
</p>

<p>
	As I mentioned previously about the videos TEST YOUR OUTPUT FILES!  Once you have the first few good, you should have no shock or issues processing later files.<br><br><span style="font-size:20px;"><strong>Getting into writing an RSS feed in XML:</strong></span>
</p>

<p>
	Let me stop here for now, as the next steps would be uploading your encoded files, writing a RSS feed in XML then submitting that to various podcast services (iTunes, Spotify, Google Podcasts).  You can always view source of your favorite podcast (Duh, it should be <a href="http://ftbliss.link/episodes.xml" rel="external nofollow">ThugCrowd</a>) and edit to your whim.
</p>

<p>
	While most web browsers do not display RSS feeds in a nice format anymore besides OG Firefox engine (IE: PaleMoon web browser), you will see the XML displayed that is key to being processed by the podcast services.  None of the podcast services host your content, they basically point to your RSS XML feed and the file paths you specify for each episode.  So you will want formidably reliable a host.
</p>

<p>
	As I mentioned, there are some specific tags for iTunes you should specify to make sure your podcast gets listed.  Out of respect for your listeners, be sure to add the date of episode, file size and track length.  It should also help you get listed since you gave good info out of the gate, before submission.
</p>

<p>
	Then when you have a new episode, just add a new Item block with the relevant criteria and you have updates or all your subscribers to know there is a new episode!  Ok that is the end of this guide for now.
</p>]]></description><guid isPermaLink="false">5370</guid><pubDate>Tue, 15 Jan 2019 23:29:27 +0000</pubDate></item><item><title>Forensic drive imaging with dd image and backups</title><link>https://funtimebliss.com/forums/index.php?/topic/5322-forensic-drive-imaging-with-dd-image-and-backups/</link><description><![CDATA[<p>
	<strong>Raspberry Pi dd imaging guide.</strong>
</p>

<p>
	<strong>Preface:</strong><br />
	This guide is for sharing a forensic approach to imaging a hard drive or solid state device.  I tend to not see many forensically tooled guides, so this one covers imaging from the perspective, that you need a verifiable image of a drive you will be working with.  I am writing it will full intent to be useful without needing to have a Write-blocker or needing to run and wait for the sha256 signature checks to be run.  In effort to be accessible I will cover the imaging of a Raspberry Pi with Raspbian and getting that running.  If you are familiar with that process, please jump ahead to the <strong>Action</strong> section.<br />
	My logic for using a Raspberry pi is because they are some of the cheapest functional computers one can get.  My logic for imaging the Pi fresh from an ISO, is to be sure no extra data is left over on the Pi from any previous projects you might have been doing in the past.
</p>

<p>
	I want to add a side-note that you can follow the steps under action for almost any Linux distribution on various hardware.  I have done similar on a current era laptop running Tails before.  Your CPU heavy tasks like sha256sum will likely run much faster than on the Pi 2 I used for this guide. USB hard drive performance may also run higher based on your USB drive connectors and laptop, versus a Raspberry Pi 2.  Just for point of reference, I wanted to mention this.
</p>

<p>
	I also have done a <a href="https://funtimebliss.com/forums/index.php?/topic/4558-forensic-talk-free-slides/&amp;tab=comments#comment-25407" rel="">fire talk on imaging with dd</a>.  The slides are shared and also transcribed in the linked thread.
</p>

<p>
	<strong>Preparation:</strong><br />
	Tools needed:
</p>

<ul>
	<li>
		Raspberry Pi<br />
		   
	</li>
	<li>
		SD Card<br />
		    
	</li>
	<li>
		A USB to MicroSD reader (to image your Pi)<br />
		    
	</li>
	<li>
		Power Supply<br />
		    
	</li>
	<li>
		HDMI Display<br />
		    
	</li>
	<li>
		Keyboard and probably a mouse<br />
		   
	</li>
	<li>
		Post-It notes to label your drives<br />
		    
	</li>
	<li>
		A USB powered hub (you want this for use with the external drives)<br />
		    
	</li>
	<li>
		A USB SATA Dock<br />
		    
	</li>
	<li>
		USB Write-blocker to prevent making changes to source drive. (or you can use a second USB dock but cannot count on the full unchanged integrity of the source USB drive.)
	</li>
</ul>

<p>
	As I mentioned the Write-blocker, that will increase your cost quite a bit. Roughly $300 if you are going to use a Cru ComboDock 5.5 that I use.  You are still fully able to follow this guide without one, but minor changes to your source drive may happen while you read data from it (especially if you browse the drive contents and it generates thumbs.db files) and that would cause a problem in the sake of capturing a forensically sound image of that source drive.
</p>

<p>
	With that noted, let's get the Raspberry Pi ready to go with a fresh install of Raspbian OS.
</p>

<p>
	Download latest Rasbian to your main computer you are reading this from.<br />
	Install to sd card with etcher imager (resin.io is the imager I used to write the .iso to MicroSD Card)<br />
	Put sd card in your Pi and boot it up.<br />
	Bring up a terminal and set pi passwd (default password is: raspberry)<br />
	Raspberry Pi Configuration can be found under Preferences on the menu of Raspbian Desktop.  On this first tab of System you can change the bottom options:<br />
	    
</p>

<ul>
	<li>
		Disable auto login<br />
		    
	</li>
	<li>
		Boot to CLI
	</li>
</ul>

<p>
	<br />
	Now that we have the Pi booted and setup, let's jump into the Actions portion of the imaging.
</p>

<p>
	<strong>Actions</strong>
</p>

<p>
	Hook up source drive (If no write-blocker, use a USB drive bay / or external drive).  Follow the below steps to identify your source drive.<br />
	No gparted on Raspbian anymore, so use Parted in the terminal.<br />
	  
</p>

<pre class="ipsCode">sudo parted -l</pre>

<p>
	<br />
	Typically the first usb drive will be /dev/sda.  Also cross reference the output to make sure it matches to the size of the drive you just hooked up. (500 GB source drive in my case)<br />
	You can also  type ls /dev/sd* in a terminal to see what drive is connected.  Now that we know what the source drive is, go ahead and hook up the destination drive you are using to be the clone of your source drive.<br />
	In another terminal, type <strong>sudo parted -l</strong> again.  In my case I now see a /dev/sdb.  This is my second drive I will be using to write the clone of the source drive to. (1000 GB destination drive in my case)
</p>

<p>
	For your sake, this is where I recommend using post-it notes to write a note to put on each disk, stating what one is the source and it's /dev/path.  Also doing the same for your destination and it's /dev/path.
</p>

<p>
	Source drive is /dev/sda<br />
	Dest drive is /dev/sdb
</p>

<p>
	With that out of the way, we are ready to jump into the long haul of running  a dd command.  This will copy the data from your source drive, block for block to the destination drive.  dd is quite a serious command and can result in data loss if you do it wrong.  Here is where a write-blocker is especially useful to prevent overwriting the drive.  Also this is where the notes on the physical disk are helpful.  Below is the command for the setup we outlined.
</p>

<pre class="ipsCode">dd if=/dev/sda of=/dev/sdb bs=16384k status=progress</pre>

<p>
	Let's break this command down.  I look at the <strong>if=</strong> being equal to Input file.  That's our source drive.  <strong>of=</strong> being Output file.  This is where our destination drive is being overwritten.  <strong>bs=</strong> is Block Size.  I go with 16384k as it is a block size I have seen around good for imaging.  <strong>status=progress</strong> is a nice add-on so you can see the results of the dd command.  Otherwise you would be waiting for the progress to output once it is done.<br />
	This will take quite some time. 500 GB source to a 1TB destination drive.  Easily took about 8 hours as the finished results state:<br />
	27184.1 s, 18.4 MB/s.  Divide that by 60, then again by 60 and I got 7.55 hours to image a 500 GB drive to a 1 TB drive.<br />
	Hurry up and wait as you are doing a block for block image, so it even will copy the blank space to the destination drive.
</p>

<p>
	Once done, verify each drive matches (Especially for forensic sake and use of write blocker).<br />
	Drive to drive sha will not match, so you want to do it for the partitions specifically.  Once again, be warned that it took around 7 hours on this Pi setup to run sha256sum against each one of these partitions.  Below are the commands I ran to generate the sha256 signature, followed by their matching results.
</p>

<pre class="ipsCode">sha256sum /dev/sda1
sha256sum /dev/sdb1</pre>

<pre class="ipsCode">813dcb6470f62c7c12623a0ef092551965b83e501e70dff4e01e1220cebf0129  /dev/sda1
813dcb6470f62c7c12623a0ef092551965b83e501e70dff4e01e1220cebf0129  /dev/sdb1</pre>

<p>
	Bingo!  Image is a success and the source partition is a match to our cloned partition.  For conversations sake, if you were to run sha256sum against the entire disks, they would not match up.  Keep in mind the destination drive I used is a 1TB disk, so it has more free space than does the source drive.<br />
	<br />
	Here are examples of mismatched checksum, because we compared the entire disks where one was larger than the other.
</p>

<pre class="ipsCode">83b3b53d577d0ae793c947220b4ef3aa3d323e8349e0d3615b77964ec5baeb80  /dev/sda
f24189b6160b9a91bf5037ade4d4ab2f45a9bad9ebe254c0a349688f8987bc10  /dev/sdb</pre>

<p>
	 
</p>

<p>
	<br />
	That concludes this guide.  If you have an questions or feedback, reply in this thread or hit me up online.  Thank you for reading and visiting. <span class="ipsEmoji">🙂</span>
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">5322</guid><pubDate>Thu, 05 Apr 2018 16:42:40 +0000</pubDate></item><item><title>Make a VM Lab for Active Directory</title><link>https://funtimebliss.com/forums/index.php?/topic/5332-make-a-vm-lab-for-active-directory/</link><description><![CDATA[<p>
	Ad Build Guide:<br>
	Primer:  I see quite a few people talk about wanting to do vulnerability research, yet not having much Windows exposure.   It could be heavy bias on my part but for the roles i have seen, Windows is pretty dominant in the wilds of the business world.  The intent here is to learn more about Windows domain environments by building a test environment of our own to test on.  Disclaimers apply to why we want to make a test environment: I really really really do not want to read about you getting arrested for poking a stick at some Windows environment you found in the wild, without having been granted permission to do so.  It is really minor effort to find a server with Remote desktop protocol port open to the internet.  Granted at this point in time, that should be considered negligence on the part of sites with that port open, but alas, that would not work as a defense for your sake.<br>
	I have intended to write this guide with a minimal technical background being required, for the sake of welcoming more people to utilize it.
</p>

<p>
	Now that we got out of the way, let us start with the hardware and software used to build your Virtual Machine lab.<br>
	+ A modern desktop or laptop running an x64 processor.  You can be running Windows, Linux or OS X for your desktop operating system, as we are going to use VirtualBox to build the VMs.  The following guidelines can be applied to your Virtualization platform of choice, but I like VirtualBox for sake of cross-OS Virtual Machine migration and price point for running VirtualBox.<br>
	+ 16 GB RAM or more is preferable.  You could get by with less but may find your VMs running low for resources and have less options for multiple, concurrent running VMs.<br>
	+ A SSD drive.  Running on an SSD will greatly speed up time to copy an existing VM and also improve desktop performance of the VMs.  You can get by on a HDD, but you will wait much longer to clone a virtual disk image and your virtualized desktop OS might be laggy.
</p>

<p>
	Getting started, we want to install VirtualBox, make sure VT-x support is enabled (likely a BIOS setting you can set when your PC is booting up) and to download Windows Server 2016.  We could go with older versions of Windows and poke those with a security stick, but if you are trying to get some viable business experience, I would jump into the more recent OS, particularly as many businesses have been lagging on their migrations from older Windows Server versions.  There is no shame in learning and trying to also be marketable at the same time.
</p>

<ul><li>
		VirtualBox:
	</li>
</ul><p>
	<br><a href="https://www.virtualbox.org/wiki/Downloads" rel="external nofollow">https://www.virtualbox.org/wiki/Downloads</a>
</p>

<ul><li>
		Windows Server 2016
	</li>
</ul><p>
	<br>
	Download the ISO image. <a href="https://www.microsoft.com/en-us/evalcenter/evaluate-windows-server-2016/" rel="external nofollow">https://www.microsoft.com/en-us/evalcenter/evaluate-windows-server-2016/</a><br>
	This will give you a 180 day trial install.  So long as not doing so on the Domain Controller server with that role active, you can Sysprep the install to reset the timer and OS back to it's initial state.  More on that further in this guide.
</p>

<p>
	While those download and you install VirtualBox, let's step back to overview your intent with this test lab.  We are installing an initial Windows Server 2016 virtual machine.  Once that is up, we will clone that image so we have a master control image.  For the sake of this lab, let's leave the Master image intact then create 4x master clones.  I'm going with 40 GB disk size for the VM, so roughly 200 GB will be used.
</p>

<ul><li>
		Master Image (Do not change once all patched)
	</li>
	<li>
		Windows Domain Controller
	</li>
	<li>
		Microsoft SQL Server
	</li>
	<li>
		AppServer.  This is optional if you want to save space and piggy-back your potential test application from the SQL VM.
	</li>
	<li>
		Client machine.  Not necessarily on the domain.  This will be your client device / scan box / non-domain network sniffer.
	</li>
</ul><p>
	Let's get started:<br>
	From VirtualBox, click the New button to create a new Virtual Machine.  Type: Microsoft Windows, Version: Windows 2016 (x64).  Name this initial VM 'masterControlImg' for sake of reference.  Click the box for 'Create a virtual hard disk now'.  Let's set the Memory option to '2048' AKA 2 GB. Then click 'Create'.  I want to add a note that the virtual machine name you enter here will also be the subfolder in your VMs folder for VirtualBox on your storage drive (on your actual main machine).  You will get weird errors if you try to make a VM the name of a folder that already is in that folder.  FYI to save you headaches on that note.<br>
	Next will be the Create Virtual Hard Disk screen.  Leave the path as-is since it will match the prior line about being in a folder named to your VM, 'File size' of 32 GB is fine (but I suggest 40 GB for when you start adding Active Directory services and Replication), 'Hard disk file type' to the default of VDI (VirtualBox Disk Image) is good, as is the 'Storage on physical hard disk' remaining set to Dynamically allocated.  Good, now we can press 'Create' on the virtual hard disk screen.
</p>

<p>
	Now that VM is created, let's go into it's settings then onto the Storage tab.  The second drive should be a CD icon and on the right side you will see a drop-down when you click the CD icon.  Select 'Virtual Optical Disk File...' then browse on your local computer to where you saved that Windows Server 2016 ISO, click OK until you are back to your VMs listed on the 'Oracle VM VirtualBox Manager'.
</p>

<p>
	With the ISO mounted for Windows Server 2016, boot your VM to install.  Hurry up and wait.  Follow the prompts (you want Server 2016 with desktop experience) and select an Administrator password.  For the sake of this lab, we can use 'Babydonthurtm3!' without the quotes.<br>
	You will want to take note of this for later use, as this is the local administrator account for this install and your cloned virtual machines.  Wait for the installer to finish and when done, it will let you login and see your desktop.
</p>

<p>
	<img alt="" class="ipsImage ipsImage_thumbnailed" data-fileid="o_1cj4837hmeqaqrr64c15h7j0l1k" src=""><a class="ipsAttachLink ipsAttachLink_image" data-fileid="2302" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A01-VB_MakeVM_Template.png.af83da3f27eb2d236b7220ea24618b1a.png" rel="" data-fileext="png"><img alt="0A01-VB_MakeVM_Template.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2302" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A01-VB_MakeVM_Template.png.af83da3f27eb2d236b7220ea24618b1a.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2303" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A02-VB_CreateVirtHD.png.d2cbc536655523a541d7a73b6642ba32.png" rel="" data-fileext="png"><img alt="0A02-VB_CreateVirtHD.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2303" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A02-VB_CreateVirtHD.png.d2cbc536655523a541d7a73b6642ba32.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2304" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A03-VB_VMSettingsMenuDrop.png.88d78342317db83b3f83ed267c5215a9.png" rel="" data-fileext="png"><img alt="0A03-VB_VMSettingsMenuDrop.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2304" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A03-VB_VMSettingsMenuDrop.png.88d78342317db83b3f83ed267c5215a9.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2305" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A04-VB_StorageSettingsCD.png.dd2dfdf6664c451cab5fa6ea68caf39e.png" rel="" data-fileext="png"><img alt="0A04-VB_StorageSettingsCD.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2305" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A04-VB_StorageSettingsCD.png.dd2dfdf6664c451cab5fa6ea68caf39e.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2306" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A05-Mount_ISO.png.f0b4edad1d24765007ea1e278b31e385.png" rel="" data-fileext="png"><img alt="0A05-Mount_ISO.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2306" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A05-Mount_ISO.thumb.png.9674733da23fc3b139f991c4dcdd1c10.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2307" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A06_ISO_Mounted.png.125d0c6c12dc0c58058138d661802e33.png" rel="" data-fileext="png"><img alt="0A06_ISO_Mounted.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2307" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A06_ISO_Mounted.png.125d0c6c12dc0c58058138d661802e33.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2308" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A07-StartVM_forOSInstall.png.01a1372aa7108c70583f32f12d09a922.png" rel="" data-fileext="png"><img alt="0A07-StartVM_forOSInstall.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2308" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A07-StartVM_forOSInstall.png.01a1372aa7108c70583f32f12d09a922.png"></a>
</p>

<p>
	Now the install process for Windows begins.
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2309" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A08-VM_Win2016Inst_01.png.3c857447689683ba5f0167a548dc13ef.png" rel="" data-fileext="png"><img alt="0A08-VM_Win2016Inst_01.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2309" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A08-VM_Win2016Inst_01.thumb.png.677adfeb863b19d3d4a05d91b0253729.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2310" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A09_VB_SelectOSInstall.png.b28a7f65af7f87cf953d790fe56b8643.png" rel="" data-fileext="png"><img alt="0A09_VB_SelectOSInstall.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2310" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A09_VB_SelectOSInstall.thumb.png.24bfc6b967a32fd2678de304499944de.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2311" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A10_WinInstallType_Custom.png.c207ef3299b02252a5814bbc12b52e7f.png" rel="" data-fileext="png"><img alt="0A10_WinInstallType_Custom.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2311" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A10_WinInstallType_Custom.thumb.png.8231ff8ce07c7e0db5a2a7bba27df47a.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2312" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A11_WhereInstallDriveSelect.png.502f49306e8ccf4150a6fd1719c9c9d9.png" rel="" data-fileext="png"><img alt="0A11_WhereInstallDriveSelect.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2312" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A11_WhereInstallDriveSelect.thumb.png.5a50a9b658a882fa7c66eb6f5f82fa44.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2313" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A12_InstallerProgressDetails.png.2b39235ab81616a4efb37f9aaaefcb90.png" rel="" data-fileext="png"><img alt="0A12_InstallerProgressDetails.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2313" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A12_InstallerProgressDetails.thumb.png.24ebdfa8f07b0f61dbc33dfd21d08616.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2314" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A13_AfterReboot-SetLocalAdminPass.png.c87e2f29b87b42f0da7ff3782f68218a.png" rel="" data-fileext="png"><img alt="0A13_AfterReboot-SetLocalAdminPass.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2314" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A13_AfterReboot-SetLocalAdminPass.thumb.png.39c3535d454974563e5eb6e40099b3bc.png"></a>
</p>

<p>
	End of the Windows install process.  Let us login to this VM.
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2315" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A14_WindowsLogin_LocalAdmin.png.6a0300653952101db8b12564f0b18c07.png" rel="" data-fileext="png"><img alt="0A14_WindowsLogin_LocalAdmin.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2315" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A14_WindowsLogin_LocalAdmin.thumb.png.6273fa7cef6c3613d5e16655dfd2e770.png"></a>
</p>

<p>
	Minimize Server Manager for now.  We do not want to add any roles or features yet.
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2316" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A15_ServerManagerConsole.png.9bef48151f68a03770c7ea93f29a7116.png" rel="" data-fileext="png"><img alt="0A15_ServerManagerConsole.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2316" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A15_ServerManagerConsole.thumb.png.3dda1b4578b2065ca1f5e6218cf2e865.png"></a>
</p>

<p>
	 
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2328" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A16_Desktop_LE-Version.jpg.2a1c55f68252db9a3204b06e3a4e57f1.jpg" rel="" data-fileext="jpg"><img alt="0A16_Desktop_LE-Version.jpg" class="ipsImage ipsImage_thumbnailed" data-fileid="2328" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A16_Desktop_LE-Version.thumb.jpg.b0ba80228e9513e048ca064c2bf9e63a.jpg"></a>
</p>

<p>
	Clicking the Settings Gear, we want to install Updates for our Template OS.
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2317" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A17_WindowsUpdates_Server2016.png.2d60b91b005d7df312cdda48ca216da5.png" rel="" data-fileext="png"><img alt="0A17_WindowsUpdates_Server2016.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2317" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A17_WindowsUpdates_Server2016.thumb.png.d9a3d4f19369104127811e0e60b8dfed.png"></a>
</p>

<p>
	This will likely take quite some time.  Better to do it now than to need patching every other machine we make as well.
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2318" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A18_PatchesInstallingWinUpdates.png.3e8b2d2bfd8a84bc9de0b2d66a4c1824.png" rel="" data-fileext="png"><img alt="0A18_PatchesInstallingWinUpdates.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2318" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/0A18_PatchesInstallingWinUpdates.thumb.png.e58e816920b725885fbd75bde819fec5.png"></a>
</p>

<p>
	Install the most recent windows update patches, reboot and log back in.  Once the patches finish, shut this VM down.  Avoid booting this VM into windows, since it will be our Source VM for new instances.<br>
	Then back on the Oracle VirtualBox VM Manager, go to Settings for your VM, then Network.  Change the Attached to from NAT to 'Internal Network'.  You can make a custom name for 'intnetLab01' for ease of reference later, if you expand your VM labs.  This setting will allow all the other VMs we spawn to communicate with each other.  If you forget to do this step later for other VMs, come back here if you wonder why your VM cannot see the Active Directory Domain Controller.
</p>

<p>
	Clone machine image prompts:
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2319" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/01-VB_CloneVM.png.9d71916b5920b5de0ef383509d3a8e15.png" rel="" data-fileext="png"><img alt="01-VB_CloneVM.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2319" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/01-VB_CloneVM.png.9d71916b5920b5de0ef383509d3a8e15.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2320" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/01-VB_CloneVM_MenuDrop.png.e810ae91cfe1ee21b94dbd5a517570a6.png" rel="" data-fileext="png"><img alt="01-VB_CloneVM_MenuDrop.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2320" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/01-VB_CloneVM_MenuDrop.png.e810ae91cfe1ee21b94dbd5a517570a6.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2321" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/02-VB_formCloneVM.png.ad923426e579fbc9220c5804a0ff28a5.png" rel="" data-fileext="png"><img alt="02-VB_formCloneVM.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2321" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/02-VB_formCloneVM.png.ad923426e579fbc9220c5804a0ff28a5.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2322" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/03-VB_NamedClone.png.5d57ab8a11172cfb738fc8cee83a5256.png" rel="" data-fileext="png"><img alt="03-VB_NamedClone.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2322" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/03-VB_NamedClone.png.5d57ab8a11172cfb738fc8cee83a5256.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2323" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/04-VB_FullCloneOpt.png.d630eb9987390acdae6da68177eb3e60.png" rel="" data-fileext="png"><img alt="04-VB_FullCloneOpt.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2323" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/04-VB_FullCloneOpt.png.d630eb9987390acdae6da68177eb3e60.png"></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2324" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/05-WaitCloning_Progress.png.605e090d47d2a3cb458d37bc985309b4.png" rel="" data-fileext="png"><img alt="05-WaitCloning_Progress.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2324" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/05-WaitCloning_Progress.png.605e090d47d2a3cb458d37bc985309b4.png"></a>
</p>

<p>
	With all of this done, let's make a clone of this VM.  We will name this Clone 'WinDC01_testFTB' or the like, as it will be the Primary Domain Controller for our Windows Domain.  Be sure to check the 'Reinitialize the MAC address of all network cards' because you do not want the same MAC address trying to talk to another computer.  That would also cause issues with DHCP and all sorts of networking issues you do not want.  
</p>

<p>
	You do want to make it a Full Clone instead of a linked clone.  Wait for the clone process to finish, then boot up your newly spun 'WinDC01_testFTB' VM.
</p>

<p>
	Log in to the desktop.  Before you get started making this a domain controller, we want to SysPrep this machine.  The action of this command will make it seem like a new windows install with the most important result being it will have a new SID / Windows Install ID.  As you dig into active directory, you will see AD links the machine name to it's install ID / SID as a unique identifier.  If that didn't make a lot of sense, know that running Sysprep will allow us to join each of our copied VMs into this test domain, without machine conflict issues.
</p>

<p>
	Click Start and then Run cmd.exe.  If it's not prefixed with 'Administrator: Command Prompt' in the title bar, click Start, type cmd then right-click to Run As Administrator.<br>
	In this prompt type:
</p>

<pre class="ipsCode">
cd %systemroot%\system32\sysprep</pre>

<p>
	then type:
</p>

<pre class="ipsCode">
sysprep /generalize /oobe</pre>

<p>
	<br>
	A brief prompt will come up as it prepares your install then it will shut down the VM.  Once that happens, start the VM back up and it will take you through a prompt similar to when you installed the OS.  Once done, you will be back at the desktop.  If it asks for an Administrator password again, take note of what you use and write it down.  You are welcome to use the Haddaway example from above again.<br>
	Jumping back to the Sysprep process, you will need to do this for each image you clone from your VM template.  I also wanted to mention %systemroot% that is an environmental variable in Windows.  If you get to writing scripts, environmental variables are quite the blessing to your sanity.  You can use them in powershell to some extent also, so the fun pays off there.<br>
	Final ramble about SysPrep.  If you try to do this on an Image that had AD Roles and Features installed, it will likely not re-activate the 180 day trial for Windows Server and if it was an AD services image, it will likely error on the sysprep process.  That's why we have our base image <span class="ipsEmoji">🙂</span>
</p>

<p>
	Let's wrap this up getting you a domain created.  Starting off, let's set this machine to have a Static IP Address.  In the TaskBar down in the lower right by the Time, right-click the Network icon and then click 'Connections': Ethernet.  On the Ethernet status page, click Properties then Internet Protocol Version 4 (TCP/IPv4)  In the screencap you can see I went with:<br>
	10.0.2.10 on a /24 Subnet (AKA 255.255.255.0)<br><a class="ipsAttachLink ipsAttachLink_image" data-fileid="2325" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/20-NetworkSettings_Ethernet.png.e3fb56b5f123fea9b7c68d1c5964c31c.png" rel="" data-fileext="png"><img alt="20-NetworkSettings_Ethernet.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2325" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/20-NetworkSettings_Ethernet.thumb.png.839d2ca7ff9194eb0a3b6c2b90ff1873.png"></a>
</p>

<p>
	Pick a default gateway that will be the same for all other VMs made, intended to connect to this AD setup.<br>
	For the DNS, I put it's own IP but 127.0.0.1 (loopback) works too.  If and when you add a second DNS and AD Server, I highly advise making your second DNS server be the IP of that other DC.  It will make domain fail-over really easy and reliable if you shut down your primary DC or practice a patching cycle like as would be done in a production setting.<br><a class="ipsAttachLink ipsAttachLink_image" data-fileid="2326" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/21-IPSettings_Ethernet.png.fb1a08dccecfff2674eb4386151c04fb.png" rel="" data-fileext="png"><img alt="21-IPSettings_Ethernet.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2326" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/21-IPSettings_Ethernet.png.fb1a08dccecfff2674eb4386151c04fb.png"></a>
</p>

<p>
	Another good thing to do, is Changing the Computer Name.  By default it will be something like 'WIN-StringofTextandNumbers'.  For sanity's sake you can rename this to 'WinDC01FTB' or something more descriptive.  To change the computer name, bring up an Explorer window then right-click on 'This PC' then select Properties.  Click Change Settings to change the Computer name, then reboot as it will ask you to do.
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="2327" href="https://funtimebliss.com/forums/uploads/monthly_2018_07/22-SystemPCName.png.eaa4103c9b2ad14ec66d98ddcdc9b9e7.png" rel="" data-fileext="png"><img alt="22-SystemPCName.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2327" src="https://funtimebliss.com/forums/uploads/monthly_2018_07/22-SystemPCName.png.eaa4103c9b2ad14ec66d98ddcdc9b9e7.png"></a>
</p>

<p>
	When you run the AD wizard without setting a static IP address, it will give you a warning about resolution issues.  So that's why we took care of that before using the Server Manager to add roles and features.  Take my word on it being annoying to change a computer name, once you add roles and services.  Planning to do the PC name change before adding roles will save you headaches.
</p>

<p>
	Since we are in VirtualBox, select Devices menu then the 'Insert Guest Additions CD Image' if you would like to use options such as 'Shared Clipboard' and 'Drag and Drop' files.  Once the image is mounted in your VM, run the installer from it's CD drive then reboot when it's finished as it will prompt.  This is helpful for when you want to get or send files and text to the VM and your actual desktop machine.  Unless you like manually retyping scripts, I'd suggest adding these Guest Addons.<br>
	 
</p>

<p>
	Wrapping this guide up, I am pivoting to a helpful guide for Installing AD Services:<br><a href="http://www.rebeladmin.com/2016/10/step-step-guide-setup-active-directory-windows-server-2016/" rel="external nofollow">http://www.rebeladmin.com/2016/10/step-step-guide-setup-active-directory-windows-server-2016/</a><br>
	Jump to Step 4 and it will show you click for click on adding the Active Directory Domain Services under Server Manager | Roles and Features.
</p>

<p>
	I am going to present a bit of a shortcut / cheat.  Instead of clicking lots of next boxes, we can supply the config options by use of Powershell.  The below is the script I saved from the Wizard when it presented 'Export Configuration Settings'.  You can run this in a Powershell ISE window or save it to a text file and add a .ps1 on the name to make it a powershell script.<br><br>
	If you get an error, be sure the AD Directory Services modules are installed. </p><pre class="ipsCode">Install-WindowsFeature AD-Domain-Services</pre><p> will run the PowerShell so you don't have to add it by using the server administration wizard.
</p>

<pre class="ipsCode">
#
# Windows AD DS Deployment
#
Import-Module ADDSDeployment
Install-ADDSForest `
-CreateDnsDelegation:$false `
-DatabasePath "C:\Windows\NTDS" `
-DomainMode "WinThreshold" `
-DomainName "hivelan.int" `
-DomainNetbiosName "HIVELAN" `
-ForestMode "WinThreshold" `
-InstallDns:$true `
-LogPath "C:\Windows\NTDS" `
-NoRebootOnCompletion:$false `
-SysvolPath "C:\Windows\SYSVOL" `
-Force:$true
</pre>

<p>
	This should let you spawn your Domain as if you entered these values in the Wizard.  In this setup we are calling the domain 'Hivelan.int', with a classic domain name of just Hivelan (for Window NT level old support).  On a reboot you should be able to login to the Domain you just created.
</p>

<p>
	From here, the virtual domain is your oyster.  You can make another clone of your Template machine, sysprep it, then join it to the domain.  Since we didn't add the DHCP Server role to the current DC, go into your IP options and set all the IP info the same, except the IP address where you want the last octet (4th block of 3 digits) to be different than .10.<br>
	Then once on the same IP Space (your 255.255.255.0 subnet, means you can have an IP of 10.0.2.1 - 10.0.2.254).  Go into System Properties on this new VM.  Change your Computer name if you wish but the real objective is to change from a Workgroup to a Domain.  Enter 'Hivelan.int' as your domain and it should prompt for the Administrator account and Password.  You can always make a second domain admin account if you wish, but that boils into using Active Directory Users and Computers in Administrative Tools.
</p>

<p>
	Once you add this machine to the domain and reboot, jump back into the Server Manager to add the Active Directory Domain Services on this machine, but we will say 'Add to an existing domain'.  Click Next until it's finished.
</p>

<p>
	This guide got a little longer than I intended but I will stop here for the time being.  You can then make another clone of your Template VM and use that as a machine not on the domain.  Give it an IP address in the allotted space and you can use that for running Wireshark to see what kind of traffic you see.  You can then add that machine to the domain or make another VM clone to see how the traffic differs for a machine that is added to the domain.
</p>

<p>
	Hopefully that helped get you into a test Windows environment and gave some help on getting started with VirtualBox.  If you have the funding and another Virtual Machine platform you like more (like XenServer or VMware), most of the concepts and options should be transferable and have similar naming.
</p>

<p>
	 
</p>]]></description><guid isPermaLink="false">5332</guid><pubDate>Mon, 23 Jul 2018 19:06:54 +0000</pubDate></item><item><title>Pi-Hole</title><link>https://funtimebliss.com/forums/index.php?/topic/5299-pi-hole/</link><description><![CDATA[<p>
	Pi Rasperry Pi-Hole config quide:<br>
	Howdy and welcome to another thread.  I have a history of not being a fan of advertisements and do not run those banners on this site.  Besides a security concern, I think advertisement gets really creepy online.<br><a href="https://pi-hole.net/" rel="external nofollow">Pi-Hole is an Operating System</a> with dns capabilties and use of adblocking lists.  The added benefit of the request being denied even without plugin-based web browsing, is pretty handy.
</p>

<p>
	Before you install, be sure if you are using a RaspberryPi or whatever device, that your user password is one of your own.  You do not want to go default with your LAN traffic.  If you wanna log a fun time, you can use one of these for short-term logging a little CTF monitoring style.  Logs are configured to purge after a few days on your standard Pi-Hole install. Please be sure to update your OS image with latest patches via said package manager.  In my case I set the primary network connection to a static address.  I have the service connection IP address details to use the actual router as DNS server.  Since all your other network DNS will be set to the fixed IP Address you bound to your Pi-Hole installed device.<br>
	SSH is likely disabled.  I like to administer my SSH session by serial to usb in the case of my Raspberry Pi installs.
</p>

<p>
	Follow the install guide and advisory on their site about the bash | pipe install.  Quick comes at a trade off when you do not review the install process part for part.  If you go for the easy install and read the disclaimer, you can run the single line install:
</p>

<pre class="ipsCode">
curl -sSL https://install.pi-hole.net | bash</pre>

<p>
	This thread is for administering and keeping yours updated, as with my configuration I ran into update issues using just the one connection.  Details ahead cover enabling a second connection to fetch updates, since you will have the primary network connection with a set IP address that handles DNS requests handed off from your router / main DNS device on your network.
</p>

<p>
	To do updates to the OS and Pi-Hole local web services device / OS, I disable the service network connection to resolve conflicts of web requests to get out locally.  All the LAN clients will be fine getting pages.  In this case, I suspect the localhost calls in the Pi-Hole logs relate to my network layout and the device being bound to serve back to itself.  When logged into the [deviceIP]/admin configuration page I would also get failures to resolve list update servers.
</p>

<p>
	Having plugged in a second USB NIC or using Wireless as an update connection, I ran the following commands to handle my network adapters.  Turning off the static address service NIC. In most cases likely eth0 as shown below
</p>

<pre class="ipsCode">
sudo ifconfig eth0 down</pre>

<p>
	<br>
	Do some pings and the like to see they should now resolve.  Do your updates etc for the OS.  In my case, Raspbian on a Pi 3.
</p>

<p>
	Once those finish, load up the Web Admin panel for your Pi-hole install. Get your ip address for the active network connection with:
</p>

<pre class="ipsCode">
ifconfig</pre>

<p>
	<br>
	Connect to that IP address in a web browser and add '/admin' into the address bar at the end of the IP Address without the quotes around the path.
</p>

<p>
	Login with your admin password to the admin panel and you should now be able to see updates are pending.  You need to start with the FTL update.  To do this, return to your SSH session.  As I mentioned I am working with serial over USB, but you can enable SSH over network if you so desire.  One more service for a network heavy component, so choose of your own accord in concern to security to conveinence.<br>
	On that SSH console, run:
</p>

<pre class="ipsCode">
pihole -up</pre>

<p>
	<br>
	Wait for the updater to get and deploy the new FTL version.  You will likely also be treated to the Web Interface and Pi-Hole version also being to current revisions.  Great!  Almost updated and running live AdBlocking again.<br>
	Still on your console, seeing the update completed you want to turn back on the main network connection we disabled for updating.
</p>

<pre class="ipsCode">
sudo ifconfig eth0 up</pre>

<p>
	Overviewing network setup above:<br>
	Main Internet router will be your DNS server on the Pi-Hole device.  Manually set client DNS or change your DHCP server to set client DNS to the static address of your Pi-Hole install. (192.168.0.1 default-ish router)  Check your current IP config to get details if you do not know current network base configuration.<br>
	On the Pi-Hole install, set the primary network adapter to an address in that subnet (say 192.168.0.10)  Make sure DHCP server /or/ router will not also try to assign that address in it's pool.  The Pi-Hole DNS primary will be set to your local router (as above default-ish router 192.168.0.1)
</p>

<p>
	I hope to have avoided huge gaps or inflected confusion in this thread. Jolly adblocking.  Even if you like making money from it, you have to know it is a vulnerable vector and kind of a shaky market.  I'm not here to tell you what to do, I'm sharing details to help block them on places that run them without respect to visitors.
</p>]]></description><guid isPermaLink="false">5299</guid><pubDate>Wed, 20 Sep 2017 04:20:12 +0000</pubDate></item><item><title>Windows 10 patch cycles</title><link>https://funtimebliss.com/forums/index.php?/topic/5376-windows-10-patch-cycles/</link><description><![CDATA[<p>
	Here is a thread to share any notable changes or concerns with Windows 10 or recent server builds.  I start the thread with <a href="https://en.wikipedia.org/wiki/Windows_10_version_history" rel="external nofollow">10.0.17763.437 version of Windows 10</a>.  Two things jump out upon installing patches:
</p>

<ul><li>
		“This app is no longer available.” message comes up about CPUID CPU-Z. I had version 1.80.0 installed.  Latest is version 1.88.0 and updating should have resolved that.<br>
		Still, the <a href="https://www.thewindowsclub.com/this-app-is-no-longer-available-windows-10" rel="external nofollow">app removal feature of Windows 10</a> seems to be quite old based off the 2015 date for the build listed in the WindowsClub link from Version 1511.
	</li>
	<li>
		In my Taskbar applications, one of my pinned files said it was missing.  Browsing to the path opened the file fine.<br>
		To resolve, I removed the existing pinned filename, then I just dragged the icon for the file down to the taskbar shortcut and had a 'Pin to AppName' option that applied when I let go of the mouse button.
	</li>
</ul><p>
	 
</p>

<p>
	For point of reference I wanted to confirm what recent updates installed on my PC.  We could do it via Add/Remove programs and view them by date but we out here trying to notate this, so let's run some PowerShell.
</p>

<p>
	 
</p>

<pre class="ipsCode">
Get-Hotfix</pre>

<p>
	Running this will give similar formatted results.
</p>

<p>
	 
</p>

<pre class="ipsCode prettyprint lang-lua prettyprinted">
<span class="pln">Source        Description      HotFixID      InstalledBy          InstalledOn
</span><span class="com">------        -----------      --------      -----------          -----------              </span><span class="pln">
COMPYX86      Update           KB4483452     NT AUTHORITY</span><span class="pun">\</span><span class="pln">SYSTEM  </span><span class="lit">4</span><span class="pun">/</span><span class="lit">13</span><span class="pun">/</span><span class="lit">2019</span><span class="pln"> </span><span class="lit">12</span><span class="pun">:</span><span class="lit">00</span><span class="pun">:</span><span class="lit">00</span><span class="pln"> AM
COMPYX86      Update           KB4462930     NT AUTHORITY</span><span class="pun">\</span><span class="pln">SYSTEM  </span><span class="lit">4</span><span class="pun">/</span><span class="lit">13</span><span class="pun">/</span><span class="lit">2019</span><span class="pln"> </span><span class="lit">12</span><span class="pun">:</span><span class="lit">00</span><span class="pun">:</span><span class="lit">00</span><span class="pln"> AM
COMPYX86      Security Update  KB4493478     NT AUTHORITY</span><span class="pun">\</span><span class="pln">SYSTEM  </span><span class="lit">4</span><span class="pun">/</span><span class="lit">13</span><span class="pun">/</span><span class="lit">2019</span><span class="pln"> </span><span class="lit">12</span><span class="pun">:</span><span class="lit">00</span><span class="pun">:</span><span class="lit">00</span><span class="pln"> AM
COMPYX86      Security Update  KB4493510     NT AUTHORITY</span><span class="pun">\</span><span class="pln">SYSTEM  </span><span class="lit">4</span><span class="pun">/</span><span class="lit">13</span><span class="pun">/</span><span class="lit">2019</span><span class="pln"> </span><span class="lit">12</span><span class="pun">:</span><span class="lit">00</span><span class="pun">:</span><span class="lit">00</span><span class="pln"> AM
COMPYX86      Security Update  KB4493509     NT AUTHORITY</span><span class="pun">\</span><span class="pln">SYSTEM  </span><span class="lit">4</span><span class="pun">/</span><span class="lit">13</span><span class="pun">/</span><span class="lit">2019</span><span class="pln"> </span><span class="lit">12</span><span class="pun">:</span><span class="lit">00</span><span class="pun">:</span><span class="lit">00</span><span class="pln"> AM</span></pre>

<p>
	Side note to add links for that Get-Hotfix syntax at <a href="https://ss64.com/ps/get-hotfix.html" rel="external nofollow">SS64</a> and <a href="https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/get-hotfix?view=powershell-5.1" rel="external nofollow">Microsoft Module Documentation</a>.  There are some nice flags on there, especially for managing multiple machines.<br><br>
	Oh hey. My laptop installed the same 5x updates and also prompted me with a '<u>Welcome to the October Update</u>' banner in Edge. Keep in mind I deliberately change my home machines to <strong>Semi-Annual Channel</strong> that means 'ready for widespread use in organizations' instead of the default Advanced Updates setting for <strong><em>Semi-Annual Channel (Targeted)</em></strong> that means updates are ready for 'most people', as that namely tends to mean Public Test Channel.<br><br>
	Perhaps one of those 5 updates invoked the compatibility check feature to run again but I will stop here for now, since that is a good jump off point.
</p>]]></description><guid isPermaLink="false">5376</guid><pubDate>Sat, 13 Apr 2019 15:28:23 +0000</pubDate></item><item><title>Remove meta data from videos</title><link>https://funtimebliss.com/forums/index.php?/topic/5375-remove-meta-data-from-videos/</link><description><![CDATA[<p>
	I have some threads about removing metadata exif info from images with <a href="https://www.sno.phy.queensu.ca/~phil/exiftool/" rel="external nofollow">exiftool by Phil Harvey</a> but if you try this on some .mp4 videos, you may find the details are still present.<br><br>
	In this case, if you have a DJI drone, I highly suggest checking the exifdata.  GPS and all sorts of other data is present and you may very well want to remove that from any content you upload.<br><br>
	Remove exiftool metadata:<br></p><pre class="ipsCode">ffmpeg -i in.mov -map_metadata -1 -c:v copy -c:a copy out.mov</pre><p><br><br>
	Once this finished, run Exiftool again to confirm that sea of data, is now much smaller than it was previously.  For extra fun and confirmation, look for DJI_ images and have fun confirming GPS coordinates from those photos or videos to GPS coordinates on Google Maps.
</p>]]></description><guid isPermaLink="false">5375</guid><pubDate>Thu, 28 Mar 2019 01:52:21 +0000</pubDate></item><item><title>grub-efi-amd64 error OS Install</title><link>https://funtimebliss.com/forums/index.php?/topic/5374-grub-efi-amd64-error-os-install/</link><description><![CDATA[<p>
	Howdy. I wanted to share some issues I am having installing Parrot OS.  Long story short, the partition tables are being setup wrong to allow Grub to install.  If you search for <strong>grub-efi-amd64 error</strong> you may see people suggest rebooting and selecting the non-UEFI usb boot to install.  This turns out to fail too.<br><br>
	What we want, is a drive with:<br>
	1st partition: bios_grub<br>
	2nd partition: boot, esp (EFI is esp based drive)<br><br>
	Your OS partition and other partition choices are yours.  Be it one for OS and another for Swap, or carve out a dedicated /home partition.  A buddy told me a dedicated home partition makes life easier if you have a multi-boot linux environment config where you want home directory data to be shared between each Operating System running a Linux-based OS.<br><br>
	This guide on is very nice and detailed <a href="https://blog.heckel.xyz/2017/05/28/creating-a-bios-gpt-and-uefi-gpt-grub-bootable-linux-system/" rel="external nofollow">partition layout and configuration for GRUB</a>.  It also show us how using gdisk or fdisk -l will show the defined parition configuration.
</p>

<pre class="ipsCode prettyprint lang-css prettyprinted">
<span class="pln">gdisk -l </span><span class="pun">/</span><span class="pln">dev</span><span class="pun">/</span><span class="pln">yourDrive</span></pre>

<p>
	to cross reference the raw partition values to what you may see in Gparted.<br><br>
	Partition results should look similar to below:
</p>

<pre class="ipsCode prettyprint lang-c">
Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048          292863   142.0 MiB   EF02  
   2          292864         2390015   1024.0 MiB  EF00  
   3         2390016       275019775   130.0 GiB   8300  
   4       275019776       288692223   6.5 GiB     8200  </pre>]]></description><guid isPermaLink="false">5374</guid><pubDate>Fri, 15 Mar 2019 12:31:04 +0000</pubDate></item><item><title>Forum Intro (Security Events)</title><link>https://funtimebliss.com/forums/index.php?/topic/3859-forum-intro-security-events/</link><description><![CDATA[<p>Think of this sub-forum as the <a href="https://funtimebliss.com/forums/index.php?showtopic=3669" rel="">Summer (in)security thread</a>, but as this forum will display newest posts 1st, it will be vastly easier to keep on current dialog, without jumping through prior posts to current.</p>
<p> </p>
<p>I have been a fan of combing information security news and rss feeds for years. Largely because if a flaw is unknown then it gets a published release, you can bet it will be more commonly used against that package or program. Keeping up on things helps prevent intrusions and unscheduled downtime, as that is my intent to avoid dealing with both issues. As usual I will add some dialog and overview to the articles, to save you time reading them all, and possibly getting a chuckle out in the process.</p>]]></description><guid isPermaLink="false">3859</guid><pubDate>Fri, 27 Jun 2014 13:11:55 +0000</pubDate></item><item><title>Powershell Log collection</title><link>https://funtimebliss.com/forums/index.php?/topic/5342-powershell-log-collection/</link><description><![CDATA[<p>
	I have been doing a bit of powershell to configure and interact with various Windows versions.  I built up some core scripts to use as my own kind of workshop for system review and administration.  I wanted to drop an example script to chat about.<br><br>
	One of the things I struggled to understand starting out was string substitution and being able to define a variable that would also consistently output to a file path of my choosing.  TL;DR on that resolution is to wrap the other variable you are calling (example: file paths) in a $() block.  As seen below, I call my Computername environmental variable so it can be used in the output of file names and logs.<br>
	 
</p>

<pre class="ipsCode prettyprint lang-c prettyprinted" id="ips_uid_8080_7" style="">
<span class="com"># getEventLogs: Maintenance collection script.</span><span class="pln">

$boxName </span><span class="pun">=</span><span class="pln"> $env</span><span class="pun">:</span><span class="pln">COMPUTERNAME
$outEvt01 </span><span class="pun">=</span><span class="pln"> </span><span class="str">".\$($boxName)_EventLog_Apps.csv"</span><span class="pln">
$outEvt02 </span><span class="pun">=</span><span class="pln"> </span><span class="str">".\$($boxName)_EventLog_System.csv"</span><span class="pln">
$outSvc01 </span><span class="pun">=</span><span class="pln"> </span><span class="str">".\$($boxName)_Service-RunStates.log"</span><span class="pln">
$outPorts01 </span><span class="pun">=</span><span class="pln"> </span><span class="str">".\$($boxName)_Network-Ports.log"</span><span class="pln">
$outTask01 </span><span class="pun">=</span><span class="pln"> </span><span class="str">".\$($boxName)_Tasklist.log"</span><span class="pln">
$outSchTsk01 </span><span class="pun">=</span><span class="pln"> </span><span class="str">".\$($boxName)_Scheduled-Tasks.log"</span><span class="pln">
</span><span class="typ">Filter</span><span class="pln"> timestamp </span><span class="pun">{</span><span class="str">"Logs collected at $(Get-Date -Format "</span><span class="pln">yyyy</span><span class="pun">-</span><span class="pln">MM</span><span class="pun">-</span><span class="pln">dd HH mm ss</span><span class="str">")"</span><span class="pun">}</span><span class="pln">

</span><span class="com"># Application Event Log most recent 100 messages.</span><span class="pln">
</span><span class="typ">Get</span><span class="pun">-</span><span class="typ">EventLog</span><span class="pln"> application </span><span class="pun">-</span><span class="pln">newest </span><span class="lit">100</span><span class="pln"> </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Export</span><span class="pun">-</span><span class="typ">Csv</span><span class="pln"> $outEvt01
timestamp </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Out</span><span class="pun">-</span><span class="typ">File</span><span class="pln"> </span><span class="pun">-</span><span class="typ">Append</span><span class="pln"> $outEvt01 </span><span class="pun">-</span><span class="typ">Encoding</span><span class="pln"> ASCII
</span><span class="typ">Get</span><span class="pun">-</span><span class="typ">EventLog</span><span class="pln"> system </span><span class="pun">-</span><span class="pln">newest </span><span class="lit">100</span><span class="pln"> </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Export</span><span class="pun">-</span><span class="typ">Csv</span><span class="pln"> $outEvt02
timestamp </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Out</span><span class="pun">-</span><span class="typ">File</span><span class="pln"> </span><span class="pun">-</span><span class="typ">Append</span><span class="pln"> $outEvt02 </span><span class="pun">-</span><span class="typ">Encoding</span><span class="pln"> ASCII

</span><span class="com"># Collect service list and current state of each.</span><span class="pln">
</span><span class="typ">Get</span><span class="pun">-</span><span class="typ">Service</span><span class="pln"> </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Sort</span><span class="pun">-</span><span class="typ">Object</span><span class="pln"> status </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Format</span><span class="pun">-</span><span class="typ">Table</span><span class="pln"> </span><span class="pun">-</span><span class="typ">AutoSize</span><span class="pln"> </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Out</span><span class="pun">-</span><span class="typ">File</span><span class="pln"> $outSvc01
timestamp </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Out</span><span class="pun">-</span><span class="typ">File</span><span class="pln"> </span><span class="pun">-</span><span class="typ">Append</span><span class="pln"> $outSvc01

</span><span class="com"># Get process list with relevant details at time of script exec.</span><span class="pln">
cmd </span><span class="pun">/</span><span class="pln">c netstat </span><span class="pun">-</span><span class="pln">aon </span><span class="pun">&gt;</span><span class="pln"> $outPorts01
timestamp </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Out</span><span class="pun">-</span><span class="typ">File</span><span class="pln"> </span><span class="pun">-</span><span class="typ">Append</span><span class="pln"> $outPorts01

cmd </span><span class="pun">/</span><span class="pln">c tasklist </span><span class="pun">&gt;</span><span class="pln"> $outTask01
timestamp </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Out</span><span class="pun">-</span><span class="typ">File</span><span class="pln"> </span><span class="pun">-</span><span class="typ">Append</span><span class="pln"> $outTask01

</span><span class="typ">Get</span><span class="pun">-</span><span class="typ">ScheduledTask</span><span class="pln"> </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Select</span><span class="pln"> </span><span class="typ">TaskName</span><span class="pun">,</span><span class="pln"> </span><span class="typ">State</span><span class="pun">,</span><span class="pln"> </span><span class="typ">TaskPath</span><span class="pln"> </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Sort</span><span class="pun">-</span><span class="typ">Object</span><span class="pln"> </span><span class="pun">-</span><span class="typ">Property</span><span class="pln"> </span><span class="typ">TaskPath</span><span class="pln"> </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Format</span><span class="pun">-</span><span class="pln">table </span><span class="pun">-</span><span class="pln">wrap </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Out</span><span class="pun">-</span><span class="typ">File</span><span class="pln"> $outSchTsk01
timestamp </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Out</span><span class="pun">-</span><span class="typ">File</span><span class="pln"> </span><span class="pun">-</span><span class="typ">Append</span><span class="pln"> $outSchTsk01

</span><span class="com"># Wrap all these output into update state / append single file.</span><span class="pln">

</span><span class="com"># Stamp date and Time into said merged output.</span></pre>

<p>
	<br><br>
	Starting out at the top, I defining a variable for the powershell equivalent of environmental variables in the OS like %computername%.  Trust me here, you don't want to try and call a %variable% in a powershell script.  That's what line 1 is for.<br><br>
	Each of the following defined variables are my output paths for the collections.  I use .csv exports for larger data sets, since the default Table outputs can heavily chop data to fit the terminal output.<br><br>
	Brief OCD DBA note.  Being a fan of Databases and Microsoft SQL, I really value a good | (pipe) to run:
</p>

<pre class="ipsCode prettyprint lang-c prettyprinted" id="ips_uid_8080_5" style="">
<span class="pun">|</span><span class="pln"> </span><span class="typ">Select</span><span class="pln"> </span><span class="pun">*</span></pre>

<p>
	<br>
	after a command.  You can filter that raw output for fields you want to have outputted by writing a custom Select pipe.  There is an example of that for Scheduled Tasks, I just wanted to word out the logic as that took me some time to figure out that is how I can see what my options are for selecting output fields.<br><br>
	The other variables for file path are so I do not have to add the same string twice or more.  As you can see on the actual commands, I add an Out-File -Append to insert the Date string to each file.<br><br>
	Filter timestamp is my means for defining the date output string.  That time will be for when the script is run, so each file will have a matching output time.  Think of filter in this context as an easier Function.<br><br>
	The rest of the script uses either Powershell cmdlets or OS level commands to obtain the data I am looking for and saving to the output files.  I experimented both ways to see what output best matches the task and output I want to work with.
</p>

<p>
	The Export Events logs are pretty simple in calling the 100 most recent events, saving that to a .csv, then adding the Date string at the end of said file.<br><br>
	Service list is sorted and exported to a .log file with the Date string added (as the date will be added for the other 4 output files as well).<br><br>
	' cmd /c ' calls a windows command but ignores keywords for powershell on that line.  Huge helpful thing to know when trying to process content by use of an OS-level command.  Otherwise you will see really esoteric issues you would rather not have to figure out the secret means of why they are failing.  cmd /c is quite nice.  FYI.<br><br>
	Neat.  We are at the part I rambled above in relation to databases and filtering content.  I did not need many of the details in the raw output from showing all the parameters of that Powershell cmdlet.  Selecting the relevant fields, I then sort based on the TaskPath field (to put the non-OS tasks first in the list), apply a -wrap text for the Format-Table output of that cmdlet, then output the data into a local file.<br><br>
	I have done some scripts with loop and condition evaluations but I will stop here for the moment.  If you want to gather some information about an environment, hopefully this example gets you in the right direction for your data collections.<br><br>
	Let me end with a <a href="https://ss64.com/ps/where-object.html" rel="external nofollow">link to a great resource</a>. SS64 has some good resources and examples.  They have been very helpful in conjunction with the <a href="https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/format-list?view=powershell-6" rel="external nofollow">Windows Powershell manuals</a>.
</p>]]></description><guid isPermaLink="false">5342</guid><pubDate>Tue, 25 Sep 2018 18:25:41 +0000</pubDate></item><item><title>Windows 10 Settings error Apps and Features</title><link>https://funtimebliss.com/forums/index.php?/topic/5337-windows-10-settings-error-apps-and-features/</link><description><![CDATA[<p>
	Say you are trying to use Settings | System | Apps and Features but you get an error along the lines of "windows cannot access the specified device path or file. you may not have appropriate permissions" trying to uninstall a program.  You can also get a hard error and better search cross reference by clicking <strong>Manage optional features</strong> when in the Apps and features screen.<br>
	This applies to Windows 10 and Server 2016.  In my case I am on Server 2016 Standard Eval Version 1607 OS Build 14393.2273.<br><br>
	Stepping back on the error, you might thing it a permission issue but in my case I was logged in as domain administrator.  Base searching might have you remove and recreate your user profile but that is a waste of time and irrelevant to the issue.  Don't waste your time messing with the profile.  You can confirm in Control Panel that using that Programs and Features works without error to uninstall programs.<br><br>
	Thanks to clicking the Manage optional features of Apps and features, I got info on the systemsettingsadminflows.exe to better search against my issue.  <a href="https://dowser.org/systemsettingsadminflows-exe-windows-fix/" rel="external nofollow">Thanks to this page</a>, I followed the secpol.msc steps to change a local policy to allow access for 'Admin approval mode'.<br>
	Once I enabled that option and did a log out and back in (shutdown -l), I could use the Apps and features portion of settings without cryptic error.<br></p>
<ul><li>Local Policy</li>
<li>Security Options</li>
<li>User Account Control: Admin Approval Mode for the Built-in Administrator Account</li>
<li>Enable this then logout then back in</li>
</ul><p></p>
<br><br>
	Hopefully that helps you avoid the black holes that can be searching for unable to uninstall program in windows with via settings, or similar strings.
]]></description><guid isPermaLink="false">5337</guid><pubDate>Wed, 29 Aug 2018 18:06:47 +0000</pubDate></item><item><title>Task details grep-like output filtering</title><link>https://funtimebliss.com/forums/index.php?/topic/5331-task-details-grep-like-output-filtering/</link><description><![CDATA[<p>
	Say you are checking you <strong>tasklist</strong> output for a certain Windows process id (pid) that matches your <strong>netstat -o</strong> output.  These commands are helpful but matching the output can be annoying, even if you output them to a text file.  By the way, context wise this process is a throwback to the <a href="https://funtimebliss.com/forums/index.php?/topic/3850-botnet-infection-sample-and-removal/" rel="">Bitcoin Miner Malware</a> removal thread, as it could help for any open port you want to reference back to a running process.<br><br>
	If you want to see what said PID in your netstat output is with a single CLI string, here is a helpful pipe option.<br><strong>tasklist | findstr "PID#"</strong><br><br>
	IE: running <strong>tasklist | findstr "812"</strong> on my system throws details on wininit but also shows other process IDs with 812 in them.<br><br>
	I think of this as a light grep-like command you can do in Windows.  Like Linux, '|' (piping) will take the output of your first command and run the 2nd command against it.  The tasklist find is a common and moderately easy grep-like thing you may want to do often if you are checking a machine for open ports and trying to correlate what process details are for said PID linked to those open ports.<br>
	 
</p>]]></description><guid isPermaLink="false">5331</guid><pubDate>Thu, 12 Jul 2018 11:54:10 +0000</pubDate></item><item><title>Android security overview</title><link>https://funtimebliss.com/forums/index.php?/topic/5328-android-security-overview/</link><description><![CDATA[<p>
	I will edit this over time but I wanted to have the thread up to start with.
</p>

<p>
	Overview objectives:<br>
	- Stop camera from saving GPS to photos.<br>
	  - This is in your Camera App Settings, not System device settings.<br>
	- Device Settings:<br>
	  - Lock Screen and Security:<br>
	    - Set lock mode and passcode to unlock device.<br>
	      - Password, PIN, Pattern, Swipe, None.<br>
	      - Biometrics. Face, Iris or Fingerprints<br>
	        - I do not use or particularly like any of the biometric means for device locking.<br>
	        - App Shortcuts: Define what apps can be used while phone is locked (IE Phone calls and Camera)<br>
	        - Find my mobile. Anti-theft and traacking options for your phone.<br>
	          - Remove controls: Allows phone to be remotely controlled via your Samsung account<br>
	          - Google location service.  Allow GLS to give more accurate location info to where your mobile is.<br>
	          - Send last location.  Allow your phone to broadcast last location when battery hits a certain level of charge.<br>
	        - Encrypt SD Card.  Your files on the SD card will only work with your phone.  If phone is reset to defaults, you will not be able to read the encrypted files anymore and would have to re-format the card.<br>
	  - Secure Lock Settings<br>
	    - Secured lock time<br>
	    - Auto factory reset. After 15 failed passwords (will also erase all your data on phone)<br>
	    - Lock network and security. Prevents disabling Wifi and mobile data when your phone is locked, to make someone stealing your phone easier to track by device.<br>
	  - Notifcations.  Choose to hide notification messages on lock screen.<br>
	      - Define what apps can put notifcations on the lock screen.<br>
	      - Hide content of message on lock screen from displaying. (Highly suggested to be on)<br>
	      - Notification icons only.  Just show app icon without details, on lock screen.
</p>

<p>
	- Device Settings<br>
	  - Location<br>
	    - Turn GPS on or Off.  Besides privacy and tracking being less accurate, this can save a large amount of battery life.  Turn this off when not needed for directions.<br>
	    - Google Location History.  You can disable this from saving where you have searched and have been.<br>
	    - Google Location Sharing.  Can share 'Real-time location' with someone of Google.<br>
	    You can turn both of these off and GPS maps will still work fine.  The sharing and history are not needed, just GPS being turned on.
</p>

<p>
	- Device Settings:<br>
	  - Apps.<br>
	    - See installed apps<br>
	      - Review and define App-specific system-level Permissions granted to device.<br>
	      - Decide if you wish to disable some apps completely or uninstall them.<br>
	      - Review battery usage and mobile data use, per app.
</p>

<p>
	- Device Settings:<br>
	  - About phone.<br>
	    - Shows phone number, model, serial number and IMEI.<br>
	    - Software Information.<br>
	      - Show Android version<br>
	      - Android patch level<br>
	      - Various system level information.
</p>

<p><a href="https://funtimebliss.com/forums/uploads/monthly_2018_06/PasswordSetting.gif.09e08508091ed185595d61a4a1cf28ff.gif" class="ipsAttachLink ipsAttachLink_image"><img data-fileid="2301" src="https://funtimebliss.com/forums/uploads/monthly_2018_06/PasswordSetting.thumb.gif.09feabd88deb70041a6bc6374c891a8f.gif" class="ipsImage ipsImage_thumbnailed" alt="PasswordSetting.gif"></a></p>]]></description><guid isPermaLink="false">5328</guid><pubDate>Wed, 13 Jun 2018 01:28:06 +0000</pubDate></item><item><title>Mac OS X screens and updates</title><link>https://funtimebliss.com/forums/index.php?/topic/5326-mac-os-x-screens-and-updates/</link><description><![CDATA[<p>
	I have done some maintenance on Mac laptops before and have a Mac Mini myself.  I haven't had any issues with the Mini, but I did with a 2015 Macbook Pro.  Initial issue was some screen damage that looks like a residue stuck on the screen.  Turns out that was an issue with <a href="https://www.macrumors.com/2017/11/17/apple-extends-free-staingate-repairs/" rel="external nofollow">some Mac models</a>, including the Macbook Pro 2015 model due to the anti-glare coating they used.  Fortunately, since they got their laptop <span style="">at an Apple store, they had 4 year coverage and the repairs were free.  There is also a recall / free replacement for the logic board.  That repair was $575, before the cost was zeroed out because a warranty repair.  The new screen was crystal clear again and the laptop continues to soldier on.  We got this repaired in January of this year.</span><br>
	 
</p>

<table class="parts" id="authorization_parts" style="font-size: 10pt; margin-top: -.04in; width: 100%;"><tbody><tr><th class="number" id="itemnumberheader" style="text-align: left; width: 16%; padding: 0in;">
				Item Number
			</th>
			<th class="description" id="descriptionheader" style="text-align: left; width: 50%; padding: 0in;">
				Description
			</th>
			<th class="price-header" style="align: right; text-align: right; width: 16%; padding: 0in 5px 0in 0in;">
				Price
			</th>
			<th class="amt-due-header" style="align: right; text-align: right; width: 18%; padding: 0in 5px 0in 0in;">
				Amount Due
			</th>
			<th class="kbb" id="kbbheader" style="text-align: left; width: 16%; padding: 0in;">
				 
			</th>
		</tr><tr><td class="number" style="text-align: left; width: 16%; padding: 0in;">
				S1586LL/A
			</td>
			<td class="description" style="text-align: left; width: 50%; padding: 0in;">
				Labor Charge, PBG4/MBP15"
			</td>
			<td class="price" style="align: right; text-align: right; padding: 0in 5px 0in 0in;">
				$ 100.00
			</td>
			<td class="amount-due" style="align: right; text-align: right; padding: 0in 5px 0in 0in;">
				$ 0.00
			</td>
			<td class="kbb" style="text-align: left; width: 16%; padding: 0in;">
				 
			</td>
		</tr><tr><td class="number" style="text-align: left; width: 16%; padding: 0in;">
				S5741LL/A
			</td>
			<td class="description" style="text-align: left; width: 50%; padding: 0in;">
				Flat Rate 2 Repair Charge MBP15/MBP17
			</td>
			<td class="price" style="align: right; text-align: right; padding: 0in 5px 0in 0in;">
				$ 475.00
			</td>
			<td class="amount-due" style="align: right; text-align: right; padding: 0in 5px 0in 0in;">
				$ 0.00
			</td>
			<td class="kbb" style="text-align: left; width: 16%; padding: 0in;">
				 
			</td>
		</tr><tr><td class="total" colspan="2" style="font-weight: bold; align: right; text-align: right; vertical-align: top; padding: 0in;">
				Total (Tax not included)
			</td>
			<td class="total-price" id="total" style="font-weight: bold; align: right; text-align: right; vertical-align: top; padding: 0in 5px 0in 0in;">
				$ 575.00
			</td>
			<td class="total-price" id="total" style="font-weight: bold; align: right; text-align: right; vertical-align: top; padding: 0in 5px 0in 0in;">
				$ 0.00
			</td>
		</tr></tbody></table><p>
	Lo and behold, I was visiting a couple days ago, and the same MacBook Pro (2015) rebooted to give the following error:<br><strong>[auth] failed to write file &lt;private&gt;</strong><br>
	At the bottom of an error log display.  if you have an nvidia MacBook Pro 2015) and update to 10.13.4, you're gonna have a bad time. <a class="twitter-timeline-link" data-expanded-url="https://discussions.apple.com/thread/8338509" dir="ltr" href="https://discussions.apple.com/thread/8338509" rel="external nofollow" target="_blank" title="https://discussions.apple.com/thread/8338509"><span class="invisible">https://</span><span class="js-display-url">discussions.apple.com/thread/8338509</span></a>
</p>

<p>
	<span class="js-display-url">I followed the suggestion to select the Boot Disk option, then to pick the Mac Hard Drive to have it boot normally.  This 10.13.4 issue looks to have just started again the other day (5/30).  Hopefully an update will address this, because a recovery log screen is pretty daunting, especially for someone who does not normally see error logs, as I will generalize and say is the case for many Mac users who do not work in tech.  Needless to say they were happy when I got it to boot back up and she will continue delaying the prompts to install updates on OS X.</span>
</p>]]></description><guid isPermaLink="false">5326</guid><pubDate>Sat, 02 Jun 2018 12:35:45 +0000</pubDate></item><item><title>CLOUD Act</title><link>https://funtimebliss.com/forums/index.php?/topic/5321-cloud-act/</link><description><![CDATA[<p>
	<img alt=":blink:" data-emoticon="" src="https://funtimebliss.com/forums/uploads/emoticons/blink.gif" title=":blink:"><br><br><a href="https://www.eff.org/deeplinks/2018/03/responsibility-deflected-cloud-act-passes" rel="external nofollow">https://www.eff.org/deeplinks/2018/03/responsibility-deflected-cloud-act-passes</a>
</p>]]></description><guid isPermaLink="false">5321</guid><pubDate>Fri, 23 Mar 2018 22:56:44 +0000</pubDate></item><item><title>Learning Linux Issues</title><link>https://funtimebliss.com/forums/index.php?/topic/5317-learning-linux-issues/</link><description><![CDATA[<p>
	One of the biggest issues you will encounter learning Linux, is how most anything you may search for, will fall in 2 camps of info:<br>
	Pre-Systemd and Post-Systemd.<br><br>
	Guides and articles from 2013 or earlier will especially be based on older utilities that have been decommissioned but may still exist on recent distributions.  It can be a little maddening but that's where more specific and newer articles are your guide.  Ideally, the newer write ups will reference the older method too.  Both for the sake of showing up in your search results and showing how both old and new work, so you can get to your solution.<br><br>
	Case example for me here, is setting up a NTP server to do internal time synchronization for machines not able to contact a Windows Domain Controller.<br>
	ntpd exists but not as a stand-alone server, as it's part of ntp services.  tzselect works to set your timezone as a command but does not impact anything, since timedatectl is the current handler for system time on Raspbian and other more recent distro releases.<br><br>
	Once you set the right timezone, ntpd -qg will connect to your defined external ntp servers, so your local service will have accurate timing to share with the internal machines you want to clock sync.  To check your status for the ntp service to see it's running state, you want to:<br>
	systemctl status ntp<br><br>
	I just wanted to share a potentially helpful rant, as searching for information online, tends to bring up the older linux tools.  It can be extra rage inducing when the original stuff is still around but has no impact on what you are trying to change.
</p>]]></description><guid isPermaLink="false">5317</guid><pubDate>Wed, 21 Feb 2018 16:40:27 +0000</pubDate></item><item><title>Firewall Log Fun</title><link>https://funtimebliss.com/forums/index.php?/topic/5033-firewall-log-fun/</link><description><![CDATA[<p>This thread is ongoing, but let me start with the results I have from a year worth of dropped firewall connections.</p>
<ul class="bbc"><li>228376<p>January 2016</p>
</li>
<li>253698<p>February 2016</p>
</li>
<li>244374<p>March 2016</p>
</li>
<li>494842<p>April 2016</p>
</li>
<li>611021<p>May 2016</p>
</li>
<li>259013<p>June 2016</p>
</li>
<li>529243<p>July 2016</p>
</li>
<li>406937<p>August 2016</p>
</li>
<li>2096766<p>September</p>
</li>
<li>264421<p>October</p>
</li>
</ul>Let's jump back a minute. I am importing firewall logs for dropped connections into a MS SQL Database. September as you can see is a fun month with 2,096,766 records.<p>Since my firewall is a Zyxel device, I gave a look at the .csv delimited log output. Easily enough you can use a Data Import Wizard to spin the logs into some tables. Rough table to log structure is as such:</p>
<pre class="ipsCode prettyprint lang-auto linenums:0">CREATE TABLE zy_2016-09 (
  time VARCHAR(50) NULL,
  source VARCHAR(50) NULL,
  destination VARCHAR(50) NULL,
  priority VARCHAR(50) NULL,
  category VARCHAR(50) NULL,
  note VARCHAR(50) NULL,
  sour_interface VARCHAR(50) NULL,
  dest_interface VARCHAR(50) NULL,
  protocol VARCHAR(50) NULL,
  message VARCHAR(250) NULL,
  col00 VARCHAR(250) NULL,</pre>
<p>I am having fun crawling some output. Typically it's some sort of fancy OpSec to not say your type of network gear, but this is meant to be informative and hopefully helpful.</p>
<p>So let's crawl some queries and output in the next post.</p>]]></description><guid isPermaLink="false">5033</guid><pubDate>Sat, 22 Oct 2016 23:11:19 +0000</pubDate></item><item><title>Cisco Noob Guide</title><link>https://funtimebliss.com/forums/index.php?/topic/4177-cisco-noob-guide/</link><description><![CDATA[<p>Especially on old-school devices, you might find no one logged  any of the network topology and config details.  If you are lucky (depends on your outlook) there is no password for the console connection.  To connect over console, you will need an ethernet cable that plugs into a serial port on your config machine.  If you do have a password on console port, hopefully it's something from your list of other device passwords.  Probably a Level-15 account.</p>
<p> </p>
<p>
We will be in the CLI, so all those nice GUI configs you are used to with newer devices, are not at your disposal.  So we have this guide for logging in, going into enable mode, then showing certain configurations.  This can help you map a network out, especially if you inherited it and want to document and know how it really functions.</p>
<p> </p>
<p>
Starting out: (Run a cable from the console port on said switch, to your machine Serial port.)</p>
<ul class="bbc"><li>Use PUTTY or a similar application to connect to COM1</li>
<li>Press Enter 2x.  You should then see <strong>Console</strong> of some sort</li>
<li>Login when prompted for a password (or if none)</li>
<li>type '<strong>en</strong>' without the quotes.  This will take you to config / enable mode.</li>
<li>
<strong>show ?</strong> will give you a list of available commands.</li>
<li>Start with <strong>show version</strong> to get an idea what platform and version of iOS (or PiX) you are dealing with.</li>
<li>
<strong>show running-config</strong> will show you the currently running device configuration.  Feel free to archive this into a flat file for reference later.</li>
<li>
<strong>show vlan</strong> is huge if you need to know the VLANs defined on the network.<p>
Note: Your core switch will have them defined, then other devices can reference those VLANs and route accordingly.  IF you do not have a VLAN defined somewhere, it will be useless to use as a target.</p>
</li>
</ul><p> </p>
<p> </p>
<p>
That's my primer on dorking your way though some older cisco devices.  Granted these methods will work or be very similar in current, CLI based cisco sessions.  Happy explorations.</p>]]></description><guid isPermaLink="false">4177</guid><pubDate>Fri, 15 Jul 2016 15:51:10 +0000</pubDate></item></channel></rss>
