McLean IT Consulting

WORRY FREE IT SUPPORT

Call Us: 250-412-5050
  • About
  • Services
    • IT Infrastructure Design
    • Remote & Onsite IT Support
    • Disaster Recovery
    • IT System Monitoring
    • IT Audit
    • Documentation
    • Medical IT Solutions
    • Wireless Networks
    • Cloud Computing
    • Virtualization
  • Partners
    • Lenovo
    • Ubiquiti Networks
    • Dragon Medical Practice Edition (Nuance)
    • Synology
    • Drobo
    • Adobe
    • Bitdefender
    • NAKIVO
  • Contact
  • Blog
  • Remote Support

PSA: SWEET32 vulnerability in OpenVPN

December 8, 2016 By Andrew McLean Leave a Comment

According to a security release by OpenVPN back in August, OpenVPN is vulnerable to attack on 64-bit block ciphers, such as 3DES and Blowfish — the latter being the default cipher enabled by OpenVPN.

Synology users should also pay particular attention here since the service does not allow for choosing a cipher within the UI — users will be forced to turn to SSH to configure the service by command-line.

The gist of the security release is that BF-*, DES* (including 3DES variants), and RC2-* ciphers should no longer be used, and AES-*, CAMELLIA-*, or SEED-* should be used instead. Personally I would recommend AES-192 or AES-256 since they are considered secure enough government information classified “Top Secret”.

On a Synology box the configuration file is here:
/usr/syno/etc/packages/VPNCenter/openvpn/openvpn.conf

If you see a line that starts with “cipher” (without quotes), check to see which cipher it is using, and if necessary, swap it out for a more secure one.

Example:
cipher AES-256-CBC

It doesn’t really matter where you put this line.

Remember to also make an identical change to the client-side OpenVPN configuration. In my case I can edit the “Advanced” tab in my VPN settings of Viscosity. In the window there I can just put the same line of code to enable AES-256-CBC encryption/decryption.

Filed Under: Technology

A Case for Split-Brain DNS

March 16, 2016 By Andrew McLean Leave a Comment

brain hemispheres
Split-Brain DNS

I recently tried to explain the concept of Split-Brain DNS to a colleague, with little success. Unless you are heavily involved in the infrastructure side of IT, the nuances of DNS can be daunting to the uninitiated.

Split-Brain DNS, also known as “Split-Horizon DNS” attempts to solve a problem that arises when any kind of network resource must be accessed from both inside and outside of a network.

For example, let’s say an IP-based video surveillance system has been set up at your workplace. All cameras feed into a device called an NVR, or Network Video Recorder. One feature of devices like this is that you can access the video feed from a computer or a mobile device like a tablet or phone. Just like any network resource like server or printer, to reach the NVR to view the video feed, you must know the address of the NVR. For the purposes of this example, we’ll say that the device address is 192.168.0.50. This is where the problem starts: this address will only work while inside the network. As soon as you leave the premises, no longer connected wired or wirelessly to the internal network, you can no longer reach the NVR by that address, not just because of the firewall, but also because the addresses in the 192.168.0.* network can’t be reached directly from the public internet space.

What many will do, then, is configure multiple profiles: one for internal use, another for outside. But what if you wanted to access the NVR with a single friendly server name, from both inside and outside the network?

Although this involves a little more on the infrastructure side, I’m a strong believer in making things simpler for users and clients. In my experience, a lot of confusion can arise from not being able to access this kind of information from a single profile.

So to understand split brain DNS, I need to delve a little into what Domain Name System (DNS) is and how it works.

DNS is basically a system that correlates an easy to remember name with a not easy to remember IP address. When you type in ” www.google.ca”, a bunch of things happen behind the scenes: your computer asks another computer where www.google.ca is, and eventually in a matter of a few thousandths of a second, the public address of that server is returned. You the user never see what that IP address is unless you know how to look for it, because everything happens invisibly and is handled by your browser and computer. See also my earlier post What is DNS?.

In this example, Google maintains a “DNS zone”, which is basically just a list of servers and server names that are publicly addressable.

Most businesses will have a website, which means that they will have a DNS zone for that domain. To properly configure split brain DNS, all one needs is a domain name, and an internal DNS server.

I will use my own website as an example. My website at www.mcleanit.ca is hosted on a Web server in California. In my DNS zone (mcleanit.ca) there is a server named “WWW”, whose value is the IP address of my Web server. When you look up www.mcleanit.ca, this is where it finds the real IP address and returns it to your computer. But I could have other servers. I might have a billing.mcleanit.ca, or mail.mcleanit.ca.

To continue the earlier example of the video surveillance system, I could make a DNS record called “surveillance” and point it at my (ideally static) public address of my place of business. From there, I would have to open up the relevant ports in the firewall and redirect them to the NVR. This would allow me to access the NVR remotely while outside of the network using surveillance.mcleanit.ca.

Here is where Split-Brain DNS comes in. A private local network can have its own DNS server. Often it is used in larger networks when servers and other network resources need to be addressed by name easily. Maybe an internal tracking system or private intranet website.

On the local DNS server, I could create another DNS zone for mcleanit.ca identical to the first, except for resources that exist on the local network, which I would instead correlate to the internal address. Then I would configure the DHCP server to assign the internal DNS server as the primary DNS provider. So while the real, public DNS record for surveillance.mcleanit.ca would point at my public address, the internal DNS record would override that with the local address for all internal computers (all those configured by DHCP, at least). Attempts to reach surveillance.mcleanit.ca from either inside or outside of the local network will now reach the same destination: the NVR.

Split Brain DNS

The downside is that now both DNS zones will have to be maintained. Changes to the public DNS zone will have to be duplicated on the private one when appropriate.

Implementing a DNS server doesn’t need a big expensive server though. A perfect use-case scenario even for home users is to make a Synology NAS available both inside and outside a network. And even the single-drive units themselves support Synology’s DNS app for an easy-to-use interface.

Filed Under: Technology

What is DHCP?

May 10, 2015 By Andrew McLean Leave a Comment

On any network, as with the Internet, every device needs an address in order to send or receive communication. DHCP is a system that makes this process easier.

DHCP stands for Dynamic Host Configuration Protocol. When configured, it automatically assigns, for a limited time, an address to any (or any approved) network device that asks for one. DHCP commonly operates from the Gateway Router in consumer-grade equipment, but in this post we’ll treat the DHCP server as an abstract service instead of a specific device.

How does DHCP work?

DHCP operates in four stages between the DHCP Server and the DHCP Client. The first stage happens when a client device (when configured to use DHCP) is connected to the network be it a wired interface, or a wireless one.
DHCP process

First, the client broadcasts a DHCPDiscover message. Broadcast, in the context of networks, means that it sends this special message to every device on the network. This special message contains special hardware-identifying information so that the server will know who to respond to – since, of course, the client does not yet have an IP address to reply to.

All available DHCP servers will respond to this message with a DHCPOffer. This message will include an assigned address, the address “lease” time, and some other relevant information. The first DHCPOffer to be received by the client “wins”.

The client then replies to all DHCP servers with a DHCPRequest message, which notifies them which server “won” and formally accepts the offer. This allows the other DHCP servers to return their offers to the pool of available addresses to await the next request.

The final message comes from the winning DHCP server, in one of the following two forms:

  • DHCPAck, which acknowledges the address and may sometimes include more network configuration information to finalize the process
  • DHCPNAck, (DHCP Not Acknowledged) which indicates that the address offered is no longer available or the client computer has moved

The “lease” time is the period of time before the address needs to be renewed. At the end of the lease, if the computer is no longer connected to the network, like for example if you had a temporary houseguest connect to your network, the address lease simply expires and goes back into the pool of addresses ready to be reassigned. In places with high-client-turnover such as a convention centre, a hotel, or a café, the lease time may be shortened to as little as a few minutes to ensure addresses are recycled efficiently and/or a larger pool of addresses may be configured – the common consumer-grade wireless router will usually come preconfigured with a pool of 254 addresses.

What would life be like without DHCP?

If the DHCP server were to fail, or otherwise be unavailable, computers are designed to fall back to a self-addressing protocol, called APIPA or Automatic Private IP Addressing. APIPA self-configures a computer with an address somewhere between 169.254.0.1 and 169.254.255.254. If those numbers seem odd or arbitrary, they’re just a range of 65534 addresses (a number reached thanks to some binary math voodoo), and have been reserved specifically for the purposes of APIPA.

What this means is if you were to connect two computers to a switch but no DHCP server, they could still technically communicate with one another, but with some limitations. You could never rely on a network printer or server when using APIPA because it would be prone to change (since nothing is there to manage the assignment). DHCP provides additional information like the Internet Gateway address, which tells clients through what device one can access the internet – without it, you would have to configure the gateway manually, and that would assume you know precisely what that address was. When you connect a wireless network, DHCP configures your computer for that network automatically and without any further intervention.

Without DHCP, you would have to manually configure each address on each device on each network you connect to. Even if you’re familiar with the concepts and process, this would be prohibitive in enterprise environments when there are possibly hundreds, or even hundreds of thousands of network devices. DHCP allows us to “plug and play”, or in the case of wireless, connect without any further configuration.

Filed Under: Technology

What is a NAS?

March 18, 2015 By Andrew McLean Leave a Comment

When you have a lot of stuff to back up, nothing tops a good NAS. What is a NAS? It means “Network Attached Storage”. It means instead of plugging in an external hard drive via USB, you only need to be connected to a network. Ostensibly, the same network that connects you to the internet. Which also means that you don’t have to remember to plug anything in to perform backups.

A NAS can have a single hard drive or even dozens in some commercial cases. It all depends on what features and performance you need.

So what kinds of things can a NAS do?

Backups and Archiving

Obviously a NAS is great for backups. We’ve all heard the horror stories. Years of business records lost. Photos of children’s first steps gone forever. A NAS backup is the first line of defence against these outcomes.

Some backup services like Apple’s Time Machine are extremely easy to use, but they have many limitations. For example, Time Machine will automatically back up the whole computer, and take a snapshot every hour afterwards until the backup device is completely filled, then it will delete the oldest backups to make room for the newer. But what if you share that drive with other people? Or what if you want to use it for other things. Things other than backups? Well, some of the more advanced NAS devices have a solution for that, called Quotas, that enable you to limit the amount of space that a user can store in a given location. You can set a limit for each user so that their individual backups don’t overrun the system.

Sometimes it’s not a backup you need, but rather a place to move things for later retrieval. For example when maintaining your email inbox, you might archive the oldest emails and need to put them somewhere safe in case you need them. This has the added benefit of removing the clutter from your every-day computers.

File Server

If you have a larger network and need a central place to store files, a NAS is great for that too. Especially for SOHO business networks that don’t require the full feature set of a server, or who wish to avoid the expensive licensing costs.
The benefit of having a central file server is to eliminate the need for the old “sneakernet“. It allows you to share information quickly, collaborate with teams and create more efficient workflows. The file server is the backbone of most modern offices.

Storage Area Network

Some NAS devices can act as a Storage Area Network or SAN. This makes it behave as a functional hard drive for several separate servers, accessible over fast networks. This is especially true when leveraging virtualization in higher-end networks. It means that the servers themselves can be swapped out easily when they fail, and the virtualized server (stored on the SAN) can simply be powered on from any other connected virtualization server. But chances are, if you know what virtualization is, you are already familiar with both NAS and SAN devices.

Media Server

While some NAS devices are designed to be extremely simple to use and manage, others allow a greater freedom of choices. For example many modern NAS boxes can act as a Media Server. This can scream video, audio or even photos to set top boxes like the AppleTV, the Roku, or a custom Kodi HTPC.
Whole-house audio used to be an expensive proposition. Using a NAS can be the silver bullet that makes this possible.

Web Server

If you are a web developer, having a local server to develop on (other than your local computer) can be immensely helpful in creating a controlled environment to test from. A Synology NAS can easily fill this role, complete with PHP/MYSQL, Java, Ruby, Tomcat, Python, and Perl.

VoIP

Believe it or not, a NAS can also act as a VoIP PBX (Private Branch eXchange). Ever wonder how businesses have multiple phones but a single phone number? A PBX is how. Historically PBX devices have been prohibitively expensive to purchase and maintain. But technology has come a long way and it is possible to deploy your own, complete with voicemail, call display, and “Music On Hold” options among many others. See Free and Open Source projects like Asterisk or FreePBX for more info.

So really, a NAS can be anything from a simple data storage solution to a full-featured server — one that fits right in at home, in the home office, or even in the enterprise.

Check out our Synology page for more details on their award-winning NAS devices.

Filed Under: Technology

What is DNS?

February 1, 2015 By Andrew McLean Leave a Comment

60's computers before DNS
In the beginning, the earliest functional iteration of a large scale network was funded by Defense Advanced Research Projects Agency (DARPA) and it created a link between UCLA and Stanford Research Institute in October 1969. By December of the same year, two more universities were added to the network: the University of Utah, and the University of California. At that time, it was known as the ARPANET.

With these networks growing so quickly, a problem eventually became apparent. There was no central global address book.

Computers communicate much the same way as the global Postal systems work. On an envelope, a sender will include both their originating address and the destination address. A computer will do likewise, but first it must know the destination address. And this isn’t just for email — it’s for everything. Every act you perform on the internet is just a series of messages back and forth. And at that time, unlike our friendly-named streets and cities, computers relied on mathematical formulas and strange binary information to form their addresses (they still do, but now also have DNS). So these universities had to manually keep a special text file on each of their computers that listed the IP address and name of every other computer on the network. If someone wanted to add a new system to the network each computer would need to add it manually. So you can see how this would quickly be found burdensome. Imagine if every time a new website opened, we needed to look up the information and then put it in a massive text file. Manually. Billions of times.

At it’s core, what DNS does is match up the un-friendly binary IP address information with more friendly names. So instead of browsing Google by going to http://173.194.123.34 (which works, incidentally, at the time this post was written), you can simply type in “google.com” and then DNS checks who google.com is, and it goes from there. This is why you hear websites and IT people talking about a “Domain Name” — the friendly-name portion of the Domain Name System or, DNS. By the 80’s DNS was pretty mainstream.

Another use for DNS is that it tells incoming communications which server to use to deliver things like Email, which is called a Mail eXchange (MX) record, because most large enterprises have a vast number of servers, each with a specific purpose, so it is not practical to have one address that does everything.

So who controls who gets what Domain Name? That would be the Internet Corporation for Assigned Names and Numbers (ICANN) who, in turn, delegate authority to other organizations to maintain it. You don’t ever really own a Domain Name, you merely lease it for a period of time. You can keep it for as long as you continue to renew it, or decide to sell it.

The virtue of DNS is the fact that the friendly alias is easy to remember. The simpler the name, the easier it is for people to remember, and theoretically the more visitors one can expect. Because Domain Names are so relatively inexpensive, this has led to Domain Name hoarding, which is why so many new web platforms have odd misspelled names. All the normal dictionary words are already taken, often by people looking to make money on selling them to the highest bidder. The names themselves have a perceived value — the most expensive domain name to date was Insurance.com, purchased for $35.6 Million in 2010.

Filed Under: Technology

  • 1
  • 2
  • 3
  • 4
  • Next Page »

Contact Us

McLean IT Consulting Inc.
Serving Greater Victoria

P: 250-412-5050
E: info@mcleanit.ca
C: 250-514-2639

Featured Article

Website Project (Nearly) Complete, Future Projects

The last couple of weeks have seen some big changes here. As of today, our followers have jumped to 100 on our Facebook page — due in part to … Continue Reading

Blog Categories

Our Mission

We seek to enrich and improve small and medium businesses by delivering best-in-class technology solutions, and offering a premier customer service experience. Contact Us Now!

Quick Menu

  • About
  • Testimonials
  • Contact
  • Blog
  • Sitemap

Let’s Get Social

  • Email
  • Facebook
  • Google+
  • LinkedIn
  • Twitter
  • YouTube

Copyright © 2023