Just when you thought it was safe to relax a bit …
In the past couple of hours, Microsoft released a handful of Monthly Rollup previews and a smattering of similar, optional, updates. The list:
Win7 and Server 2008 R2 — KB 4525251 — Monthly Rollup preview appears to cover the same ground as KB 2952664 and, later, KB 4507456. If there’s anything included in the update other than more telemetry, Microsoft sure hasn’t told us. Here’s the sole description in the KB article:
Addresses an issue with evaluating the compatibility status of the Windows ecosystem to help ensure application and device compatibility for all updates to Windows.
Win8.1 and Server 2012 R2 —KB 4525252 — Monthly Rollup preview includes the above, uh, feature, as well as a fix for a bug in netdom.exe.
Server 2008 SP2 — KB 4525244 — Another Monthly Rollup preview. The KB article lists exactly zero changes from the previous cumulative update. None at all.
Similarly, Server 2012 — KB 4525242 — shows no changes from the previous cumulative update.
Over on the .Net side, look for:
Preview of Quality Rollup for .Net Framework 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2 for Windows 7 SP1 and Windows Server 2008 R2 SP1 and Windows Server 2008 — KB 4524421 — which shows minor fixes for ASP, CLR, SQL and WCF.
Preview of Quality Rollup for .Net Framework 4.8 for Windows 7 SP1 and Windows Server 2008 R2 SP1 — KB 4531182 — which lists minor fixes for ASP, WPF and CLR.
Pretty slim pickin’s — with two patches that seem to accomplish absolutely nothing.
Is there anything worse than going to boot up your computer and realizing that your hard drive is dead? You can lose all your documents, photos, music, and more if your hard drive fails.
For that reason, many people want a very reliable hard drive. And who better to advise on hard drive reliability than a server company? Here we’ll recommend to you the most reliable hard drives, according to server companies.
How Hard Drive Reliability Is Measured
Before we get into the hard drive recommendations, you might be wondering how exactly we’re defining reliable. To find out which hard drives are least likely to fail, the best option is to look at a report which covers a large number of drives. And so we looked at the Backblaze Hard Drive Stats 2019.
Servers use vast numbers of hard drives, so server companies are really the experts when it comes to reliability. Backblaze currently employs a total of 108,660 hard drives for storage and has been collecting data on their reliability since 2015. That makes it one of the best sources of information when you’re looking for a reliable hard drive.
Now we can list the most reliable hard drives, according to the Backblaze report.
The most reliable hard drive is the Western Digital 12TB Ultrastar. This SATA hard drive comes in a range of capacities, starting at 1TB and going all the way up to 12TB. You’ll sometimes see this or similar models labeled as the HGST Ultrastar. But don’t worry, Western Digital owns HGST. So you can expect the same quality from HGST as you get from Western.
This model is aimed at the enterprise storage market with a focus on reliability over speed, hence why it is so popular with server companies. Inside the hard drive, the air is replaced with helium, which is lower density. That means the drive can run more efficiently with fewer issues, making it a top choice for people concerned with reliability.
A similarly reliable hard drive is the HGST MegaScale DC 4000.B, another enterprise drive from Western Digital/HGST. This 4TB SATA drive is designed to be efficient as well as reliable, using up to 45 percent less operating power compared to other 4TB enterprise hard drives.
This drive isn’t as fast as those aimed at regular consumers. But it makes up for that with features like Advanced Power Management, which should keep both temperatures and power usage low.
Seagate is a recognized and trusted hard drive brand, and their Exos 12TB Internal Hard Drive is a good choice for reliable storage. This one is an enterprise model too, coming in capacities from 1TB to 12TB. The SATA drive is hermetically sealed to prevent dust or other debris from getting inside the drive and causing problems.
The Exos is more responsive than other enterprise models, too, with speeds of up to 261MB/s. It can also handle a massive workload of up to 550 terabytes per year. For reference, that’s around 10 times as much work as is possible on a standard desktop hard drive. The Seagate Exos comes with Advanced Write Caching, resulting in a 20 percent boost in random write performance.
The Toshiba 14TB SATA 512e Enterprise HDD is a solid enterprise hard drive. It comes in a 14TB capacity, although there is a 12TB version as well if you don’t need quite so much space. This SATA drive has a helium-sealed inside using precision laser-welding technology. And it has a lower operational power profile, keeping power usage down.
It is rated for a total transfer of 550TB per year, which is surely enough for any home user. There’s also Advanced Format Sector Technology, which should prevent data loss if the power to your system gets cut off unexpectedly.
The Seagate BarraCuda Pro 8TB is the updated model of one of Backblaze’s most reliable drives. This SATA drive comes in sizes from 1TB to 14TB. And there’s an option to include data recovery in your purchase. If you’re looking to store your files safely, the data recovery option can give you peace of mind.
As it’s not exclusively an enterprise drive, you can expect excellent responsiveness as well as reliability, with a transfer rate of up to 250MB/s. The BarraCuda is a power-efficient model, using as little as 6.9W of power. The drive is rated for a workload of up to 300TB per year, so it should fit the needs of most users.
A more affordable alternative to the Seagate BarraCuda is the Seagate ST4000DM000. As it is designed for desktop use, it comes in smaller sizes. This particular drive comes in sizes from just 500GB up to 8TB. So, it’s a good choice for those looking for a smaller capacity SATA drive. It was one of the earliest 1TB-per-disk hard drives available and has had plenty of years on the market.
Models up to 6TB come with 128MB of cache, but the larger 8TB drive has 256MB, so it should have improved write speeds. Even though it’s a consumer product and not an enterprise one, this drive still offers solid reliability. If you’re looking for a reliable drive, but you don’t want to sacrifice consumer options like a two-year warranty and a larger cache, this model is an excellent choice.
The Most Reliable Hard Drive for Your System
The majority of the hard drives we’ve recommended here are enterprise models, meaning they’re intended for use in servers. They are incredibly reliable, but you might sacrifice some speed for that reliability. There are other options out there, too. Consumer-grade drives from companies like Seagate are also highly recommended.
Secure your Linux system’s SSH connection to protect your system and data. System administrators and home users alike need to harden and secure internet-facing computers, but SSH can be complicated. Here are ten easy quick-wins to help protect your SSH server.
SSH Security Basics
SSH stands for Secure Shell. The name “SSH” is used interchangeably to mean either the SSH protocol itself or the software tools that allow system administrators and users to make secure connections to remote computers using that protocol.
The SSH protocol is an encrypted protocol designed to give a secure connection over an insecure network, such as the internet. SSH in Linux is built on a portable version of the OpenSSH project. It is implemented in a classic client-server model, with an SSH server accepting connections from SSH clients. The client is used to connect to the server and to display the session to the remote user. The server accepts the connection and executes the session.
In its default configuration, an SSH server will listen for incoming connections on Transmission Control Protocol (TCP) port 22. Because this is a standardized, well-known port, it is a target for threat actors and malicious bots.
Threat actors launch bots that scan a range of IP addresses looking for open ports. The ports are then probed to see if there are vulnerabilities that can be exploited. Thinking, “I’m safe, there are bigger and better targets than me for the bad guys to aim at,” is false reasoning. The bots aren’t selecting targets based on any merit; they’re methodically looking for systems they can breach.
You nominate yourself as a victim if you haven’t secured your system.
Security friction is the irritation—of whatever degree—that users and others will experience when you implement security measures. We’ve got long memories and can remember introducing new users to a computer system, and hearing them ask in a horrified voice whether they really had to enter a password every time they logged in to the mainframe. That—to them—was security friction.
(Incidentally, the invention of the password is credited to Fernando J. Corbató, another figure in the pantheon of computer scientists whose combined work contributed to the circumstances that led to the birth of Unix.)
Introducing security measures usually involves some form of friction for someone. Business owners have to pay for it. The computer users may have to change their familiar practices, or remember another set of authentication details, or add extra steps to connect successfully. The system administrators will have additional work to do to implement and maintain the new security measures.
Hardening and locking down a Linux or Unix-like operating system can get very involved, very quickly. What we’re presenting here is a set of easy to implement steps that will improve the security of your computer without the need for third-party applications and without digging through your firewall.
These steps aren’t the final word in SSH security, but they’ll move you a long way forward from the default settings, and without too much friction.
Use SSH Protocol Version 2
In 2006, the SSH protocol was updated from version 1 to version 2. It was a significant upgrade. There were so many changes and improvements, especially around encryption and security, that version 2 is not backward compatible with version 1. To prevent connections from version 1 clients, you can stipulate that your computer will only accept connections from version 2 clients.
To do so, edit the /etc/ssh/sshd_config file. We’ll be doing this a lot throughout this article. Whenever you need to edit this file, this is the command to use:
sudo gedit /etc/ssh/sshd_config
Add the line:
And save the file. We’re going to restart the SSH daemon process. Again, we’ll be doing this a lot throughout this article. This is the command to use in each case:
sudo systemctl restart sshd
Let’s check that our new setting is in force. We’ll hop over to a different machine and try to SSH onto our test machine. And we’ll use the -1 (protocol 1) option to force the ssh command to use protocol version 1.
The fact that the SSH server is requesting our password is a positive indication that the connection has been made and you are interacting with the server. Actually, because modern SSH clients will default to using protocol 2, we don’t need to specify protocol 2 as long as our client is up to date.
And our connection is accepted. So it is only the weaker and less secure protocol 1 connections that are being rejected.
Avoid Port 22
Port 22 is the standard port for SSH connections. If you use a different port, it adds a little bit of security through obscurity to your system. Security through obscurity is never considered a true security measure, and I have railed against it in other articles. In fact, some of the smarter attack bots probe all open ports and determine which service they are carrying, rather than relying on a simple look-up list of ports and assuming they provide the usual services. But using a non-standard port can help with lowering the noise and bad traffic on port 22.
To configure a non-standard port, edit your SSH configuration file:
sudo gedit /etc/ssh/sshd_config
Remove the hash # from the start of the “Port” line and replace the “22” with the port number of your choice. Save your configuration file and restart the SSH daemon:
sudo systemctl restart sshd
Let’s see what effect that has had. Over on our other computer, we’ll use the ssh command to connect to our server. The ssh command defaults to using port 22:
TCP Wrappers is an easy to understand access control list. It allows you to exclude and permit connections based on characteristics of the connection request, such as IP address or hostname. TCP wrappers should be used in conjunction with, and not instead of, a properly configured firewall. In our specific scenario, we can tighten things up considerably by using TCP wrappers.
TCP wrappers was already installed on the Ubuntu 18.04 LTS machine used to research this article. It had to be installed on Manjaro 18.10 and Fedora 30.
To install on Fedora, use this command:
sudo yum install tcp_wrappers
To install on Manjaro, use this command:
sudo pacman -Syu tcp-wrappers
There are two files involved. One holds the allowed list, and the other holds the denied list. Edit the deny list using:
sudo gedit /etc/hosts.deny
This will open the gedit editor with the deny file loaded in it.
You need to add the line:
ALL : ALL
And save the file. That blocks all access that hasn’t been authorized. We now need to authorize the connections you wish to accept. To do that, you need to edit the allow file:
sudo gedit /etc/hosts.allow
This will open the gedit editor with the allow file loaded in it.
We’ve added in the SSH daemon name, SSHD, and the IP address of the computer we’re going to allow to make a connection. Save the file, and let’s see if the restrictions and permissions are in force.
First, we’ll try to connect from a computer that isn’t in the hosts.allow file:
The connection is refused. We’ll now try to connect from the machine at IP address 192.168.4.23:
Although it is a bad practice, a Linux system administrator can create a user account with no password. That means remote connection requests from that account will have no password to check against. Those connections will be accepted but unauthenticated.
The default settings for SSH accept connection requests without passwords. We can change that very easily, and ensure all connections are authenticated.
We need to edit your SSH configuration file:
sudo gedit /etc/ssh/sshd_config
Scroll through the file until you see the line that reads with “#PermitEmptyPasswords no.” Remove the hash # from the start of the line and save the file. Restart the SSH daemon:
sudo systemctl restart sshd
Use SSH Keys Instead of Passwords
SSH keys provide a secure means of logging into an SSH server. Passwords can be guessed, cracked, or brute-forced. SSH keys are not open to such types of attack.
When you generate SSH keys, you create a pair of keys. One is the public key, and the other is the private key. The public key is installed on the servers you wish to connect to. The private key, as the name would suggest, is kept secure on your own computer.
SSH keys allow you to make connections without a password that are—counterintuitively—more secure than connections that use password authentication.
When you make a connection request, the remote computer uses its copy of your public key to create an encrypted message that is sent back to your computer. Because it was encrypted with your public key, your computer can unencrypt it with your private key.
Your computer then extracts some information from the message, notably the session ID, encrypts that, and sends it back to the server. If the server can decrypt it with its copy of your public key, and if the information inside the message matches what the server sent to you, your connection is confirmed to be coming from you.
Here, a connection is being made to the server at 192.168.4.11, by a user with SSH keys. Note that they are not prompted for a password.
Of course, the logical extension of using SSH keys is that if all remote users are forced to adopt them, you can turn off password authentication completely.
We need to edit your SSH configuration file:
sudo gedit /etc/ssh/sshd_config
Scroll through the file until you see the line that starts with “#PasswordAuthentication yes.” Remove the hash # from the start of the line, change the “yes” to “no”, and save the file. Restart the SSH daemon:
sudo systemctl restart sshd
Disable X11 Forwarding
X11 forwarding allows remote users to run graphical applications from your server over an SSH session. In the hands of a threat actor or malicious user, a GUI interface can make their malign purposes easier.
A standard mantra in cybersecurity is if you don’t have a bonafide reason to have it turned on, turn it off. We’ll do so by editing your SSH configuration file:
sudo gedit /etc/ssh/sshd_config
Scroll through the file until you see the line that starts with “#X11Forwarding no.” Remove the hash # from the start of the line and save the file. Restart the SSH daemon:
sudo systemctl restart sshd
Set an Idle Timeout Value
If there is an established SSH connection to your computer, and there has been no activity on it for a period of time, it could pose a security risk. There is a chance that the user has left their desk and is busy elsewhere. Anyone else who passes by their desk can sit down and start using their computer and, via SSH, your computer.
It’s much safer to establish a timeout limit. The SSH connection will be dropped if the inactive period matches the time limit. Once more, we’ll edit your SSH configuration file:
sudo gedit /etc/ssh/sshd_config
Scroll through the file until you see the line that starts with “#ClientAliveInterval 0” Remove the hash # from the start of the line, change the digit 0 to your desired value. We’ve used 300 seconds, which is 5 minutes. Save the file, and restart the SSH daemon:
sudo systemctl restart sshd
Set a Limit For Password Attempts
Defining a limit on the number of authentication attempts can help thwart password guessing and brute-force attacks. After the designated number of authentication requests, the user will be disconnected from the SSH server. By default, there is no limit. But that is quickly remedied.
Again, we need edit your SSH configuration file:
sudo gedit /etc/ssh/sshd_config
Scroll through the file until you see the line that starts with “#MaxAuthTries 0”. Remove the hash # from the start of the line, change the digit 0 to your desired value. We’ve used 3 here. Save the file when you made your changes and restart the SSH daemon:
sudo systemctl restart sshd
We can test this by attempting to connect and deliberately entering an incorrect password.
Note that MaxAuthTries number seemed to be one more than the number of tries the user was permitted. After two bad attempts, our test user is disconnected. This was with MaxAuthTries set to three.
Disable Root Log Ins
It is bad practice to log in as root on your Linux computer. You should log in as a normal user and use sudo to perform actions that require root privileges. Even more so, you shouldn’t allow root to log into your SSH server. Only regular users should be allowed to connect. If they need to perform an administrative task, they should use sudo too. If you’re forced to allow a root user to log in, you can at least force them to use SSH keys.
For the final time, we’re going to have to edit your SSH configuration file:
sudo gedit /etc/ssh/sshd_config
Scroll through the file until you see the line that starts with “#PermitRootLogin prohibit-password” Remove the hash # from the start of the line.
If you want to prevent root from logging in at all, replace “prohibit-password” with “no”.
If you are going to allow root to log in but force them to use SSH keys, leave “prohibit-password” in place.
Save your changes and restart the SSH daemon:
sudo systemctl restart sshd
The Ultimate Step
Of course, if you don’t need SSH running on your computer at all, make sure it is disabled.
sudo systemctl stop sshd
sudo systemctl disable sshd
If you don’t open the window, no one can climb in.
Looking for a smart, easy-to-use Raspberry Pi media server solution with a good choice of client apps? Perhaps you looked at Plex or Kodi but found they didn’t seem right. If so, it’s worth giving Emby a go.
Easy to install and set up, Emby is a smart media server alternative. Here’s how to install Emby Server and Emby Theater on the Raspberry Pi.
What Is Emby?
Emby is a media server. While it isn’t as well-known as other solutions (e.g. Plex, or Kodi), open source Emby has client and server software. This means that you can install the server module on the computer with your media on it, then share to other devices using client apps.
Various plugins can extend the features of Emby. You’ll find IPTV plugins for internet TV, for example. Emby also offers built-in parental controls, to help protect your family from sensitive content. While Emby is less well-known than its competitors, the userbase is growing.
What You Need for a Raspberry Pi Emby Media Center
To build an Emby media server, you will need:
Make sure you have a suitable power connector for your Raspberry Pi.
The process is straightforward: install Emby, connect it to your network, then use it as a media server. Media stored on a USB hard disk drive can be added to Emby, then served to devices on your network.
For example, the Raspberry Pi Emby box could serve your favorite home movies and photos to your TV or mobile.
Install the Emby Media Server on Raspberry Pi
Installing the Emby Server on Raspberry Pi’s default Raspbian Buster is straightforward. Open a terminal and update and upgrade to begin:
sudo apt dist-upgrade
Next, use wget to download the ARMHF version from the Linux downloads page; this version is compatible with the Raspberry Pi.
Wait while this completes. Your Raspberry Pi-powered Emby server is installed. All you need to do now is configure it.
Configure Your Emby Media Server
Access the Emby Server via your browser. It’s easiest using the Raspberry Pi itself—use the address http://localhost:8096.
This brings you to the server set up. You’ll need to set the preferred language, username, password, and other options. Setup also gives you the option to link your Emby Connect account. This is a great way to connect to your server from any Emby account, without needing the IP address. However, it’s not necessary.
Following this, you’ll see the Setup your media libraries screen. Here, click Add Media Library.
Simply browse for the location, then set the meta information according to the menus.
This is mostly language-based and shouldn’t take long.
When you’re done adding media locations, click Save. It’s time to start viewing content on your Emby media server!
Connect Any Device to Your Emby Server
An impressive collection of apps is available for Emby. Want to watch on a smart TV? You can! You’ll also find apps for Android TV and Amazon Fire TV, along with Xbox One and PS4. Using Kodi? There’s an Emby add-on available.
Additionally, Emby produce mobile apps for Android and iOS mobile devices. There is even a version for Windows 10 and Windows 10 Mobile, as well as a HTML5 web client.
In short, all devices are covered.
To enjoy content on your Emby server, simply install the app and proceed through the setup. You’ll be asked for the server or device name, and if you set it up, the Emby account credentials.
Once this is all configured, you’ll be ready to enjoy streamed media from your Raspberry Pi Emby server.
Set Up Raspberry Pi as an Emby Client
Thanks to the Emby Theater tool for Linux, you can view the media files on your Raspberry Pi Emby server on another Pi.
You have two choices to install the Emby Theater client app on a Raspberry Pi.
Download the DEB file to your Raspberry Pi and install it on Raspbian Buster (or any Debian-based operating system).
Alternatively, download a full disk image, write it to a spare SD card, and boot this.
Use the appropriate download link based on how you plan to install Emby on your Pi.
Want Emby Theater to autostart when you boot your Pi? That’s not a problem. In the terminal, edit the autostart file:
sudo nano ~/.config/lxsession/LXDE-pi/autostart
Scroll to the end and add:
Save and exit (Ctrl + X, then Y) and restart your Raspberry Pi. Emby should automatically start. Of course, if you want this functionality then it’s smarter to just install the disk image.
Install Emby Theater From a Disk Image
To turn your Raspberry Pi into a dedicated Emby client, download the zipped disk image to your main PC.
Next, unzip the file. By now you should have your Raspberry Pi’s SD card inserted in your PC’s card reader.
Launch Etcher, then click Select image to browse for the IMG file. Ensure that the correct drive is selected (Etcher is good at autodetecting flash media but check regardless) then Flash. Etcher will format the media and write the Emby disk image.
A notification will appear when done. Close the software, safely eject the SD card, then replace it in your Raspberry Pi. The computer should boot straight into Emby Theater.
Stream Content on Raspberry Pi With Emby
Emby brings a whole new dimension to serving media on a Raspberry Pi. To start off, it’s compatible with the Raspberry Pi 4, and the hardware boost this delivers over its predecessors.
But there’s more to Emby. Don’t want the bells and whistles of a Raspberry Pi Plex server? Find that streaming content on Kodi isn’t as smooth as you would like? Don’t worry. Emby has a clearer focus to sharing media on your network. Sure, you can upgrade to the Emby subscription program for additional features, but you probably won’t need these.
With apps for virtually any device, you’ll find Emby is perfectly suited to the Raspberry Pi and your media files.
Want to run a Minecraft server from home without revealing your IP address? You can! Just set up a free proxy with Amazon Web Services to protect your server from denial-of-service attacks. We’ll show you how.
This guide will work for any game server, not just Minecraft. All it does is proxy traffic on a specific port. You just have to change Minecraft’s port 25565 to whichever port your game server runs on.
How Does This Work?
Let’s say you want to host a Minecraft server and have it open to the internet. It’s not that hard to run one. They’re easy to install, only use one processing thread, and even the heavily modded servers don’t take more than 2 to 3 GB of RAM with a few players online. You could easily run a server on an old laptop or in the background on your desktop computer rather than paying someone else to host it for you.
But for people to connect to it, you have to give out your IP address. This presents a few problems. It’s a major security risk, especially if your router still has the default admin password. It also leaves you open to distributed denial-of-service (DDOS) attacks, which would not only stop your Minecraft server but could shut off your internet, as well, until the attack subsides.
You don’t have to allow people to connect directly to your router. Instead, you can rent a small Linux box from Amazon Web Services, Google Cloud Platform, or Microsoft Azure—all of which have free tiers. This server doesn’t have to be strong enough to host the Minecraft server—it just forwards the connection for you. This allows you to give out the IP address of the proxy server instead of your own.
Say someone wants to connect to your server, so she types the IP address of your AWS proxy into her Minecraft client. A packet is sent to the proxy on port 25565 (Minecraft’s default port). The proxy is configured to match port 25565 traffic and forward it to your home router. This happens behind the scenes—the person connecting doesn’t even know.
Your home router must then be port-forwarded to forward the connection further to your actual PC. Your PC runs the server and responds to the client’s packet. It forwards it back to the proxy, and then the proxy rewrites the packet to make it look like the proxy is the one responding. The client has no idea this is happening and simply thinks the proxy is the system running the server.
It’s like adding another router in front of the server the same way your home router protects your computer. This new router, though, runs on Amazon Web Services and gets the full transport-layer DDOS mitigation that comes free with every AWS service (called AWS Shield). If an attack is detected, it’s mitigated automatically without bothering your server. If it isn’t stopped for some reason, you can always turn off the instance and cut the connection to your house.
To handle the proxying, you use a utility called sslh. It’s intended for protocol multiplexing; if you wanted to run SSH (usually port 22) and HTTPS (port 443) on the same port, you’d run into issues. sslh sits in front and redirects ports to the intended applications, solving this problem. But it does this at the transport layer level, just like a router. This means we can match Minecraft traffic and forward it to your home server. sslh is, by default, nontransparent, which means it rewrites packets to hide your home IP address. This makes it impossible for anyone to sniff it out with something like Wireshark.
Create and Connect to a New VPS
To get started, you have set up the proxy server. This is definitely easier to do if you have some Linux experience, but it isn’t required.
Head to Amazon Web Services and create an account. You have to provide your debit or credit card info, but this is only to prevent people from making duplicate accounts; you aren’t charged for the instance you’re creating. The free tier does expire after a year, so make sure you turn it off after you’re finished with it. Google Cloud Platform has an f1-micro instance available for free all the time if you’d rather use that. Google also offers a $300 credit for a year, which you could actually use to run a proper cloud server.
AWS does charge a bit for bandwidth. You get 1 GB free, but you’re taxed $0.09 per GB for anything over that. Realistically, you probably won’t go over this, but keep an eye on it if you see a 20-cent charge on your bill.
After you create your account, search for “EC2.” This is AWS’s virtual server platform. You might have to wait a bit for AWS to enable EC2 for your new account.
From the “Instances” tab, select “Launch Instance” to bring up the launch wizard.
You can select the default “Amazon Linux 2 AMI” or “Ubuntu Server 18.04 LTS” as the OS. Click next, and you’re asked to select the instance type. Select t2.micro, which is the free tier instance. You can run this instance 24/7 under AWS’s free tier.
Select “Review and Launch.” On the next page, select “Launch,” and you see the dialog box below. Click “Create a New Key Pair,” and then click “Download Key Pair.” This is your access key to the instance, so don’t lose it—place it in your Documents folder for safekeeping. After it downloads, click “Launch Instances.”
You’re brought back to the instances page. Look for your instance’s IPv4 Public IP, which is the address of the server. If you’d like, you can set up an AWS Elastic IP (which won’t change across reboots), or even a free domain name with dot.tk, if you don’t want to keep coming back to this page to find the address.
Save the address for later. First, you need to edit the instance’s firewall to open port 25565. From the Security Groups tab, select the group your instance is using (probably launch-wizard-1), and then click “Edit.”
Add a new Custom TCP rule and set the port range to 25565. The source should be set to “Anywhere,” or 0.0.0.0/0.
Save the changes, and the firewall updates.
We’re now going to SSH into the server to set up the proxy; if you’re on macOS/Linux, you can open up your terminal. If you’re on Windows, you have to use an SSH client, like PuTTY or install the Windows Subsystem for Linux. We recommend the latter, as it’s more consistent.
The first thing you should do is cd to your documents folder where the keyfile is:
If you’re using Windows Subsystem for Linux, your C drive is located at /mnt/c/, and you have to cd down to your documents folder:
Use the -i flag to tell SSH you want to use the keyfile to connect. The file has a .pem extension, so you should include that:
Replace “your_ip_address” with your home IP address. If you don’t know your IP, search “what is my IP address?” on Google—yes, seriously.
This configuration makes the sslh proxy listen on all network devices on port 25565. Replace this with a different port number if your Minecraft client uses something different, or you play a different game. Usually, with sslh, you match different protocols and route them to different places. For our purposes, though, we simply want to match all possible traffic and forward it to your_ip_address:25565.
Press Control+X, and then Y to save the file. Type the following to enable sslh:
sudo systemctl enable sslh
sudo systemctl start sslh
If systemctl isn’t available on your system, you might have to use the service command instead.
sslh should now be running. Make sure your home router is port forwarding and sending 25565 traffic to your computer. You might want to give your computer a static IP address so this doesn’t change.
To see if people can access your server, type the proxy’s IP address into an online status checker. You can also type your proxy’s IP into your Minecraft client and try to join. If it doesn’t work, make sure the ports are open in your instance’s Security Groups.
Microsoft today issued a support reprieve to Exchange Server 2010, saying it would continue to service the on-premises enterprise software for an extra nine months.
“After investigating and analyzing the deployment state of an extensive number of Exchange customers, we have decided to move the end of Extended Support for Exchange Server 2010 from January 14, 2020, to October 13, 2020,” wrote Greg Taylor, director of product marketing for the Exchange team, in a Monday post to the group’s blog.
Extended Support is the label Microsoft uses for the second half of its traditional decade of support for commercial products. Although the company declines to address non-security flaws (at least, without a paid support plan in place) or add new features during Extended Support, it does still service the software with security updates.
Microsoft launched Exchange Server 2010 in November 2009.
“Your installation of Exchange 2010 will, of course, continue to run after [Oct. 13, 2020]; however, due to the changes and potential end-of-support risks, we strongly recommend you migrate from Exchange 2010 as soon as possible,” Taylor said.
Taylor implied that Microsoft had extended support because customers were having trouble meeting the original January deadline. “We recognize discontinuing support for a product that has been as popular and reliable as Exchange Server 2010 can be an adjustment,” he said. “We also know that some of you are in the midst of upgrades to a newer version of Exchange Server on-premises, or more transformative migrations to the cloud with Office 365 and Exchange Online.”
Exchange Server 2010 was initially slated to leave support alongside Windows 7. With the extension, it will instead accompany Office 2010 and SharePoint Server 2010 into retirement.
Upgrade options range from keeping email on-premises to shunting everything to the cloud with Exchange Online, the Microsoft-hosted service typically obtained as a part of an Office 365 (or Microsoft 365) subscription. Alternately, enterprises can do a bit of both, ending with a hybrid solution where parts of Exchange are in-house, parts run on Microsoft’s servers.
On-premises options include Exchange 2013 (which exits support April 11, 2023) and Exchange 2016 (Oct. 14, 2025); direct upgrades from Exchange Server 2010 to the latest, Exchange Server 2019 (also Oct. 14, 2025), are not possible. Microsoft’s Taylor, not surprisingly, touted Exchange Online. “Clearly, we think moving to Exchange Online and Office 365 is a good idea,” Taylor wrote. “It gets you out of the upgrade business.”
FastTrack, a Microsoft assistance program designed to help large customers manage upgrades or on-premises to cloud migrations, may be available to those doing the latter, Taylor noted. Microsoft 365, a costly subscription package that bundles Windows 10 with Office 365, offers FastTrack, although caveats apply.
Formerly known as MiniDLNA, ReadyMedia requires installing on a standard Raspberry Pi operating system, such as Raspbian Buster. Start by mounting the disk drive(s) with the media data on, and then use the standard installation command:
sudo apt install minidlna
Unlike the other examples here, some manual configuration is necessary, as described in this video.
Once installed, this simple tool is compatible with DLNA/UPnP-AV, which means that any DLNA-compatible device on the same network should be able to detect your Pi and play media from it.
Fast, lightweight, and easily configurable, ReadyMedia is the option to choose if you just want to stream your media and have no interest in indexing it.
2. Kodi Media Streaming With OpenElec
Perhaps the most recognized name in this list, Kodi is available for the Raspberry Pi.
The most popular option is to write a full Kodi distro to your Raspberry Pi. Of these, OpenElec and OSMC and LibreElec. You may already know that OpenElec is available on NOOBs for easy installation.
However, you can also do this manually, writing a full Kodi-based distro to an existing Raspbian installation using:
sudo apt install kodi
But wait a minute. Aren’t the Kodi-based media servers in fact media centers? Well, they’re both, which is how they come to be in this list.
While you might use these distros (or manually install Kodi) as a media center/HTPC solution on a Raspberry Pi, the provision of DLNA/UPnP means that Kodi (and its forks) can be used as a media server.
If you’re already using a Kodi-based distro, then you don’t need a media server as you already have one. Simply open Settings > Services > UPnP and enable Share video and music libraries through UPnP. You can then stream content from your Kodi-based system.
Looking for an audio-only media server solution for Raspberry Pi?
In the video above, Mopidy is installed on a Raspberry Pi embedded in a retro cassette player. With the buttons and volume hooked up to the Pi’s GPIO, audio playback is via a custom Mopidy extension.
NFC tags in the cassettes are used to prompt playback of specific Spotify playlists. This is just one way that Mopidy’s extension support can enhance your audio enjoyment. Learn more at www.mopidy.com.
4. Build a Raspberry Pi Streaming Server With OpenMediaVault
Admittedly closer to a NAS than a media server, OpenMediaVault is the smart choice for Pi owners wishing to access their media files from any device on the same network.
Setup is straightforward, but lengthy. You may run into initial problems mounting any hard disk drives that you have connected to your Pi. This should be quickly overcome, however, enabling you to configure the system correctly.
Among the features with OMV are support for a UPS (uninterruptible power supply) and stats to assist in system monitoring. There is also EXT3/EXT4/XFS/JFS filesystem support and RAID can be set up for HDD mirroring.
SSH, FTP, TFTP, SMB and RSync are all supported for direct connection to your OMV device. You’ll typically access it via your web browser, however, by opening the IP address.
Various plugins are also available for OMV, such as a Bittorrent client.
If you prefer to simply stream from a desktop or dedicated media server to your Raspberry Pi, seek out Plex. A popular name in home media streaming, Plex can be used to stream content to all manner of devices.
Thanks to Plex’s popularity, you’ll be able to enjoy media streamed via Plex on a wide selection of devices. Mobile apps are available for Android and iOS. Meanwhile, media streamers such as Apple TV, Amazon Fire TV and many Smart TVs also have Plex clients.
You’ll even find clients for Xbox One and PlayStation 4, as well as Windows, macOS, and Kodi.
Note that Plex demands that your files are named in a specific format. This enables the software to pull the appropriate metadata from the web. Doing so gives you details about the media files in your library, e.g. album or DVD covers, track listings, etc.
Described as the Raspberry Pi’s “Swiss Army Knife of streaming music” Pi MusicBox streams cloud audio to a connected speaker. This might be from Spotify or other online services, or local or networked music from your NAS. There is also support for TuneIn and other web radio services, and podcasts from iTunes.
Pi MusicBox has USB audio support, as well as wireless connectivity with Spotify Connect, AirTunes/AirPlay, and DLNA streaming. This means that music served through your Raspberry Pi can be played back on any mobile, tablet, or Smart TV.
Pi MusicBox is based on Mopidy (above) so if you’re looking for a preconfigured Mopidy solution, try this. Learn more about the software at www.pimusicbox.com.
Finally, Emby, a media server solution with support for photos, videos, and music. Apps stream your data to Android, iPhone, iPad, and Windows tablets, along with Android TV, Amazon Fire, Chromecast, Roku, Xbox One, and more.
Parental controls can be set up with Emby, making this the perfect family-based home media server for Raspberry Pi. Emby fulfills the multiple roles of Raspberry Pi photo server, video server, and audio server.
There’s also DLNA support to simplify the streaming of content to and from your server.
Several options are available to install Emby. The simplest solution is to use the DietPi low-footprint Raspberry Pi distribution. With this installed, you can simply select the Software Optimized menu option then Emby Server.
We’ve presented you with seven options for setting up your Raspberry Pi as a media server, capable of delivering movies, photos, and music to devices around your home at the touch of a button.
Set up for each solution is fast. You should have a Raspberry Pi media server up and running in minutes, ready to stream files across your home with ease. It’s just one of the great uses for a Raspberry Pi.
Ask someone how to watch video online and they will likely point you to any number of streaming services. But these aren’t the only ways to enjoy content on all of your devices. If you have a large library of music and video, you can set up a media server of your own.
Creating a server delivers many benefits. There’s increased data control, more privacy, and a general lack of surprises. As a Linux user, you probably have an idea of the value of setting up your own system.
And you’re in luck. There are no shortage of both free and proprietary DLNA server programs for the Linux desktop.
. You get to keep control of your collection while using a service so familiar-feeling that friends and family won’t need hand-holding. Emby’s another option that probably won’t disappoint.
If you use Linux because you want to stick with free and open source software, then you’re going to need a Plex alternative. In that case, check out Jellyfin. Your biggest setback will likely be the smaller number of supported platforms.
Both Plex and Jellyfin prioritize streaming video. If music’s more your thing, check out either Subsonic or Madsonic, again based on whether you trust proprietary software or prefer code you can set your eyes on.
Want to get more technical? Have at it. Gerbera is a UPnP server intended strictly for in-home use. TvMOBiLi is a paid DLNA server with iTunes integration. OpenFlixr is an all-in-one solution with a more automated experience. The options abound. To recap, you’ve got:
Now let’s break down these Linux media servers and see which most appeals to you.
Plex has been heralded as a do-it-yourself Netflix. It’s a simple media server program that sports an excellent interface. Plex features installers for Linux, FreeBSD, and even an official Docker container. For client devices, Plex supports an array of hardware including Windows 10, macOS, Android, iOS, Amazon Fire TV, and Roku. Kodi users benefit from a Plex for Kodi addon.
The Plex media server for Linux software makes the files in your linked movie, TV, and music folders accessible on other devices. Linux doesn’t have a dedicated Plex Media Player app, but you can view content in a web browser like you would on YouTube and Netflix.
Best for: Media server novices and pros alike. It’s truly one of the best media server apps available, and one of the top media streaming tools for Linux.
Emby is similar to Plex in its functionality. Whereas the Plex install and configuration remains beginner-friendly, Emby is a bit more complex. This is largely due to Emby’s immense customization options. Because it features tons of settings for database and metadata management, Emby is tailored for power users.
will help you decide which option is best. What Emby lacks in client compatibility and ease of use it compensates for with its range of skins and metadata options.
Although Emby isn’t quite as established as Plex, it’s certainly a phenomenal media server software option for Linux. Emby hosts dedicated installers for Debian, CentOS, Dedora, OpenSUSE, Arch Linux, Docker, and Ubuntu. Additionally, it’s available as a manual download for a smattering of Linux operating systems.
Best for: Power users seeking customization options.
Plex is great, but while parts of the service are free to use, you’re not free to view the code and do with it what you wish. This limits what you can do with the service, and it means that you have to trust that Plex isn’t amassing data about you in the background.
That’s a hard pill for many Linux users to swallow. Jellyfin is a free and open source Plex alternative for Linux and other operating systems.
Jellyfin is actually a fork of Emby. This means the functionality is largely the same up until the point where Emby became a proprietary project with secretive source code. If you were only using Emby because it was an open source project, Jellyfin may just be your new go-to media server.
The downside? Jellyfin doesn’t yet have client apps for as many platforms.
Best for: People who want a free software Plex alternative
Subsonic uses the tagline “easy listening.” It’s a music-oriented server software but retains compatibility with videos as well. Highlights include a bevy of music features like a podcast receiver, Sonos integration, a jukebox mode, and downsampling as well as conversion on the fly. You’ll also find support for lyrics, album artwork, and tags.
For Linux, Subsonic is available for Ubuntu, Debian, Fedora, and Red Hat. You can find client apps for Android, iOS, BlackBerry, Windows, Roku, Sonos, macOS, and a web app as well. The UI isn’t great for video, but performance is superb.
Best for: Music aficionados. While Subsonic is great for video and music, its transcoding, Sonos support, and jukebox aspects posit Subsonic as superb for music junkies.
Like Emby, Subsonic was open source before it became proprietary. Madsonic is a fork of Subsonic’s open source code. So similarly, it’s a music streamer with support for video. Not only does Madsonic function extremely well as a Linux streaming media server, but it’s a solid entry as a local media jukebox.
Features like bitrate limiters and resampling make Madsonic an awesome audio-centric media server. Like Subsonic, Madsonic boasts Sonos support, metadata aggregation through Musicbrainz, Last.fm, Echonest, and IMDB, and high scalability. You can manage over 100,000 files with ease.
Although Madsonic is fairly intuitive, there’s a REST API for app, script, and addon creation. Plus, there’s LDAP for customized access. You can see a breakdown of differences in Madsonic and Subsonic.
Best for: Music junkies.
Gerbera is a media server software option that’s build on MediaTomb. It’s a UPnP server for Linux home network streaming and other platforms. Unlike server options such as Plex, Emby, Madsonic, and Subsonic, Gerbera is limited to in-home streaming.
Gerbera supports media transcoding on the fly, and may transmit to clients running on mobile devices. Loads of devices are UPnP compatible, such as game consoles and devices running XBMC.
However Gebera is not a substitute for a remote Linux media server. If you need your media on the go, opt for a different option. Nevertheless, Gerbera is a lightweight, intuitive UPnP media server software option for Linux.
Best for: In-home streaming using UPnP.
OpenFlixr is a little different than most of the Linux media server software solutions. Instead of another media server software, this is an all-in-one media server that focuses on automation. There’s Plex Media Server included, as well as torrent and Usenet automation programs such as CouchPotato, Headphones, and SickRage included.
Just as OpenFlixr differs in its purpose, so too does its installation. OpenFlixr is a virtual appliance so you’ll need an application like VirtualBox or VMWare Fusion. But you can run OpenFlixr as a virtual appliance on Linux, and it’s an excellent way to cobble together an out-of-the-box media server.
Best for: Media server power users. OpenFlixr requires more advanced knowledge of virtual machines. Also media server users that value automation.
TVMOBiLi is another superb Linux DLNA server software application. Although it’s high performing, TVMOBiLi remains intuitive to set up and run. It’s as simple as specifying your media folders. Like Emby and Plex, TvMOBiLi allows remote access.
Linux installers are available for Redhat, Debian, BSD, Synology, and QNAP devices. There’s also an Arch Linux Raspberry Pi installer.
Among its plentiful features, TVMOBiLi offers iTunes integration and stellar support. It’s cross-platform, lightweight, and simple to set up. However, TvMOBiLi is paid. Although there are free services, like Emby, Plex, and Madsonic, TVMOBiLi does offer great support and notably iTunes integration.
This feature auto-populates TVMOBiLi with the database contents from your iTunes library.
Best for: Apple users who want iTunes integration, and media server beginners seeking premium support.
The Best Media Server Software for Linux
There are many Linux media server options. Which route you take depends on what you seek in a media server.
Subsonic is superb for music but lacking when compared to Emby or Plex for video. Similarly, Jellyfin does handle music but Madsonic is a music-first player.
If you’re a regular computer user, you may have only come across the consumer-facing editions of Windows. But did you know that Microsoft also publishes an entire Windows Server line of its operating system?
Let’s take a look at the differences between Windows Server and normal Windows. We’ll see what Windows Server includes, what it leaves out, and why it’s so different.
What Is Windows Server?
In case you’ve never heard of Windows Server, we’ll first explain what it is. Essentially, Windows Server is a line of operating systems that Microsoft specifically creates for use on a server. This means in almost all cases, Windows Server is used in business settings.
Microsoft has published Windows Server under that name since Windows Server 2003 launched in April 2003. However, even before this, server versions of Windows were available. For instance, Windows NT 4.0 was available in both workstation (for general use) and server flavors.
In almost all cases, normal users don’t need to worry about Windows Server. You won’t find it on the shelf in stores or accidentally download it from Microsoft when you mean to get the standard version. But it’s still interesting to learn about.
Windows Server vs. Regular Windows: The Basics
With just a quick glance, you might have trouble telling the difference between Windows Server and normal versions of Windows. The desktop looks the same, including the Taskbar, desktop icons, and Start button.
As it turns out, every Windows Server release corresponds to a consumer version of Windows. Windows Server 2003, for instance, is the server version of Windows XP. Current versions include Windows Server 2016, which is based on the Windows 10 Anniversary Update, and Windows Server 2019.
Because Windows Server and Windows share a code base, you can perform many of the same functions on both. You can download and install programs like browsers and photo editors on Windows Server, and many Windows basics like Notepad are included in Windows Server.
However, the two versions have more differences than similarities. Let’s review some of them.
Windows Server Has Enterprise Management Software
Because Windows Server is intended for businesses, it includes plenty of enterprise software. Below are a few roles that a server can perform thanks to these tools:
DHCP: DHCP, or Dynamic Host Configuration Protocol, is a protocol that lets a server automatically assign IP address to all devices on the network. At home, your router probably handles this. But in a business setting, IT staff can take advantage of the greater DHCP functionality in Windows Server.
File and Storage: Having a file server for your company is another common use. This allows you to keep important data in a central location and set permissions to control who can access what.
Print Services: If a business has dozens of printers across the building, it’s a waste of time for IT staff to configure them individually for each new workstation. Setting up a print server allows you to easily map printers to computers and reduce redundant work.
Windows Update Services: Often, businesses don’t want all Windows Updates to come through right away. By setting up a server as a Windows Update controller, you can route all workstation updates through that server and configure specific rules for how they should work.
These are only a few of the server roles Windows Server can handle. Often, a company will have more than one server and split the above roles across multiple devices.
Standard copies of Windows don’t include these capabilities out of the box. You can install some third-party tools to replicate some of this functionality, but it won’t be as robust.
Windows Server Has Fewer Hardware Limitations
Most people don’t worry about the maximum amount of RAM they can put in their computer. Windows 10 Pro allows you to install up to a huge 2TB of RAM. However, the majority of users don’t have more than 32GB of RAM in their systems, so even installing 1TB of RAM 5 Things You Could Do With 1TB of RAM
Knowing this, can you believe that Windows Server supports up to 24TB of RAM? It also allows you to use up to 64 CPU sockets, which is much greater than the two sockets that Windows 10 Pro supports.
This might sound ridiculous, but there are good reasons for these high hardware caps. A server can power important functionality for hundreds of people in a business, so it often needs to be extremely powerful. For instance, a server running dozens of virtual machines needs loads of RAM in order to keep them all running smoothly at the same time.
Windows Server Doesn’t Include Extraneous Features
As you’d expect, Windows Server retains power user features like the Command Prompt and other administrative tools. However, Server editions of Windows strip out a lot of the quality-of-life features that Windows 10 includes.
. It doesn’t bundle in apps like Your Phone, and you can’t activate the Linux terminal on Windows server, either. Server OSes also don’t let you log in with a Microsoft account. Because they’re designed for enterprise use, you don’t need these consumer-facing tools on a server OS.
Additionally, some apps check to see if you’re using Windows Server before you install them. In some cases, the app won’t work on a server version of Windows.
Windows Server is also much more locked down by default. It uses Internet Explorer as the default browser, but the security settings are much more restrictive than usual. This makes sense, as having a server compromised would be catastrophic compared to just a workstation.
Windows Server Has Different Pricing
As you may expect from a business-oriented product, Windows Server doesn’t come cheap. It’s much more expensive than a consumer version of Windows, and comes in various flavors depending on your needs.
Microsoft’s Windows Server 2019 pricing page gives an idea of what you might pay for the software. Depending on how many people will access the server, you also need to pay for CALs (Client Access Licenses) to use the services legally.
Businesses historically installed Windows Server on a physical onsite server, which has much greater hardware capabilities than a workstation, as discussed above. However, you also have the option of running Windows Server in a cloud service like Azure.
This allows you to offload the burden of maintaining a physical server to a cloud provider like Microsoft. In addition, this enables companies to spread the cost of upgrading out over a subscription instead of paying all at once for a new physical server. What works best depends on the specific organization’s needs.
Now You Understand Windows Server
In the end, though Windows Server and regular Windows share common code and look similar, they’re for totally different uses.
Consumer editions of Windows 10 are designed for maximum usability and don’t include software made for enterprise use. Meanwhile, Windows Server isn’t concerned with looking pretty. Its purpose is to run many services reliably that company users need.
Discord has finally added server folders to help you organize your chats. Discord users have been requesting server folders for years, and the chat app has finally delivered. Now, you just need to decide which servers to organize into which folders.
How to Organize Your Discord Servers Into Folders
Until now, Discord hasn’t supported folders. This meant that users have been stuck with a list of servers in the sidebar. This was fine for those people who only ever joined a handful of chats, but was an organizational nightmare for those in tens or hundreds of chats.
Now, you can now organize your Discord chats into server folders. All you need to do to create a server folder is drag one icon on top of another. To remove a server from a folder, simply drag it away. You can see this process in Discord’s cinematic video below.
As explained on Discord Support, there are a few other things you can do with Discord’s new server folders. Either right-click or long-hold the folder (depending on your device) to access Folder Settings. You can then rename each server folder or change its color.
The new server folders are available on all platforms, and the only change made to the Android app. However, on desktop and iOS, Discord has made a number of other changes, including reducing CPU usage (desktop) and opening links in their native apps (iOS).
Everything You Need to Know About Discord Servers
While server folders aren’t the biggest feature in the world, they should make it much easier to keep your Discord chats organized and easy to find. Which, for those users who are members of a high number of different chats, should make Discord easier to use.