Why LXD?

It’s no secret that containers are hot right now in the Linux world. They are quickly becoming the backbone of the Cloud and are making DevOps dreams come true. Even so, at first glance, it seems a bit redundant for Canonical to develop a new container system for Ubuntu in a world easily dominated by Docker. So why, then, did they do it? To fill a middle ground between traditional virtual machines and Docker. Canonical said it themselves, “By combining the speed and density of containers with the security of traditional virtual machines, Canonical’s LXD is the next‐generation of container hypervisor for Linux.” Not only that, but Docker containers can be run within LXD containers, adding another dimension to potential container configurations.

LXD is an enhancement of the existing LXC Linux container hypervisor with it’s own toolset, sharing a similar relationship to the original project as Ubuntu does with Debian with the goal of taking existing great software and streamlining it for easier use. On Canonical’s latest Ubuntu LTS release, 16.04, LXD is well integrated and easy to use with clear and concise CLI tools that make container creation and management seamless.

Initial Setup

Getting started with LXD on Ubuntu 16.04 is as close to effortless as could be expected. Canonical condensed the install to a single package, making this a one command install. A simple sudo apt-get install lxd will get everything needed to get started.

Install LXD with apt-get install lxd

The following config will guide you through the process of enabling SSH root login on Ubuntu 16.04 Xenial Xerus Linux Server or Desktop. This guide assumes that you are in possession of root password and are able to login directly on your system as root user. Use the following guide, if you do not have a root's user password.

By default the root's ssh remote shell access is denied by default. Any attempt to remote login as root will result in Permission denied message:
$ ssh This email address is being protected from spambots. You need JavaScript enabled to view it.
	
This email address is being protected from spambots. You need JavaScript enabled to view it.'s password: 
Permission denied, please try again.
This email address is being protected from spambots. You need JavaScript enabled to view it.'s password:

Introduction

If you ever wanted to have a personal robot then you are reading a correct article. This tutorial is a brief demonstration on how easily you can configure your personal or company robot, then soon after, connect it with one of available adapters like: shell, campfire, hipchat, irc, gtalk or skype. In this tutorial I'm going to teach you how to set up Hubot with its default adapter Shell. Although it's the simplest option, it's the solid foundation for your future modifications.
Correctly configured and connected Hubot can dramatically improve and reduce employee efficiency as well as give your company lots of fun. Additionally, It can provide your team with the newest rss feeds or send crucial notifications. Keep in mind, that Hubot is developed by Github team, so it's next pros for spending a while on investigations.

So what is Hubot ?

Hubot is open source, written in CoffeeScript on Node.js. It can be easily deployed on PaaS platforms like Heroku. Hubot comes preinstalled with several core scripts like math, ping, help, translate or youtube.
Additionally you can visit community repository which provides tons of other interesting scripts (i.a: ascii, coin, deploy, dice or jenkins). If this list still doesn't meet your expectations, feel free to write your own script using CoffeScript.
As a starter I wanted to present few examples which I hope will bring some light to this topic.

Hubot> hubot convert me 56MB KB
Hubot> 57 344 kilobytes
Hubot> hubot mustache me linuxconfig.org
Hubot> http://mustachify.me/2?src=http://img1.tuicool.com/aqi6r52.jpg#.png
Hubot> hubot translate me praktyczne
Hubot> "praktyczne" is Polish for " Practical "
Hubot> hubot image me niagara falls
Hubot> http://www.niagarafallslive.com/images/HorseshoefromSkylon.jpg#.png
Hubot> hubot convert me 5 years days
Hubot> 1 826.21099 days
Hubot> hubot math me 2(3+7)/4
Hubot> 5
Hubot> hubot die
Hubot> Goodbye, cruel world.

Introduction

You need Windows for a program you use for work, your favorite game runs only on Windows or you are a developer that works on some cross-platform project. And of course, you can't even think about giving up your favorite OS. Whatever the reason, you need Windows and a virtual machine won't cut it so all you're left with, if you don't have a spare machine, is dual-boot. I usually recommend against multiple-boot machines, but I can't argue with the fact that here are situations when the idea is very useful. So this is what this article is about: making sure you need a dual-boot system, acknowledging the requirements, making backups if need be and proceed. You are expected to have some experience in installing Windows as well as Linux, at least Ubuntu in this case, and some courage. But first let's make some concepts clear.

Concepts

We don't want to lie to you: any task that involves advanced partitioning schemes isn't for the faint of heart. But it isn't rocket science either, and we're here to help you. Various operating systems have various partitioning schemes but since the partitioning concepts of the PC are so "smart", there are some things you should know. Every OS that I know of that is installable on the PC requests a primary partition to boot from. Linux is the most flexible in this respect, as you can have its' /boot or / on a logical partition, but I'm not so sure if your BIOS will be able to boot from it. Windows, Solaris and the BSDs absolutely demand primary partitions, with Windows being the most "oppressive" in that respect. So whenever you install a dual-boot system with Windows involved, install it first, as it won't ask you and overwrite the MBR. If you want to dual-boot Linux and BSD or Solaris, install Linux first. Now that we settled this, we will insist you make backups if you have other partitions on the target disk, and you still need them. Our setup will start with a blank drive, and we'll show you how it's done.

Installing Windows 7

As said, you need to install Windows first, and this is more than an advice, and it doesn't apply only to Windows 7 either. We suggest you don't try over-complicated setups, because your chances of having a system actually up and running in decent time are decreasing rapidly that way. Take note that this article is not a step-by-step how-to on installing Windows 7 and/or Ubuntu. We will only refer to the parts that involve partitioning for a successful dual-boot experience. So, when you will get to Windows' partitioning screen, here's a screenshot for you to get an idea:

Windows 7 partitioning

So, since Windows asks for a minimal primary partition size of more than 12 GB (!) , I gave it that, it auto-created it's system one and left me the rest of the disk empty and blank. After installing finished successfully, I was prepared for the tricky part: installing Linux. No, I'm just kidding, it's as simple as it can be.

Introduction

Do you feel that someone is attempting to access you server? To find out, you can deploy a honeypot within your system to help you ease your paranoia by either confirming or dismissing your initial believe. As an example you can start the Kippo SSH honeypot, which allows you to monitor brute-force attempts, collect up today exploits and malware. Kippo also automatically records hacker's shell session, which you can replay to explore various hacking techniques and later use this gathered knowledge to harden your production server. Another reason why to install a honeypot is to take away an attention from your production server. In this tutorial we will show how to deploy a Kippo SSH honeypot on the Ubuntu server.

Prerequisites

Kippo SSH honeypot is a python based application. Therefore, we need to first install python libraries:

$ sudo apt-get install python-twisted

Normally you would run you sshd service listening on default port 22. It makes sense to use this port for your SSH honeypot and thus if you already run the SSH service we need to change the default port to some other number. I would suggest not to use alternative port 2222 as its use is already generally known and it could sabotage your disguise. Let's pick some random 4-digit number like 4632. Open your SSH /etc/ssh/sshd_config configuration file and change the Port directive from:

ARE YOU LOOKING FOR A LINUX JOB?
Submit your RESUME, create a JOB ALERT or subscribe to RSS feed on LinuxCareers.com.
LINUX CAREER NEWSLETTER
Subscribe to NEWSLETTER and receive latest news, jobs, career advice and tutorials.
DO YOU NEED ADDITIONAL HELP?
Get extra help by visiting our LINUX FORUM or simply use comments below.