tag:blogger.com,1999:blog-57970592024-03-12T23:45:43.009-05:00SysAdminHellA resource for those attempting to survive the world of the System Administrator.Anonymoushttp://www.blogger.com/profile/02788545636518664311noreply@blogger.comBlogger459125tag:blogger.com,1999:blog-5797059.post-70337089825886486652014-03-20T10:53:00.001-05:002014-03-20T10:53:37.199-05:00Zone Assignments and GPO settingsLet's say you have a handful of websites that you want to assign to particular zones. You have an internal site you want everyone's browser to handle in the Intranet zone. You have a few external sites/vendors that your users need to interact with and those must be in the Trusted zone. Or even if you set your drive mappings in your login scripts to use the FQDN of the file server, and Windows/Office automatically treats every file on those drive mappings as "Internet" files and won't trust them (you need to set your domain in the Intranet zone).<br />
<br />
There are a couple of ways to handle this type of situation. First, you could just teach all the users how to do their own zone assignments, which is never a fun task. You could script the changes, adding the sites directly to the ZoneMap in the HKCU in the registry. Or you could push it all out via Group Policy.<br />
<br />
There are two ways to push these settings via Group Policy; the strict way and the flexible way, depending on what you're trying to accomplish.<br />
<br />
If you want to set the Zone Assignments and not allow the user to modify them in any way, create a new policy and navigate to User Configuration\Administrative Templates\Windows Components\Internet Explorer\Internet Control Panel\Security Page. Locate the "Site to Zone Assignment List" setting.
If you disable this setting, no user will be able to set any zone assignments. If you Enable the setting, you can set the zone assignments for the user.<br />
<br />
<u> HOWEVER, THEY WILL NOT BE ABLE TO MODIFY (ADD) ANY ZONE ASSIGNMENTS. </u><br />
<br />
Also, their existing zone assignments will be lost. This is important. The user will not be able to add that one-off site that they need and will have to wait on you to add it to the GPO. However, sometimes it is necessary to do this. If you are ok with this, enable the setting and click the "Show" button next to "Enter the zone assignments here". I tend to enter my domain assignments using a wildcard, so any child/sub domains are covered. Of course, you can enter specifics here as well.
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://3.bp.blogspot.com/-txTaCQNA9IY/UysG3_QJFfI/AAAAAAAAAfU/Y7ykMPLHg7o/s1600/ScreenHunter_51+Mar.+20+10.18.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://3.bp.blogspot.com/-txTaCQNA9IY/UysG3_QJFfI/AAAAAAAAAfU/Y7ykMPLHg7o/s320/ScreenHunter_51+Mar.+20+10.18.jpg" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
For the "Value", you must enter a number from 1-4 that designates what zone to put the domain in. They are:
<br />
1 = Intranet Zone<br />
2 = Trusted Sites Zone<br />
3 = Internet Zone<br />
4 = Restricted Sites Zone
<br />
<br />
After you are finished, assign the GPO to the OU's you want to apply it to.<br />
<br />
Let's say you want to be flexible. You know there are a few users out there that might need to use another vendor's site for whatever reason and they don't want to wait for you to add it to the GPO. Or an existing vendor made a change to their website and requires it to be in the Trusted Zone suddenly. Or your helpdesk wants to troubleshoot an issue by moving site assignments around. We want to assign sites and still allow the user to add their own.<br />
<br />
<u>TO ALLOW USERS TO ADD THEIR OWN SITES, DO NOT SET THE "SITE TO ZONE ASSIGNMENT LIST" SETTING.</u><br />
<br />
Leave that setting to Not Configured. I learned this the hard way. Instead, navigate to User Configuration\Preferences\Windows Settings\Registry. Right-click and choose New - Registry Item.<br />
<br />
<br />
<ol>
<li>For Action, choose Update.</li>
<li>For Hive, choose HKEY_CURRENT_USER</li>
<li>For Key Path, enter Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\blogger.com </li>
<ol>
<li>Replace blogger.com with the domain you want to add.</li>
<li>If you want to cover the entire domain, just put the domain name.</li>
<li>If you want to cover only a sub domain, put it instead (example: client.blogger.com)</li>
<li>If you want to cover only www, put that as well (example: www.blogger.com)</li>
</ol>
<li>For Value Name, you have a few options.</li>
<ol>
<li>You can use a wildcard to cover anything .blogger.com (*.blogger.com)</li>
<li>You can specify a protocol (http, https). This will only cover that one protocol (example: www.blogger.com, with Value http = http://www.blogger.com)</li>
</ol>
<li>Value type: REG_DWORD</li>
<li>Value Data: Enter the value of the zone you want to assign.</li>
<ol>
<li>1 = Intranet Zone</li>
<li>2 = Trusted Sites Zone</li>
<li>3 = Internet Zone</li>
<li>4 = Restricted Sites Zone</li>
</ol>
<li>Base: Decimal.</li>
</ol>
<div class="separator" style="clear: both; text-align: center;">
<a href="http://4.bp.blogspot.com/-QInAvPiEDnU/UysL8JTd12I/AAAAAAAAAfk/TBcnr2vIzO4/s1600/ScreenHunter_51+Mar.+20+10.40.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://4.bp.blogspot.com/-QInAvPiEDnU/UysL8JTd12I/AAAAAAAAAfk/TBcnr2vIzO4/s1600/ScreenHunter_51+Mar.+20+10.40.jpg" height="320" width="289" /></a></div>
<div>
<br /></div>
<div>
<br /></div>
<br />
Let's say you want to add an IP address or an IP range. This is a bit trickier but it is possible. First, your Key Path will be different. Instead of "Domains" under ZoneMap, you will be placing the registry setting in Ranges. Also, for each "Range" you will have to create a sub-key and it will require two settings instead of one.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://2.bp.blogspot.com/-Pk2-sKILesI/UysM-gYmTXI/AAAAAAAAAfs/AysNQexX41o/s1600/ScreenHunter_52+Mar.+20+10.44.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://2.bp.blogspot.com/-Pk2-sKILesI/UysM-gYmTXI/AAAAAAAAAfs/AysNQexX41o/s1600/ScreenHunter_52+Mar.+20+10.44.jpg" height="105" width="640" /></a></div>
<br />
<br />
If you run into an issue or need to know how to add a specific setting, you can always add the Zone Assignment on your computer and look in the registry to see how it works. You can also do this to verify that the GPO is applying correctly.<br />
<br />
Open Regedit and go to:<br />
<br />
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap<br />
<br />
Your domain will each be a subkey under "Domains". Your IP addresses will be under "Ranges".<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://4.bp.blogspot.com/-df28mOVrr38/UysOcBxcfLI/AAAAAAAAAf4/Lu7qrA5oavs/s1600/ScreenHunter_52+Mar.+20+10.50.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://4.bp.blogspot.com/-df28mOVrr38/UysOcBxcfLI/AAAAAAAAAf4/Lu7qrA5oavs/s1600/ScreenHunter_52+Mar.+20+10.50.jpg" height="128" width="640" /></a></div>
<br />
<br />Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com52tag:blogger.com,1999:blog-5797059.post-40917518754479652182009-05-12T14:17:00.002-05:002009-05-12T14:33:48.324-05:00Yahoo Messenger and Internet ProxiesI hate proxies but they seem necessary in the Corporate world. Getting all the websites, programs, widgets, etc working as people want can cause much pain and suffering.<br /><br />This is a simple post, but hopefully it'll save someone a few hours of frustration.<br /><br />We have a group that has to use Yahoo! Messenger for chat. So I put them on our web filter/proxy, allowing the Yahoo IM access. (Note, our proxy requires NTLM/Active Directory authentication to allow traffic). Those not using Yahoo's client (like those using <a href="http://www.pidgin.im/">Pidgin</a>) connected fine. But the official Yahoo client seemed like it wasn't passing the Windows Authentication to the proxy and not connecting. Setting the client's proxy settings to Direct Connection did not work; Yahoo was still pulling Internet Explorer's proxy settings.<br /><br />After a few hours of searching, I came across this Microsoft KB article: <a href="http://support.microsoft.com/kb/309347">How to Set Up Yahoo Messenger to Use Only Integrated Authentication on Your ISA Server Computer</a>. In the article, it advises that you set your Internet Explorer settings to enable "Use HTTP 1.1 through proxy connections". <br /><br />Apparently Yahoo Messenger client doesn't send a keep-alive header in it's NTLM request, thus not keeping itself authenticated. Telling it to use HTTP 1.1 forces this, since the keep-alive header is default in 1.1.<br /><br />Check out the Microsoft article (linked above) for more information, but this simple checkbox fixed the issues for my users. It's not JUST for ISA; I'm not using ISA and it worked for me.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com3tag:blogger.com,1999:blog-5797059.post-26124613445150391302009-04-07T15:19:00.010-05:002009-04-14T10:14:24.382-05:00iSCSI, Windows 2003, SANSurfer, and VDSSo I have a site with two servers having identical problems, a iSCSI volume will not initialize in Window's Disk Management utility (or create a partition in DiskPart).<br /><br />In the GUI Disk Management, I get the error "Logical Disk Manager: The operation did not complete. Check the System Event Log for more information on the error." In DiskPart, I get the error "The disk management services could not complete the operation." The event log doesn't have an error directly explaining these errors, but sometimes I'll get an Application Error 1004, mentioning vds.exe (Virtual Disk Service) faulted. Google and multiple forum searches don't yield much result.<br /><br />A little about the setup. I have an IBM DS3300 iSCSI SAN attaching LUNs to two Dell PowerEdge 1950s via a Qlogic QLE4062c cards, using SANSurfer software. (They're not sharing a LUN, each server gets a different one).<br /><br />So I won't bore you too much, I'll leave out the majority of my troubleshooting and homicidal hatred towards these two systems and just give you the answer (or at least the answer that worked for me).<br /><br />Turns out that the issue lies in the Virtual Disk Service, which Microsoft has a hotfix for here: <a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;948699">Article ID: 948699</a>. Once I installed the fix and rebooted I was able to initialize the disk, format, label, and use.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com1tag:blogger.com,1999:blog-5797059.post-14094267950453307712009-04-02T12:57:00.005-05:002009-04-07T17:13:53.165-05:00iSCSI File Shares DisappearA quick tip for those new to iSCSI, the Microsoft iSCSI Initiator, and using the two for file sharing. <br /><br />Setting up the LUN, mapping it as a disk, and putting your file shares on it is great, but there are a few configuration steps you need to take if you experience your share settings disappear every time you reboot (even thought the files remain).<br /><br />First, ensure that the Server service is dependent on the Microsoft iSCSI Initiator Service. To do this, go into the Services MMC, open the Server service properties, and check under the Dependencies tab. No Microsoft iSCSI Initiator? Open Regedit (Run - regedit.exe) and navigate to HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\lanmanserver. Find the key "DependOnService" and set it's value to MSiSCSI. The Server service is responsible for creating the shares; if this service starts up before the iSCSI LUNs are ready on the server, then the shares will not appear.<br /><br />Second, make sure you set up the Microsoft iSCSI Initiator to automatically restore the connection and drive letters. Under the Targets tab, when you highlighted the target and clicked "Log On", did you check "Automatically restore this connection when the system boots"? If not, remove the connection and log it back on, this time selecting the correct option. <br /><br />Third, after the drive has been set up and you assigned it a drive letter, go back into the Microsoft iSCSI Initiator software and click on the Bound Volumes/Devices tab. You'll see some funky volume path that looks like gibberish. Highlight it and click Add. Put in the drive letter you assigned and click Ok. This will cause the iSCSI Initiator service to not completely start until the volume has been mapped to the drive letter. Since the Server service now depends on the iSCSI service starting up, it'll have to wait until the volume is available before it can assign share settings.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com2tag:blogger.com,1999:blog-5797059.post-44536341102044714152009-03-30T16:51:00.004-05:002009-03-30T17:32:46.596-05:00VMWare Virtual Center and SQL 2005 Native Driver, Part 2A quick follow up on a post I did last December, <a href="http://sysadminhell.blogspot.com/2008/12/vmware-virtual-center-and-sql-2005.html">VMWare Virtual Center and SQL 2005 Native Driver</a>. When upgrading your VMWare Virtual Center (vCenter, whatever), it will require you to use the SQL Server Native Client 10.0 in your ODBC when using an external 2005 SQL server.<br /><br />If you remember, we installed the SQL Server Native Client 10.0 during installation as asked, but couldn't get the service to run after install. To fix the issue, we had to delete the DSN and create a new one using the standard SQL Server driver with the same settings.<br /><br />Before doing the upgrade, delete your current DSNs and create new ones using the Native Client 10.0 with the same exact settings. Run the upgrade, let it do its thing, then it'll fail when attempting to upgrade the Converter and Update Manager (because at this point the VirtualCenter Server service can't start with the Native 10.0 driver). That's ok, just delete the OBDC connections and recreate them using the "SQL Server" driver. Then go into the Services MMC (Start - Run - services.msc) and start the VMWare VirtualCenter Server service. Give it a few minutes to figure itself out (Virtual Center will reconfigure HA, etc). Then run the upgrade again, this time only selecting Converter and Update Manager to upgrade.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com1tag:blogger.com,1999:blog-5797059.post-53443847733924970502009-03-30T09:57:00.015-05:002009-03-30T15:41:56.920-05:00Proxy PAC Files, How to Use With Laptops and Local BypassFirst, I *HATE* proxy .pac files. With that said, here's some tips on setting up your file.<br /><br />Here's the challenge. You have a web filter/proxy in your network and you need everyone to go through it. You also need to allow unfettered access to local resources, which can sometimes cause fits with your proxy. Some examples of such fits: not being able to route back to certain local resources, having issues with with special applications that install a local http server (Google Desktop comes to mind here), access to local webservers with certain programs (Microsoft Frontpage), or local webservers that run code that the proxy doesn't like (we have a site that does a lot of perl, designed for internal use only that the proxy just has issues with).<br /><br />If your client machines are local desktops or Terminal Server sessions that don't leave the network, setting up bypasses for all of this with Group Policy is easy. Just put the IP address or subnet in the Exceptions part of the Proxy Settings configuration window. But what if your clients have laptops that leave the network? Forcing them to use the VPN for web traffic is one way to work around this; it forces all Internet usage on the company machine to be accounted for in the web filter and is easy to configure in their GPO. But what if management doesn't like this option; the clients have to be filtered while in the office but can hit whatever they want when they leave? The answer to this problem is to set up a proxy .PAC file.<br /><br />The PAC file allows you to configure a user's proxy in many different ways. It's a text file that is referenced by the browser for proxy configuration, and uses a JavaScript function (FindProxyForURL(url, host)) to pull this off. In this post, I'm only going to focus on my requirements to build my PAC file: determining if the user is on the office network and bypassing local resources.<br /><br />There's quite a few examples of PAC files on the Internet, and I'll provide links to these sites on the bottom of this post. They're all worth a look; considering the custom nature and the many configuration options to PAC files it's a good idea to see what everyone else is doing and develop your own configuration from there.<br /><br />First, let's determine a way to figure out if you're on the local network or not. Some examples I've seen attempt to determine if the machine is part of the local subnet, then bases the configuration on that. If you're like me and have a lot of different subnets (either internal vlans or different sites), that may not work. So, what I do is configure the PAC file to determine if it can communicate with the proxy. If yes, it uses it. If not, then it goes "DIRECT" to the Internet. For me, it's a simple one-liner:<br /><br /><code>function FindProxyForURL(url,host) { return "PROXY 192.168.10.100:3128; DIRECT"; } </code><br /><br />This will cause the web browser to look for the PROXY IP address (in the example 192.168.10.100:3128). If it finds it, then it uses it and you should see the traffic hit your logs. If it can't find it, it'll take a minute to time out then drop the user directly on the Internet with no proxy.<br /><br />Ok, the first requirement is done; mobile users will be on the web filter while at the office and will be off of it away from the office. Now, we need to bypass local resources; a task that causes a little more fuss. Let me note that before I bash on web filters, or at least come off as bashing them, most of my local resources tested just fine with no further configuration. A lot of my monitoring tools, local wikis, etc had no issue. But some, such as our phone system configuration site, didn't work at all in testing. Your mileage may vary; for a lot of people stopping at this point would work for them just fine. But for those who do have issues, we'll continue.<br /><br />Next determine the subnets you want to bypass. In this case, we'll use 10.10.1.x, 10.100.x.x, 192.168.10.x, and all local addresses 127.0.0.x).<br /><br /><code>function FindProxyForURL(url,host) { <br /><br />if (<br />(isInNet(host,"10.10.1.0","255.255.255.0")) || <br />(isInNet(host,"10.100.0.0","255.255.0.0")) || <br />(isInNet(host,"192.168.10.0","255.255.255.0")) || <br />(isInNet(host,"127.0.0.0","255.255.255.0")) <br />)<br />return "DIRECT";<br />else<br />return "PROXY 192.168.10.100:3128; DIRECT"; }</code><br /><br />Now, when testing, any host that uses an IP address or resolves to an IP address in the subnets you're bypassing should not show up in your logs. All other traffic should show up just fine. Make sure you set the appropriate subnet mask. The || pipes mean "OR", so you can add as much as needed.<br /><br />Now, lets say you have a specific site you want to bypass, on your network or not. For example, you want to bypass traffic to your external web site, or you use a hosted email solution that has issues in your web filter. Just add the following line within the "if ( )" statement:<br /><br /><code>(dnsDomainIs(host, ".bypassed_url.com")) || </code><br /><br />Note that there is no need to put anything more than the domain name; no need for http://, *://, or the full URL. Also, don't forget the OR (||) if you intend to put any more statements below it. Your last line in the if( ) should not have ||.<br /><br />Now that all of our requirements are met it's time to save the file and test it. There are several methods of the PAC file placement involving web servers or network shares, but since the client is on a laptop I prefer to place the file locally. Save your PAC file on the local drive. Next, open Control Panel and Internet Options. Click the Connections tab and the LAN Settings button. Uncheck everything except "Use automatic configuration script". For the address, put in file://c:/PAC_file_location/name_ of_PAC_ file, example: file://c:/pxy/pxy.pac<br /><br />In a future posting I'll go over how I deploy the PAC file via login script and how I use Group Policy to force my users to use the file. I may even do a write-up on blocking other browsers, such as Firefox, Chrome, Safari, and Opera.<br /><br />A quick note: PAC files are read when the browser is opened. If your laptop user has an open browser then pulls their laptop off the network (hibernate) then attempts to use the same browser window off the network, it most likely will not work. They'll have to restart the browser. Same concept when they enter the network; if they were working in a browser window off the network unfiltered, the same browser window will remain in DIRECT configuration until it is restarted.<br /><br />As promised, some useful links:<br /><br /><a href="http://en.wikipedia.org/wiki/Proxy_auto-config">Wikipedia:Proxy_auto-config</a><br /><a href="http://nscsysop.hypermart.net/proxypac.html">Craig Johnson Consulting: Autoconfigure Scripts for Proxy Settings</a> - good overview, but I couldn't get the if (shExpMatch(url, method to work..<br /><a href="http://www.novell.com/coolsolutions/feature/7949.html">Novell: Cool Solutions: Proxy Failover (without Clustering)</a> - great article, the author dissects the code and explains it.<br /><a href="http://jcurnow.home.comcast.net/~jcurnow/WritingEffectivePACFiles.html">Jason Curnow: Writing Effective Proxy PAC Files</a> - wow, I JUST found this site.. Read this.<br /><a href="http://technet.microsoft.com/en-us/library/dd361918.aspx">Microsoft Technet: Using Automatic Configuration, Automatic Proxy, and Automatic Detection</a> - lots of examples here.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com11tag:blogger.com,1999:blog-5797059.post-31916593958104052472009-01-15T12:36:00.006-06:002009-01-15T14:09:35.499-06:00vSwitches and vmnic Linking - When the NIC Name ChangesI had one of my ESX servers die over the weekend. Upon inspection (and some calls to support to verify) it seems the system board needed replacing. I pulled the machine and had it fixed. This machine has two on-board NICs and a quad-port NIC PCI-X card. When I booted up the server (after the repair) I noticed that the server tech reinstalled the quad port card into the wrong PCI-X slot. I shut down the machine and corrected the mistake.<br /><br />Then I powered on the machine and plugged in the network cables. Unfortunately I could no longer access this server via network (nor could it access the network). ifconfig showed that all the NIC ports on the quad port card had different labels, going from vmnic0 and vmnic5 to vmnic10 and vmnic14. Nice, but not too much of an issue.<br /><br />When you set up the service console earlier (during install), it puts the configuration in a virtual switch (such as vSwitch0) and then "links" that switch to your physical NIC (such as vmnic0). So this is what we need to do to get network connectivity. Run the command esxcfg-vswitch -l. This lists all of your virtual switches and their configuration. Look for the vSwitch that contains your Service Console port group. This is the switch you need. In this example, it is vSwitch0.<br /><br />Next we need to link the vSwitch to the correct NIC. If all of the NIC ports are on the same vLAN or physical network, then this part isn't hard. But each NIC port on this card is plugged into a different vLan (set by our network switches), so it's important that I find the correct vmnic.<br /><br />If you have physical access to the machine, and you need to determine which NIC port is assigned to which vmnic# label, do this:<br /><ul><li>Unplug all network cables from the machine. </li><li>As root, type esxcfg-nics -l in the console. This lists all the vmnic ports, the manufacturer, and link status. </li><li>Next, take a network attached Cat5 cable and plug it into a port. </li><li>Run the command again, noting wich vmnic show UP for the link status. </li><li>Repeat the process for each NIC port.</li></ul><br /><br />(note: You can also just link each vmnic to the vSwitch, one by one, until your network access is achieved, if you don't have physical access to the machine. But, if you're not careful, that method may not be accurate.)<br /><br />When you've determined the vmnic to use, linking it to the vSwitch is just one command: esxcfg-vswitch -L vmnic# vSwitch#. In my case, it was esxcfg-vswitch -L vmnic10 vSwtich0. Once I entered that, I could get on the network. Now, you can fix the rest of the nics/switches with this command, or you can connect to the server via Virtual Center and do it through the GUI.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com0tag:blogger.com,1999:blog-5797059.post-21900439261391032112008-12-03T10:49:00.007-06:002008-12-03T12:09:59.832-06:00VMWare Virtual Center and SQL 2005 Native DriverSo, I'm setting up a new VMWare Virtual Center server, using a separate server for my database (running SQL 2005). This is on a Windows Server 2003 R2 SP2 machine. Installation goes as planned until it asks for the ODBC connection. I set it up, choosing SQL server and everything tests out ok. But when VMWare decides to use it, it complains that the driver I'm using can't be used with SQL 2005. So I found and installed the "SQL Native Client 10.0" and the install continued. <br /> <br />After the server and client components installed, the add-on components Update Manager and Converter attempted to install. After asking for credentials, the installation failed because the Virtual Center service could not be reached. A quick check with the VMWare Infrastructure Client failed as well.<br /><br />Going into the Services MMC, the VMWare Virtual Center Server service was stopped. Starting it took a few seconds and it showed started. Hitting refresh showed that it stopped pretty much immediately after starting. The Event Log showed the same thing, although was useless to find the cause.<br /><br />I did a repair, no luck. Uninstall/reinstall, no go. Uninstall, manually remove registry entries, reinstall, nope. <br /><br />According to the troubleshooting guide (<a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1003926">Troubleshooting the VMware VirtualCenter Server service when it does not start or fails</a>), there are a few things to check. <br /><br />One is the SQL connection/setup. The ODBC connections tested perfectly and the SQL server was up. I also verified that there was plenty of open disk space. (See: <a href="http://kb.vmware.com/kb/1003928">Troubleshooting the database data source used by VirtualCenter Server (1003928)</a>)<br /><br />Next is permissions. The service was set to run as local System. I configured it to run as a domain administrator account, same results. I also tried a bad password, to see what error appeared. It actually complained about an authentication error, which is not what it's doing otherwise. I set it back to local System. <br /><br />Port conflicts is another thing to check. In a command prompt, enter <span style="font-style:italic;">netstat -ban<span style="font-weight:bold;"></span></span> and see if anything is taking up port 80, 902, or 443 on the machine. In my case, it was not. (See: <a href="http://kb.vmware.com/kb/1003971">Verifying if a port is in use (1003971)</a>)<br /><br />After some other troubleshooting, I decided to check out the file the service wants to start, "C:\Program Files\VMware\Infrastructure\VirtualCenter Server\vpxd.exe". So I opened an command prompt and navigated to that folder. Entering <span style="font-weight:bold;">vpxd.exe /?<span style="font-style:italic;"></span></span> showed a list of options. I tried <span style="font-weight:bold;">vpxd.exe -u<span style="font-style:italic;"></span></span> to unregister the service. Then I tried <span style="font-weight:bold;">vpxd.exe -r<span style="font-style:italic;"></span></span> to register the service back. Still was getting the same issue. I tried <span style="font-weight:bold;">vpxd.exe -s<span style="font-style:italic;"></span></span> to run Virtual Center Server in non-service mode. After a bunch of text flashed on the screen, it failed but this time with an error.<br /><br />Part of the error it left was "Fractional second precision exceeds the scale specified", and mentioned a bunch of tables it couldn't update. It also mentioned the SQL Native Client 10.0 driver. Google searching this error didn't help me much since I'm not an SQL programmer. However, this was leading me in the right direction. After thinking for a minute, I wondered what would happen if I removed the SQL Native Client 10.0 ODBC connection and set up a new connection with the same name and settings, but using the standard SQL Server ODBC driver.<br /><br />It worked. Now I'm running my new Virtual Center server without issue. It does seem odd that the standard SQL Server driver won't work during setup, but is what works after setup.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com0tag:blogger.com,1999:blog-5797059.post-77137049857204345402008-08-15T09:10:00.002-05:002008-08-15T10:01:38.490-05:00VMWare: Orphaned TemplatesStolen from this <a href="http://communities.vmware.com/message/545835#545835">Message Board Thread.</a><br /><br /><br /><blockquote><ul><li>Right click on your orphaned template</li><li>Select "Remove from Inventory"</li><li>From the host you would like the template to reside on...</li><li>Select you host</li><li>Select the "Configuration" tab</li><li>Select "Storage" under the Hardware pane</li><li>Double click on the storage device in the right pane..this will bring up the "Datastore Browser"</li><li>Browse to your orphaned template's location</li><li>Right click on the template file..it will have a ".vmtx" extention with the Type displayed as "Template VM"</li><li>Choose "Add to Inventory"</li><li>Go through and answer the wizard information to complete the "fix"</li></ul></blockquote>Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com2tag:blogger.com,1999:blog-5797059.post-38048509386240326362008-05-18T16:41:00.004-05:002008-05-18T17:42:47.635-05:00Local to Mapped Printer MigrationSorry I haven't been posting regularly, I've been really really busy at work<br />lately and the little time I've had off I didn't want to do ANYTHING<br />sysadmin related. Hopefully things will be a bit slower now and I can post<br />some of the stuff I've been saving up. On to the topic...<br /><br /><br />I love terminal servers. Unfortunately they can be a bit fragile at times,<br />especially under higher loads. One load-inducing problem that can occur is the existence of local printer queues on the server itself. Locally mapping a user's printer to the terminal server may seem like a good idea, but typically it isn't the best way to do things. Local printers cause a lot of I/O traffic on your local disks, the drivers take up memory (some drivers will load a nice hunk of memory for each logged in user), and the spooler service will also take up resources that will affect other users. Throw in memory leaks that some printer drivers may have and you'll end up with a pretty good issue as your users pile into the server.<br /><br />On my network I ran into this exact issue with one of my oldest stand-alone terminal servers. I'm running Windows Server 2003, older but still decent hardware, and about 50-60 heavy users all getting a full desktop. Since I didn't know the issues with local printers when I first deployed the server, I ended up with over 30 local printers, most of which were mapped to printers over slower WAN links. Users started complaining about the server being slow. Investigating, I found a memory leak in the spooler service (restarting it helps a little), and two printer drivers taking up 5 megs each in every user session. (That's about 500 megs of ram wasted when I've got 50 users on the server). At this point I decided to do something about it.<br /><br />There are two options at this point. I could either manually move each user to a mapped printer on another server (which involved contacting each user, taking over their session, and migrating them), or I could script the move (and the users won't know the difference). I chose the scripting method, especially since I don't like to track down and interrupt the users when it can be avoided.<br /><br />First things first, set up each printer queue on a print server. This is necessary in either option. Hopefully you have a standard naming convention, because scripting is a lot easier if you don't have to change the printer names. (I'll show you a way to handle printer renames later in this post, but it gets messy if there's more than just a few exceptions).<br /><br />Next, write up your script. Here's what I've done:<br /><br /><code><br />'Find the default locally mapped printer, move it to a print server mapping.<br />Dim ws, dflt, nCount, to_server<br />Dim WshNet, WshShell<br />Dim objNetwork<br />Set objNetwork = CreateObject("WScript.Network")<br /><br />' The server where the new print queues are hosted.<br />to_server = "\\printserver01"<br /><br />' Find the default printer from the registry, strip out unneeded text.<br />Set ws = WScript.CreateObject("WScript.Shell")<br />dflt = ws.RegRead("HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows\Device")<br />nCount = instr(dflt,",") -1<br />dflt = left(dflt,nCount)<br /><br />' Create the printer mapping for the client.<br />On error Resume Next<br />objNetwork.AddWindowsPrinterConnection to_server+"\"+dflt<br /><br />' Set the created printer mapping as the default.<br />On error Resume Next<br />objNetwork.SetDefaultPrinter to_server+"\"+dflt<br /></code><br /><br />To map to a renamed printer queue, add this to the script, right before the part of the script where the printer mapping occurs. If the printer name matches what you specify, it will rename it to the new, renamed print queue.<br /><br /><code><br />' Specific mapping for Joe Blow's printer. Change dflt to the printer you want to match.<br />if dflt="JoeBlow_HP4000" then<br /> ' Change dflt to the renamed print queue.<br /> dflt = "Site2_HP4100-JoeBlow"<br /> to_server = "\\printserver02"<br />End if<br /></code><br /><br />Also, if you have a client that uses more than one printer, use the below script to determine this, map them to all their printers, and then set their default printer. The script will try to compare their mapped printer with any one of the printers they need to activate this section of script. This script does an Exit Function, which assumes that this migration piece is part of a function. <br /><br /><code><br />' Specific mappings for store 3's printers. This will see if dflt is the name of either of this store's printers<br />if dflt="str3_HP4250-1" or dflt="str3_HP4250-2" then<br />' Map both printer that the store employee's use.<br /> objNetwork.AddWindowsPrinterConnection "\\printserver01\str3_HP4250-1"<br /> objNetwork.AddWindowsPrinterConnection "\\printerserver01\str3_HP4250-2"<br />' Set the default printer to the default the user previously had.<br /> objNetwork.SetDefaultPrinter to_server+"\"+dflt<br /> Exit Function<br />End if<br /></code><br /><br />Personally, I incorporated this code as part of my login script, which runs each time a user logs in. After a few days, all of my users should have their printers mapped to the print server and I'll delete the local print queues and remove the printer drivers.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com1tag:blogger.com,1999:blog-5797059.post-56465366045462180182008-04-04T01:32:00.004-05:002008-04-04T01:38:43.607-05:00Using Wireshark to determine bandwidth needs and top bandwidth usersToday I'll show a couple of tricks to determine bandwidth of a conversation between two hosts and a trick to help quickly determine top bandwidth users on a network. To do this, download and install the massively powerful free Network Protocol Analyzer, <a href="http://www.wireshark.org/">Wireshark</a>. <br /><br />First, we'll look at how to determine the average bandwidth between two hosts. I first came across the need for this information when I was tasked to plan a move of a department from one site to another. The users of this department need to use a specialized application hosted at the original site, but bandwidth may be an issue. To test, we bought one user's computer to the second site and had him log in and use the software. Even if the test is successful, we need to know the bandwidth impact of not just one user, but of the entire department (in this case, ten users). We needed to find this one user's usage, then we could multiply by the number of users and get an approximate average bandwidth need. To find this:<br /><br />1. Open Wireshark.<br />2. Click on Capture, then Interfaces.<br />3. Your available network interfaces will appear. Find the interface you wish to monitor, then click Options.<br />4. The Capture Options window will appear. Since we're monitoring the communication between two hosts, we only want to see the traffic between the two. Type host {IP of one host} && host {IP of other host} next to the Capture Filter button. This feature is actually really powerful, allowing you to monitor just per port, per network, exclude hosts or port or networks, etc. For a good list of capture filter options, look at <a href="http://wiki.wireshark.org/CaptureFilters">The Wireshark Wiki</a> or <a href="http://home.insight.rr.com/procana/">this site: http://home.insight.rr.com/procana/</a>.<br />5. It's a good idea to save your capture to a file. To set this up, enter a location and file name next to the File field.<br />6. Click the Start button to start your capture.<br />7. At this point you'll start seeing the packets being captured. Start running your tests.<br />8. After you're done testing, click Capture, then click Stop. Depending on the size of the capture, it may take a minute or two for the capture to fully stop.<br />9. Now, click Statistics and click Summary. The Wireshark:Summary window will appear.<br /><br /><img src="http://i207.photobucket.com/albums/bb110/netmancer/SysAdminHell/wireshark/ws_sum.jpg"><br /><br />Here is the summary of the communications between the two hosts. In my example, the Avg bytes/sec is 4555.791, or approx 4.6Kbps. This can help you determine your bandwidth needs for an application or will help you recognize if one client is taking up more bandwidth than it should. When determining bandwidth needs, you have to realize that this is the AVERAGE bytes per second, not the maximum. There may be certain times that the host could take exceed that, such as on an application open or save. With proper testing, such as taking measurements during each section of the test, you can verify if this is the case and can help you plan accordingly.<br /><br />You can also use this method to determine if a client is taking up much more bandwidth than it should. If you can capture all communications on a network, such as mirroring your WAN (or Internet) port, you can find out what host is transmitting the most packets or the most bytes. To do this:<br /><br />1. Start a capture like listed above, but skip the Capture Filter. <br />2. Once you feel that you have an adequately sized sample, stop the capture. <br />3. Click Statistics and choose Conversations. <br />4. I typically choose the IPv4 tab. <br />5. You can sort by Packets or by Bytes. <br /><br /><img src="http://i207.photobucket.com/albums/bb110/netmancer/SysAdminHell/wireshark/ws_conv.jpg"><br /><br />In my example, you can see that the top conversation between Address A and Address B has sent many more packets and many more Bytes than the next host. This can help you find out your biggest bandwidth users and will show you whom they are talking to. I've actually used this method to find out some of my bigger users of my Internet bandwidth and was able to determine that the biggest bandwidth hog was those users listening to streaming Internet radio, which gave justification for web filtering.<br /><br /><a href="http://www.wireshark.org/">Wireshark </a>is powerful tool as shown above, but it is much more powerful if utilized well. Also to note, Wireshark was previously known as Ethereal. When searching for more information, most Ethereal information should be applicable to Wireshark.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com8tag:blogger.com,1999:blog-5797059.post-85252551702249511352008-03-31T21:25:00.005-05:002008-04-01T01:33:42.875-05:00Software Review: The Hobbit MonitorWhen looking for server and network device monitoring, there are quite a few options, ranging from very expensive to free. Today I focus on a free solution that I use, <a href="http://hobbitmon.sourceforge.net/">The Hobbit Monitor</a>.<br /><br />Hobbit is a system based on a plug-in for the <a href="http://www.bb4.com/">Big Brother Monitoring software</a>. Big Brother has been around for quite some time and was bought by Quest Software a few years ago. Hobbit is very comparable the Big Brother system, keeping most of the same general interface and functionality but adding many new features and overall speed improvements. <br /><br />Hobbit is a monitoring solution for servers and network devices and allows you to write or use extensions to monitor just about anything that responds over a network connection. A central server controls and collects the monitoring and displays the results via a fairly easy to use web interface. It will track history and trends (via rrd) and provides a built-in reporting tool. If there is an issue (that you've defined), such as a down host, the interface will turn red and will performs any alerting actions that you've defined, such as sending an email or sms message.<br /><br />A member of the Hobbit team provides a live demo here: <a href="http://www.hswn.dk/hobbit/">http://www.hswn.dk/hobbit/</a><br /><br />The alerting function has some great features and is very customizable, but is less than straight forward in its setup. An example the configuration file:<br /><br />$PHONE=MAIL mycell@acme.com SERVICE=conn REPEAT=2h FORMAT=sms DURATION>10m<br />$SYSADMIN=MAIL admin@acme.com REPEAT=2h DURATION>10m TIME=*:0600:2300<br /><br />PAGE=servers/siteone TIME=*:0700:2100<br /> MAIL a_sysadmin@acme.com SERVICE=conn REPEAT=50h FORMAT=plain<br /><br />HOST=%^win.*<br /> $PHONE<br /> $SYSADMIN<br /><br />Breaking it down a bit, the configuration is in two parts, the definition and rules of the targets and definitions of the monitoring rules.<br /><br />The $PHONE definition will email mycell@acme.com only if the conn test (ping test) fails, will repeat the alert every two hours, send the alert in sms format. It will also only trigger if the system has been in alert status for more than ten minutes. The $SYSADMIN definition will email admin@acme.com every two hours on ANY failed test lasting over ten minutes and only between the hours of 6am and 11pm. Those two lines define the targets (whom to email) and the conditions at which to email those addresses.<br /><br />The PAGE=servers/siteone definition will monitor all the hosts on a page on the server. If your server is http://hobbit.acme.com, then it will monitor all the hosts on http://hobbit.acme.com/servers/siteone. Continuing on that line, the section TIME=*:0700:2100 will only trigger the alert if a host is in alert status between the hours of 7am and 9pm. The next line specifies a target, in this case an email address with some extra rules. The HOST=%^win.* will monitor any hosts that has win. in the name. For example, if you name several servers inside Hobbit win.server, like win.mailserver, win.fileserver, win.appserver. No matter where in Hobbit you have these servers, they will be monitored under this rule. The next two lines, $PHONE and $SYSADMIN just call the predefined targets and use the rules defined there.<br /><br />As you can see, the alerting functionality is very customizable and, even if the setup isn't point and click, not that hard to set up once you have a little understanding about it. Hobbit also features an easy way to pause or stop alerts via it's web interface. You can stop alerts by test type (like ping test, telnet test, etc), set a duration for the stopage (like no alerts for this host for the next two hours, or until the test turns ok), or even schedule a stopage when you are scheduling some downtime for a host.<br /><br />As I mentioned before, Hobbit can be extended and customized for greater functionality. You can add more tests either by enabling those built in (refernce the help file for details), by writing your own port tests (also in the help), or by adding extensions. See <a href="http://deadcat.net">deadcat.net</a> for a lot of extensions and additional tests. Although the majority of these are geared towards Big Brother, with a little bit of code tweaking they can be easily adapted to Hobbit.<br /><br />Although this system seems to be Linux/Unix oriented at a quick glance, it provides a lot of functionality for Windows systems utiliziing an agent called BBWin. With BBWin, you can monitor resources such as CPU usage, disk usage, memory usage, running processes and services, uptime, and netstat results. You can also add additional extensions (called externals in BBWin) to test for other things. Configuration is done in an XML file on each server and is very customizable. <br /><br />You can customize the default warn and panic levels for the CPU usage:<br /><br /><img src="http://i207.photobucket.com/albums/bb110/netmancer/SysAdminHell/Hobbit/cpu.jpg"><br /><br />Disk monitoring can be configured with a default warning and panic levels:<br /><br /><img src="http://i207.photobucket.com/albums/bb110/netmancer/SysAdminHell/Hobbit/disk.jpg"><br /><br />Or you can specify specific levels per drive based on a percentage or just an amout of space left:<br /><br /><img src="http://i207.photobucket.com/albums/bb110/netmancer/SysAdminHell/Hobbit/disk1.jpg"><br /><br />Remote drives and optical drives can be monitored as well:<br /><br /><img src="http://i207.photobucket.com/albums/bb110/netmancer/SysAdminHell/Hobbit/disk2.jpg"><br /><br />Services can be monitored wheter they are running or not. You can also automatically restart the service if you so configure it. You can specify any process running on the server just by adding another line with it's service name. Processes are configured similarily:<br /><br /><img src="http://i207.photobucket.com/albums/bb110/netmancer/SysAdminHell/Hobbit/services.jpg"><br /><br />Example of the Hobbit overview of some Windows servers utilizing BBWin:<br /><br /><img src="http://i207.photobucket.com/albums/bb110/netmancer/SysAdminHell/Hobbit/windows_mon_example.jpg"><br /><br />Example of the CPU usage monitoring:<br /><br /><img src="http://i207.photobucket.com/albums/bb110/netmancer/SysAdminHell/Hobbit/cpu_example.jpg"><br /><br />Example of the OpenManage extension I use for my Dell servers:<br /><br /><img src="http://i207.photobucket.com/albums/bb110/netmancer/SysAdminHell/Hobbit/openmanage_example.jpg"><br /><br />As you can see, Hobbit is a very powerful and customizable alternative to the other server and network monitoring products out there. With a little bit of reading and some work, you can get this system up and monitoring your systems without too much hassle. Hobbit is definately worth a try if you need a solution and don't have the funds to drop for a commercial solution.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com7tag:blogger.com,1999:blog-5797059.post-55992049490632189162008-03-16T21:46:00.002-05:002008-03-16T21:50:27.813-05:00Awesome Utility: TestDiskSo, a family member brought me a laptop from a small business owner who he helps with computer issues. Well, the laptop is broke. It looks like it'll boot into Windows (XP Home) and then blue screens. Safe mode does the same thing. Although the BIOS will see the disk, the Windows install media doesn't. And of course the laptop's owner really needs the company data off of it, can't afford data recovery, and, of course, has no backups.<br /><br />We pulled the drive out of the laptop and used a IDE to USB converter to hook it up to my laptop. Windows recognizes the disk and assigns it a drive letter, but took forever (like 10 minutes) before it showed up in My Computer. Attempting to access the drive via My Computer, command prompt, or even by Run (e:\) would error out. So I figured the disk is in some way corrupt and a third party recovery software was needed.<br /><br />I tried several recovery softwares, but the one that eventually worked was <a href="http://www.cgsecurity.org/wiki/TestDisk">TestDisk</a>. <a href="http://www.cgsecurity.org/wiki/TestDisk">TestDisk </a>is OpenSource freeware designed specifically for drives with lost partitions or recovering data from non-bootable drives. <br /><br />From thier website, <a href="http://www.cgsecurity.org/wiki/TestDisk">TestDisk </a>can:<br /><br /> * Fix partition table, recover deleted partition<br /> * Recover FAT32 boot sector from its backup<br /> * Rebuild FAT12/FAT16/FAT32 boot sector<br /> * Fix FAT tables<br /> * Rebuild NTFS boot sector<br /> * Recover NTFS boot sector from its backup<br /> * Fix MFT using MFT mirror<br /> * Locate ext2/ext3 Backup SuperBlock<br /><br />It can also run under DOS, Windows, Linux, BSD, MacOS, and SunOS and can handle MANY different file systems.<br /><br />For my issue in particular, I did the following:<br /><br />1. Hook the drive up your computer. I used an IDE to USB adapter, but I'm sure setting the drive into slave mode and installing it into a PC will work as well.<br />2. Allow Windows to find the drive (I'm not sure if this is necessary since Windows XP found the drive for me. It may work without Windows recognition).<br />3. Open TestDisk (did I mention that no install is required?).<br />4. It asks to create a log file, I chose <span style="font-style:italic;">Create</span>. <br />5. Select the drive and choose <span style="font-style:italic;">Proceed</span>.<br />6. Choose the partition table type. Since this drive was running Windows, I chose <span style="font-style:italic;">Intel</span>.<br />7. Here's the meat of the software. I chose <span style="font-style:italic;">Advanced</span>.<br />8. Choose your partition you want to analyze. Some drives have more than one partition; even if there's only one presented to Windows, some manufacturers have a Diagnostic or Restore partition.<br />9. The next option I chose is <span style="font-style:italic;">List</span>.<br />10. This should list the files on the drive. Select the drive by using the Up or Down arrows. Enter will bring you into a folder. The Left arrow will bring you up a level in the folder tree.<br />11. Select the file or folder you want to recover and hit the C key to copy. It will present you with an option to choose the directory on the local machine (the machine you're running <a href="http://www.cgsecurity.org/wiki/TestDisk">TestDisk </a>from) where you want to copy the file to. Hit Enter with your choice.<br />12. After the copy is complete, the text "<span style="font-style:italic;">Copy done!</span>" will appear in green text. You can now choose another file or directory to copy or hit the Q key to quit.<br /><br />Also be aware that if you copy a large amount of data it will be fairly SLOW. Or at least slower than most people's standards. But you will have your data, so a little time should be no big deal.<br /><br />Seriously, add <a href="http://www.cgsecurity.org/wiki/TestDisk">TestDisk</a> to your Admin toolbox immediately.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com5tag:blogger.com,1999:blog-5797059.post-30130743911048061462008-03-15T18:16:00.002-05:002008-03-15T18:37:37.719-05:00A Couple of VMWare IssuesSorry for the lack of posting this month; building a 200 person call center from scratch has been dominating my time. It is almost done though, but I still need to find time to post.<br /><br />Today we discuss a couple VMware issues.<br /><br /><b>"Operation Failed Since Another Task Is In Progress"</b><br /><br />I've seen this error a couple of times. Basically what happens is that a VM will show running but is actually frozen. Any attempts to force a VM shutdown or restart results in the error "Operation Failed Since Another Task Is In Progress". Same if attempted to Vmotion the machine.<br /><br />Basically this turns out to be a snapshot issue. To fix this without rebooting the ESX server, we can just kill the VM process via command line. I took this tip from a VMware Communities post and cleaned it up a little. The post can be <a href="http://communities.vmware.com/thread/60671?tstart=0&start=30">found here</a>.<br /><br /><br />1. SSH into the ESX server that is currently running the affected VM (or you can use the console).<br />2. At the cmd prompt enter: <span style="color: rgb(255, 0, 0);">cat /proc/vmware/vm/*/names</span><br /><br />This lists the running VM's on the host server you are logged on to. Look for the vmid=##<br /><br /><span style="color: rgb(51, 204, 0);">vmid=1069 pid=-1 cfgFile="/vmfs/volumes/45.../server1/server1.vmx"</span><br /><span style="color: rgb(51, 204, 0);">uuid="50..." displayName="server1"</span><br /><span style="color: rgb(51, 204, 0);">vmid=1107 pid=-1 cfgFile="/vmfs/volumes/45.../server2/server2.vmx"</span><br /><span style="color: rgb(51, 204, 0);">uuid="50..." displayName="server2"</span><br /><span style="color: rgb(255, 0, 0);">vmid=1149</span> <span style="color: rgb(51, 204, 0);">pid=-1 cfgFile="/vmfs/volumes/45.../server3/server3.vmx"</span><br /><span style="color: rgb(51, 204, 0);">uuid="50..." displayName="server3"</span><br /><span style="color: rgb(51, 204, 0);">vmid=1156 pid=-1 cfgFile="/vmfs/volumes/45.../server4/server4.vmx"</span><br /><span style="color: rgb(51, 204, 0);">uuid="50..." displayName="server4"</span><br /><br />3. At the cmd prompt enter: <span style="color: rgb(255, 0, 0);">less -S /proc/vmware/vm/1149/cpu/status</span><br /><br />It will now clear the console screen and show a bunch of numbers and stats. Hit the right arrow key until you see the section about group. Example:<br /><br /><span style="color: rgb(51, 204, 0);">group </span><br /><span style="color: rgb(51, 204, 0);">vm.1058</span> <br /><br />With this ID number you can safely kill the VM without corrupting it.<br /><br />4. At the cmd prompt enter: <span style="color: rgb(255, 0, 0);"> /usr/lib/vmware/bin/vmkload_app -k 9 1058</span><br /><br />(Then number 1058 in the command is an example; your VM's group number goes here.)<br /><br />5. If you see "<span style="color: rgb(51, 204, 0);">Warning: Apr 20 16:22:22.710: Sending signal '9' to world 1058.</span>" this means your VM has been closed successfully. You can now start your VM back up and run it.<br /><br /><b>Unable to migrate due to "Remote Backing" issues with CD/DVD</b><br /><br />When trying to VMotion two VM machines, I received the error: "Unable to migrate from VMESX2 to VMESX1: Virtual machine is configured to use a device that prevents migration: Device 'CD/DVD Drive 1' is a connected device with a remote backing.". Going into Edit Settings didn't help; all CD/DVD options where greyed out. I had recently set both systems to use the client device and to disconnect.<br /><br />I was able to fix one of them; the VMware Tools was still waiting to be installed. I right-clicked on the VM and choose "End VMware tools install". That did the trick and it VMotioned fine.<br /><br />The other system didn't have that option. I ssh'd into the esx host and from the command prompt ran <span style="color: rgb(255, 0, 0);">service mgmt-vmware restart</span><br /><br />After about two minutes (including a scary "disconnected" state in Virtual Center that lasted about a minute), it allowed me once again mess with my CD/DVD settings and I was once again able to Vmotion.<br /><br />More on this issue in <a href="http://communities.vmware.com/docs/DOC-2804">this VMWare Communities thread</a>.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com21tag:blogger.com,1999:blog-5797059.post-63745454111646409162008-03-03T22:28:00.002-06:002008-03-03T22:37:16.742-06:00Using DSADD.exe to Bulk Create Users in Active DirectorySo I had to add about 70 user accounts to Active Directory in preparation for a new call center. Sounds like boring, tedious work if you ask me. Well, it would be without the magic of <a href="http://www.ss64.com/nt/dsadd.html">dsadd.exe</a>, a command in Windows 2003 command line that allows you to create Active Directory objects, such as users, computers, groups, contacts, and OUs. My focus here is on adding multiple user accounts.<br /><br />Focusing on my needs, I wanted to add the user, set the display name, set a password, set a description, set the office, their title and department, and their logon script while forcing a password change and the ability to change the password. I also wanted these accounts to start disabled since it might be a week or two before the users are ready for them. Have the accounts created in the proper OU would also be nice. Also, my users would be logging with accounts based on their phone extension numbers, since high turnover is a concern.<br /><br />So, I set up a user, called cc70215. Since I want him in his proper OU, I set him up as cn=cc70215,ou=Users,ou=CallCenter,dc=sysadminhell,dc=com. This was no big deal, I already had the list of users, just copy/paste and some text replacement set up the list of users. With all I wanted to do, I set up the command as such: <br /><br /><span style="color: rgb(255, 0, 0);">DSADD user cn=cc70215,ou=Users,ou=CallCenter,dc=sysadminhell,dc=com -display cc70215 -pwd mypassword -office "Call Center" -title "Customer Service Associate" -dept Collections -loscr cc_li.vbs -mustchpwd yes -canchpwd yes -disabled yes</span><br /><br />A success message will return if successful and navigating to the CallCenter, Users OU will reveal my new account. But this is a pain to set up 70 times. And it was 30 minutes before time to go home. So, I got dirty a bit and cheated with the batch script FOR command. First, I got all my users in a comma-separated list. I also had to put quotes around each user. A quick text replacement in my favorite text editor (Notepad2) did the trick. Then I created a batch file, and put in the following:<br /><br /><span style="color: rgb(255, 0, 0);">FOR %%D in ("cn=cc70216,ou=Users,ou=CallCenter,dc=sysadminhell,dc=com", "cn=cc70217,ou=Users,ou=CallCenter,dc=sysadminhell,dc=com", "cn=cc70218,ou=Users,ou=CallCenter,dc=sysadminhell,dc=com", "cn=cc70219,ou=Users,ou=CallCenter,dc=sysadminhell,dc=com", "cn=cc70220,ou=Users,ou=CallCenter,dc=sysadminhell,dc=com") DO DSADD user %%D -display %%D -pwd mypassword -office "Call Center" -title "Customer Service Associate" -dept Collections -loscr cc_li.vbs -mustchpwd yes -canchpwd yes -disabled yes</span><br /><br />For this example I only used 5 users, but you get the point.<br /><br />Put a pause and exit in there and run it as a domain admin. With all luck, your accounts will show up in no time. Now, I did find one issue with this method. Here I'm telling it to set the -display (Display Name) with the variable %%D. What this does is set the Display Name for the account as "cn=cc70216,ou=Users,ou=CallCenter,dc=sysadminhell,dc=com", which is not ideal. Since I was under some time constraints, I just changed the Display Name for the new accounts manually (took me about 10 minutes to prep the script, 2 minutes to run it, then another 10 to fix the Display Name issue). Researching other ways to do this now that I have some free time, I could have done this via wscript (using arrays), used the built-in Windows command <a href="http://www.ss64.com/nt/csvde.html">CSVDE.exe</a> (see this <a href="http://technet2.microsoft.com/windowsserver/en/library/1050686f-3464-41af-b7e4-016ab0c4db261033.mspx?mfr=true">Technet article</a> for more info), or bought one of several different commercial applications. Even with the one flaw, it did all I wanted it to do for free and under 30 minutes.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com5tag:blogger.com,1999:blog-5797059.post-34294488147087965552008-03-01T21:23:00.006-06:002008-03-01T23:27:41.108-06:00A Few Print Server Tips (for Windows)I was setting up an old server to act as a print server today and decided to share a tip or two.<br /><br /><span style="font-weight: bold;">Move your print spools to another disk.</span><br /><br />Since spooling can take up a bit of I/O, moving this to a disk other than on your system disk can help speed things up a bit. This also helped me a few years ago when I had a 12 GB system partition (remember when vendors shipped drives like that) and needed to free up some space.<br /><br />1. Open the Printers and Faxes applet.<br />2. Click on File and Server Properties.<br />3. Click the Advanced tab.<br />4. Change the directory of the Spool Folder to the other drive.<br />5. Click apply.<br />6. Restart the Print Spooler. Open a command line and run<span style="color: rgb(255, 0, 0);"> net stop spooler && net start spooler</span>. <br /><br /><span style="font-weight:bold;">Install only the DRIVERS, not the software.</span><br /><br />I've seen people do this before, especially with HP or Dell (Lexmark) printers. When setting up a printer on a server, don't run the printer's "install" utility, don't install their special "printer monitor", and don't run any "driver install packages". Always install only the drivers. This avoids all the unnecessary services and processes running on your server. I've found that most of these programs are bulky, eat memory, and will slow down your printing. I've seen a few from the vendors I mentioned already that have memory leaks. <br /><br /><span style="font-weight:bold;">Beware printers on a terminal server.</span><br /><br />Actually, don't beware of them. Just don't put them on the terminal server in the first place. Set up all your printer queues on a different server. There are several reasons for this. <br /><br />1. Disk I/O is an important resource in Terminal Server. When you have 60+ users hammering the same disk at the same time, you don't need 20 print jobs trying to do the same. If you HAVE to have printer queues on the Terminal Server, follow my first tip and move the spools to another disk.<br />2. Memory usage is another important resource. The print queues will take up memory, but some drivers will spawn a process for each and every user on the system. This adds up quick if you have two or three of these processes per user and a large number of users.<br />3. If you have a limited amount of hard drive space, periods where there is a high volume of printing will make things much worse (unless you move the spools to another drive).<br />4. All of your users will see all of the print queues on the system. This can provide some amount of confusion for your users, and you might find them printing to the wrong printer or changing printer settings.<br /><br /><span style="font-weight:bold;">Printer pools and other tips</span><br /><br />I found the article <a href="http://articles.techrepublic.com.com/5100-6350-1060559.html?tag=rbxccnbtr1">Configure IT Quick: Configure print queue servers for efficient printing</a> informative if it's applicable for your environment.<br /><br />Also see the article <a href="http://articles.techrepublic.com.com/5100-6270_11-5034678.html?tag=rbxccnbtr1">Get IT Done: Boost printer performance by adjusting Windows' spool file settings</a>.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com0tag:blogger.com,1999:blog-5797059.post-3762633985304535082008-02-29T01:02:00.002-06:002008-02-29T01:28:58.239-06:00SysAdmin Related Podcasts, Part 2A couple new shows, and a couple updates on the shows I mentioned before but I hadn't really listened to all that much.<br /><br />New: <a href="http://www.castingfromtheserverroom.com/podcast/">Casting from the Server Room</a>: I think this is one of my new favorite shows. It's a group of guys, all admins for school systems, just chatting tech. They put a heavy focus on the deeper Sysadmin stuff, discussing things like SANs, backups (or lack thereof), servers, file shares, Active Directory, etc. It's very informal yet it flows and stays on track very well. I really enjoy this show and highly recommend it.<br /><br />New: <a href="http://itidiots.com/">IT idiots</a>: These guys do a video podcast where they discuss a focused topic (like for example, Windows 2008 Terminal Server or Active Directory Administration) and include screencasts of the product in action. I've only watched a couple of these episodes, but what I've seen is very informative (especially if you don't have the product at your testing disposal) and I look forward to watching the bulk of these episodes.<br /><br />New: <a href="http://pauldotcom.com/">PaulDotCom Security Weekly</a>: I had only downloaded one of their shows, but I found myself downloading more the first chance I got. Haven't gotten a chance to listen to more, but it's definitely going to be something that I do soon (as long as the rest of the shows are on the level as the one I listened to).<br /><br />New: <a href="http://www.sysadminshow.com/">The SysAdminShow</a>: These guys actually product (so it seems) an actual radio show on on 98.9 FM Radio Free Nashville called the SysAdmin Show. I listened to one show and turned it off half way through. To be fair, they were doing a live show at a local conference and were more focused on that than on any tech. I also hate live remote shows. I'll give them a chance and will listen to a couple other episodes before dismissing them. You can download the episodes via iTunes (where I'm getting ALL of these episodes).<br /><br />Update: <a href="http://www.microsoft.com/winme/0506/24231/technet_fy06.xml">Microsoft TechNet Podcast</a>: The couple I listened to were pretty informative, but very bland. It seems that the presenters are actually reading Microsoft whitepapers word for word, you even hear the paper shuffling and everything. The two episodes I heard were just about as boring as actually reading a MS whitepaper (or any whitepaper for that matter). I'll still listen for the information content.<br /><br />Update: <a href="http://www.realtime-windowsserver.com/podcast/">Realtime Community: Windows Server</a>: I listened to three or four of these episodes. It seems the format focuses more on interviews with product/solution vendors discussing how their products can help. I feel sorta dirty listening to it due to the fact that I can't stand anything more than to listen to another vendor hawk their wares, but it is a good way to learn about some new products without having to cough up information or have to shake a vendor's salesman off your back.<br /><br />Update: <a href="http://www.realtime-itcompliance.com/podcast/">Realtime Community: IT Compliance</a>: Discussion of legal topics bore me to death. Actually, I can use recorded legal talks as a sleep aid, but the couple episodes I listened to were extremely informative. I actually forwarded this one on to my boss, just as a "hey did you know half of this stuff??" type of thing. I really suggest that everyone listens to at least the <span style="font-style:italic;">Demystifying Privacy Laws: What You Need to Know to Protect Your Business</span> episode.<br /><br />Update: <a href="http://runyourownserver.org/">Run Your Own Server</a>: First, I just wanted to point out that this podcast seems to have gone stale, last episode was Nov 07. Doesn't mean you shouldn't listen to the already recorded shows. I listened to quite a few and most are well done and pretty good. Some of the discussion seems pretty basic, maybe focused more on the beginner side of things, but there were a few good tidbits to be had. Also, <span style="font-style:italic;">Episode 16, One Admin, One Server</span>, well, listen to it and let me know if you agree with me that the speaker is just plain nuts.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com3tag:blogger.com,1999:blog-5797059.post-3279233545437120192008-02-28T09:11:00.003-06:002008-02-28T11:25:04.949-06:00Encrypt Your ScriptsNeed a quick and easy way to encrypt the contents of a vbs script to keep its contents safe (well, decently safe)? Microsoft has a tool called <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=e7877f67-c447-4873-b1b0-21f0626a6329&DisplayLang=en">Script Encoder</a> that does such a thing. The operation is pretty easy, just install the tool on your workstation, create a working script, and drop to a command prompt.<br /><br /><b><span style="color: rgb(255, 0, 0);">C:\Program Files\Windows Script Encoder>screnc.exe "c:\scripts\original.vbs" "c:\scripts\encrypted.vbe"</span></b><br /><br />Didn't have to install anything on the client side, script ran just fine on Windows 2003 SP2. <br /><br />For more info, including examples and syntax, check out the <a href="http://msdn2.microsoft.com/en-us/library/d14c8zsc(VS.85).aspx">MSDN Script Encoder Overview.</a> They also have info on encrypting JScript.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com0tag:blogger.com,1999:blog-5797059.post-29018760865215542662008-02-22T14:16:00.004-06:002008-02-22T15:29:47.448-06:00Lest We Remember: Cold Boot Attacks on Encryption Keys.Wow. This is amazing and scary at the same time. Basically, some researchers figured out that in order to bypass harddrive encryption when you have physical control over the device, you can read the contents of the RAM chips to obtain the encryption key. This is not an attack on the encryption itself. It's like finding the key to the super-secure door under the welcome mat. Even if power is cut from the device, data stays in RAM for a certain amount of time (this time can be expanded by freezing the chips with a bottle of canned air). Booting the device to a special tool allows for the memory to be copied and analyzed. They can even remove the ram chip and put it in another laptop for analysis. The only secure way to protect yourself is to power the laptop down completely and guard it for a few minutes for the memory to finally clear.<br /><br />Be sure to spend the 5 minutes watching the <a href="http://www.news.com/8301-13578_3-9876060-38.html?tag=nefd.pop">video in the article</a>.<br /><br />What's even more interesting is that most folks transport their laptops in a power saving mode, such as in standby or hibernation. Even I carry my laptop around in standby. All it takes is for someone to steal the laptop and the encryption won't matter. <br /><br />This just proves that carrying information around is not safe. The approach I've been trying to take with my users is to give up the fat client laptops for a thin client laptop approach, such as <a href="http://h10010.www1.hp.com/wwpc/us/en/sm/WF25a/321957-321957-64295-321838-3660143-3660785.html">offerings from Neoware or HP</a>. The idea is to leave all information on the corporate network and require my traveling users to log in via secure VPN and RDP directly to their desktops. On top of not storing information, the thin clients are sturdy, don't have moving parts, run our VPN software just fine, easy to replace (no user specific information to transfer to another laptop), and are fairly cheap (approx a third of the cost of a regular laptop). I usually just keep a couple laying around for loaners; so if someone who doesn't travel much can check one out and I don't have to set up anything on it for them, only have to enable RDP on their desktops.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com0tag:blogger.com,1999:blog-5797059.post-3162265561125573652008-02-21T09:07:00.009-06:002008-02-21T10:26:21.655-06:00Account Lockouts and Password Resets Delegation TaskpadSo I've been struggling a little bit with delegation and taskpads. A little background: We're creating a new call center, eventually holding 200 users, and adding any additional support staff is out of the question. About every 20 users there will be a supervisor, and there will be 2 or 3 guys supervising them. They're also going to be working weekends, which would add a lot of headache on me and my crew (we don't have a weekend help desk, just one guy on call). So delegating password resets and account unlocks is pretty critical for our sanity (not to mention speedier service for the end user).<br /><br />Following the articles I posted earlier, setting up a taskpad view and even setting up the unlock rights/password change rights wasn't too difficult. Getting the password task was also easy, but finding a way for the end user to unlock an account without having to go into the account's properties was more of a challenge. I tried numerous scripts, wrote some scripts, but couldn't get it to work for some reason. Finally, I found the article <a href="http://www.petri.co.il/add_unlock_user_option_to_dsa.htm">How can I add an "unlock user account" option to the Active Directory Users and Computers context menu?</a> at the <a href="http://www.petri.co.il/">Petri IT Knowledgebase</a>. I followed the instructions exactly step-by-step and I ended up with a nice (and working) Unlock User option when right-clicking on a user account. After that, adding it to the taskpad view was as easy as adding the Reset Password function.<br /><br />A quick overview of how I set these up:<br /><br /><span style="font-weight:bold;">Set up delegation for account lockouts and password resets.</span><br /><br />1. Create an AD group, populate with those folks whom you want to have delegation rights.<br />2. Right click the OU you want to delegate, click "Delegate Control".<br />3. Add your created group when prompted in the wizard.<br />4. Choose to create a custom task.<br />5. Choose ONLY user objects as the scope of what you want to delegate.<br />6. For permissions, choose only General and Property-specific. Check "Change password", "Reset password", "Read lockoutTime", and "Write lockoutTime".<br /><br />Note: If you want to check who has what delegation rights, or if you want to edit an existing delegation, check the security of the OU in question. In Active Directory Users and Computers, click View, Advanced Features. Then right-click the OU and choose properties. Click the Security tab, then Advanced. There you should see who has what permissions on this OU.<br /><br /><span style="font-weight:bold;">Create a taskpad.</span><br /><br />1. Open mmc.exe (Start, Run, mmc.exe).<br />2. Add Active Directory Users and Computers to your view.<br />3. Choose the OU you're delegating.<br />4. Right-click the OU and choose new window from here. This is the view you want your users to ONLY see.<br />5. Click Action, New Taskpad View.<br />6. Choose the style you like (I like the Vertical list, Text).<br />7. If you want them to be able to view the sub-OUs (child OUs) with the same view, select "All tree items that are the same type as the selected tree item" and "Make this the default taskpad".<br />8. To edit or add your tasks, right-click the OU and choose Edit Taskpad.<br />9. Choose the Tasks tab and click the New button.<br />10. To add the Reset Password task, choose Menu command.<br />11. Highlight a user account in the left window and choose Reset Password in the right window.<br />12. Put in a description, choose and icon, and you're set to go.<br />13. To add the Unlock User task, follow <a href="http://www.petri.co.il/add_unlock_user_option_to_dsa.htm">these instructions from the Petri IT Knowledgebase website.</a> Do that first. Then repeat steps 9 - 12, but choosing the Unlock user task.<br /><br /><span style="font-weight:bold;">Lock it down.</span><br /><br />To customize views, click the MMC icon next to the File menu. Choose Customize View. Select what you want your users to see. I personally remove everything except Console tree and Taskpad navigation tabs.<br /><br />After you're ready to deploy, click File and choose Options. In Console mode, select User mode - limited access (I use single window). Uncheck Allow the user to customize views (this is optional depending on what you want your users to do). Then save. Your users shouldn't be able to do much more than reset passwords and unlock accounts.<br /><br />To edit your saved .msc, right click it and choose Author. This will open it in editing mode.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com7tag:blogger.com,1999:blog-5797059.post-91221287012114826042008-02-16T13:45:00.004-06:002008-02-21T10:00:28.319-06:00SysAdmin PodcastsWell, running out of the few Admin podcasts I have, I went on a search for more. Since I've already done the research, I'll share my findings:<br /><br /><a href="http://www.acoupleofadmins.com/">A Couple of Admins</a>: These guys are two (or three usually) guys who work in the Admin field. I've listened to quite a few of their shows and always finding myself coming back for more. There's more non-related banter than I would like, but it flows well and the focused content makes up for it. They also seem to do a good job at researching their topics, for example, episode 13 Code Of Ethics roundtable was excellent. Put this show on your podcast playlist.<br /><br /><a href="http://kevindevin.com/">In the Trenches</a>: It is unfortunate when you come across something awesome only to find out that it's now over. Well, In the Trenches (ITT), was one of those something awesomes. Luckily you can still download and listen to the older podcasts, which is something completely awesome.<br /><br /><a href="http://www.dabcc.com/podcast.aspx">DABCC Radio: Virtualization Podcasts</a>: This podcast is completely devoted to virtualization technologies, such as server virtualization, application virtualization, Citrix, VMWare, VDI, application deployment, and more. All the episodes I've listened to seem to follow an interview-type format and is very professional and well done.<br /><br /><a href="http://www.microsoft.com/winme/0506/24231/technet_fy06.xml">Microsoft TechNet Podcast</a>: This one looks extremely promising and as a Windows-focused SysAdmin, I'm really excited about this podcast. Lots of focused technical topics discussing specific Microsoft technologies. <br /><br /><a href="http://technet.microsoft.com/en-us/bb510143.aspx">Microsoft TechNet Raido</a>: Don't know much about this one (found it while searching for TechNet Podcast website), looks interesting though.<br /><br /><a href="http://technet.microsoft.com/en-ca/support/bb412316.aspx">The Microsoft IT Manager Podcast</a>: I haven't listened to this yet, but some of the episode descriptions seem very promising.<br /><br /><a href="http://www.realtime-windowsserver.com/podcast/">Realtime Community: Windows Server</a>: I haven't had a chance to listen to this podcast yet, but I'm excited by the show descriptions.<br /><br /><a href="http://www.realtime-itcompliance.com/podcast/">Realtime Community: IT Compliance</a>: IT Compliance is usually better understood heard rather than read. Just subscribed today so I don't have much feedback on them yet.<br /><br /><a href="http://runyourownserver.org/">Run Your Own Server</a>: I JUST subscribed to their podcast, but all the topics seem very much Sysadmin oriented. Also it seems that the majority of topics seem to lean towards a focus on Linux. Reading some of the show notes this seems to be a very good podcast.<br /><br /><a href="http://www.windowsitpro.com/podcast/">Windows IT Pro Radio</a>: I just found out about this podcast, but Windows IT Pro magazine is top notch, so their podcast probably will be too.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com0tag:blogger.com,1999:blog-5797059.post-63787966669673222232008-02-15T16:23:00.001-06:002008-02-21T09:59:49.434-06:00Delegation DayWe have a new call center coming up and one of the projects I'm working on is Active Directory Delegation. This would allow me to give supervisors and call center managers the ability to reset the passwords and unlock the accounts of their users without calling me or my guys. Here's some resources:<br /><br /><br />Here's Microsoft's .doc guide regarding delegation:<br /><br /><a href="http://www.microsoft.com/downloads/details.aspx?familyid=631747a3-79e1-48fa-9730-dae7c0a1d6d3&displaylang=en">Best Practices for Delegating Active Directory Administration</a><br /><br />This Microsoft article tells you how to delegate the Unlock Account Right. (2003 users, skip the part about editing the Dssec.dat file; 2003 has that already enabled, and the setting isn't even there anyways):<br /><br /><a href="http://support.microsoft.com/?kbid=294952">How To Delegate the Unlock Account Right</a><br /><br />This MS article is more of a collection of other MS articles regarding delegation:<br /><br /><a href="http://support.microsoft.com/kb/555986/en-us">How to Delegate Basic Server Administration To Junior Administrators</a><br /><br />When looking at using Active Directory Delegation for those non-technical, look at using Taskpads:<br /><br /><a href=http://searchwindowssecurity.techtarget.com/news/article/0,289142,sid45_gci1002876,00.html>Making use of Active Directory Taskpads</a><br /><br />(I'm only linking to one page of a pretty decent article, so check out the rest of it as well.)<br /><br />This is the best taskpad article I've found:<br /><br /><a href=http://www.petri.co.il/create_taskpads_for_ad_operations.htm>How can I easily perform management operations in AD from a customized Taskpad?</a><br /><br />This is a quick article of someone whom needed to Delegate Unlock Account rights and describes his fun. He has some vbs script code that integrates into the taskpad that will take the highlighted user, unlock them, and log who unlocked whom on a domain controller. I'm currently looking at using this, but at the moment I'm getting errors:<br /><br /><a href="http://www.windowsitpro.com/Windows/Article/ArticleID/41551/41551.html">WindowsITPro, Unlock User Accounts</a>Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com1tag:blogger.com,1999:blog-5797059.post-14401480903904891732008-02-14T17:31:00.006-06:002008-02-22T01:07:19.497-06:00lol 1 year hiatusSeems that I took EXACTLY one year off of this blog. Well, maybe it's time to get back into it.. possibly make it less of a link dump and more personal... We'll see.<br /><br />Here's a great tool:<br /><br /><a href="http://www.mxtoolbox.com/">MX Lookup Tool</a>.<br /><br />Do MX Lookups, Diagnostics, and test your mail server against 147 RBLs.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com0tag:blogger.com,1999:blog-5797059.post-35665248794867278832007-02-14T16:25:00.001-06:002008-02-22T01:03:29.384-06:00Active Directory Replication over Firewalls<a href="http://www.microsoft.com/technet/prodtechnol/windows2000serv/technologies/activedirectory/deploy/confeat/adrepfir.mspx">Active Directory Replication over Firewalls</a>: "This white paper explains how to get replication to function properly in environments where an Active Directory directory forest is distributed among internal perimeter networks (also known as DMZ, demilitarized zones, and screened subnets) and external (Internet-facing) networks."<br /><br />Ran into this issue when attaching a remote office over a gateway-to-gateway VPN involving two ciscos. The firewall still treated the VPN as an external network, and applied firewall rules to it. We didn't follow this (basically added a rule to allow all traffic from this VPN, then lock it down via switch acls) but it's good info to have.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com0tag:blogger.com,1999:blog-5797059.post-46120452069651846902007-02-14T16:22:00.001-06:002008-02-22T01:04:01.574-06:00How to delete all Outlook Calendar items in Outlook 2002 and in Outlook 2003<a href="http://support.microsoft.com/kb/272151">How to delete all Outlook Calendar items in Outlook 2002 and in Outlook 2003</a>: "This article describes how to delete all of the items in the Outlook Calendar folder."<br /><br />Simple, but useful.Seth C.http://www.blogger.com/profile/12438430370035575551noreply@blogger.com0