Linux container performance on HPE ProLiant servers

While at the recent Microsoft Ignite 2016 conference, one the speakers mention a great paper to compare VM’s vs Containers and how they perform. This whitepaper was created by HPE and it has some great details about how containers perform better than VMs

Download the page

http://h20195.www2.hpe.com/V2/getpdf.aspx/4AA6-2761ENW.pdf

5 steps to setup SSH PROXY VIA WITH PUTTY

Depending on your setup and where you are deploying your solution, you may have to jump via multiple servers before you can get access to your internal server. This quick guide will help you understand how you can leverage PUTTY to Proxy via multiple SSH hosts.

Here is the example: let say that you are on your house or outside your cloud provider and you need to access the private SSH server in the image. That server has an IP address that is private so it can’t be access from the internet. And there is only one server available from the internet. You can use that server as a SSH Proxy server so you can access the internal one via your SSH proxy server.

Here is what you need:

  1. Install Putty suite completely not only the putty.exe
  2. Have a Public Key configure on your Servers and have the Keys available.

5 Steps to configure SSH Proxy with Putty

  1. Open Putty and create a new connection. Type the IP address or DNS Name of your Private SSH Server. On our Lab that will be any IP address or Private DNS. Type a name to save the session later. Do not save it yet.

  2. Click the Connection  Data. Type the name in the Auto-login username field.

  3. Click Connection Proxy. Type the IP Address or DNS server that is available externally or in the internet. Click Local for the Proxy Type and change the port to 22. Type your username that will be use to connect to the remote server. In the Telnet command or local proxy command type: plink %user@%proxyhost -nc %host:%port

  4. Click Connection à SSH àAuth. Click Allow agent forwarding and then put your public key.

  5. Go back up to the Session screen and click Save. Then Open.

That’s it. You are now connected to your Private IP server via a public SSH Server.

Let me know how you use this tutorial.

How to configure your Linux Postfix server to forward email to Exchange Server 2013

In every environment you may have different devices and appliances that may need to send email or notifications. This guide will go thru the process on how to configure your Linux server with Postfix Mail Transfer Agent. Thru the guide I will use Ubuntu as the Linux distribution for the demo.

1. Make sure to configure Exchange to accept email for relay. Check this post for how to configure Exchange 2013 to relay your mail for appliances.

2. Install all the required packages. ex. sudo apt-get install mailutils

3. During the installation it will ask to configure the basic settings for Postfix. Select Satellite system.  This mean your linux system is not managing email it is just sending it out.

pf1

4. Type your domain fqdn in the next screen. Ex. domain.com

pf2

 

5. Type the IP address of your Exchange 2013 server hosting the receive connector. Ex. 111.222.333.123

pf3

 

6. After the installation finishes. You need to reconfigure Postfix. To reconfigure Postfix execute the following command:  sudo dpk-reconfigure postfix

7. Press OK.

pf4

 

8 . Click Satellite system –> TAB –> OK

pf5

 

9. validate the domain is correct. Press OK.

pf6

 

10. Check that you have the correct IP Address for the Exchange Server.

pf7

 

11.Type the email address for the administrator

pf8

 

12. Erase all the destinations. This will force all the email to go out and not accept any email.

pf9

 

13. In the Force Synchronous updates on mail queue,  select Yes

pf10

 

14. Because we are only sending email out, tab to OK.

pf11

 

15. Leave the mailbox size on 0.

pf12

 

16. Leave the local address extension + and tab to OK.

pf13

 

17. Tab to ipv4 and then select OK.

pf14

 

18. After it finishes reconfiguring. You can try your new setup. ex. echo “Hi” | mail -s “Testing”  emailaddress@domain.com

pf15

 

19. You should see your email coming into Exchange. By default is comes with the servername as the domain.

pf17

 

20. To change the From address in your linux server follow this example:  echo “Hi” | mail -s “testing” -a “From”:linuxserver@domain.com”  user@domain.com

pf18

 

21. Now your email will arrive with the correct domain name.

pf19

 

Display Ubuntu VM IP Address in Hyper-V Manager

Installing Ubuntu in a Hyper-V Virtual Machine is very easy and it is beyond the scope of this post. But how do we get it to report its IP address back to Hyper-V manager? Based on Microsoft documentation all recent versions of Ubuntu 13.xx and newer includes the LIS (Linux Integration Services) packages build into it.

So why can we see the IP address?

 

IPnoshow

Here is why?

There is a daemon and a couple of tools missing and we need to install them. You will need to install the following packages

  • hv-kvp-daemon-init
  • linux-tools
  • linux-cloud tools

 

Here is a one line to install the packages

sudo apt-get update && sudo apt-get install hv-kvp-daemon-init linux-tools-$(uname -r) linux-cloud-tools-$(uname -r) -y

 

After you install the packages execute the following commands in order to test the new daemons

  • hv_fcopy_daemon
  • hv_kvp_daemon
  • hv_set_ifconfig
  • hv_vss_daemon
  • hv_get_dns_info

executedaemonshyperv

 

Then shutdown your VM. (This is important you need to shut it down not reboot. For some strange reason reboot will not work)

  • sudo shutdown -h now

 

shutdownubuntu

Power On your VM  via PowerShell or the Hyper-V Manager and you will see your IP Address in the Networking Tab

ubushowipinhypervmanager

 

Hope this helps you. If you have any questions leave me a comment.

Create a webserver for testing purposes

I was working on a project and it required some firewall ports to be opened. The team asked; how can we test the firewall rules are working correctly? There are different ways to test the firewall rules but here is a quick way to test your firewall. A web server with a simple text page. This tutorial will help you install and configure an Ubuntu server with Apache 2.

Steps to configure your web server.

1. Download the latest version of Ubuntu Server http://www.ubuntu.com/download/server

2. Follow the installation prompts to install Ubuntu Server

3. In the packages selection, select OpenSSH server and LAMP

4. After your server reboots, connect to the server via SSH.

5. Edit /etc/apache2/ports.conf add the entry for your web test. Your ports.conf will look similar to this one. Example vi /etc/apache2/ports.conf

ports-conf.

6. Change directory to /etc/apache2/sites-enabled and create a new site for each port you want to test firewall connectivity. In my example I wanted to test 80, 443 and 8443 so I created one file for each different site. Use your favorite editor to edit the configuration. Example : vi 001.conf

sites-enable-config

<VirtualHost *:443>

ServerAdmin webmaster@localhost

DocumentRoot /var/www/html/443

ErrorLog ${APACHE_LOG_DIR}/error.log

CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

 

7. After you finish with all the files, restart the apache web server: service apache2 restart

restart-apache

8. Create an Index file for your different websites. Example vi /var/www/html/index.html

demo-index-html

Text For index HTML page.

<html>

<head>

<title></title>

</head>

<body>

<p>

Demo Page for Testing Port 80</p>

<p>

&nbsp;

 

<p>

Author: Carlos Vargas</p>

<p>

HDS Rocks

 

</body>

</html>

 

9. Open your favorite Internet browser and navigate to your pages or test your firewall ports

In my example I needed to test port 80, 443, and 8443

http://<youripaddress> (this is the default for port 80)

port80

http://<youripaddress>:443   (this will open the site in port 443)

port443

http://<youripaddress>:8443 (this will open your website in port 8443)

port8443