Introduction

FreeBSD is an operating system available in our Cloud environment.  FreeBSD is an open source operating system originating from a previous generation that was referred to as “BSD Unix” or “Berkeley Unix.”  Although FreeBSD is not part of the Unix family, and as such cannot use the name, it shares many features and qualities with the Unix/Linux operating systems.

More information on the history and recent updates to FreeBSD can be found on the direct website.

What you will need

In order to start setting up your FreeBSD server, all you need to do is create a server in cloud.atlantic.net.  A tutorial on adding a new cloud server can be found here.

System Configuration

The FreeBSD system configuration information is contained all in one file: /etc/rc.conf

You’ll find your network configuration in this file along with enabled daemons/system services.

For example to configure a network device named vtnet0 with an IP of 1.2.3.4/24 with a router of 1.2.3.1, a hostname of “test” and have sshd enabled, one would add the following to /etc/rc.conf:

ifconfig_vtnet0="inet 1.2.3.4 netmask 255.255.255.0"
defaultrouter="1.2.3.1"
hostname="test"
sshd_enable="YES"

For more information on how to configure FreeBSD and further options that can go in this file, view the FreeBSD Handbook.

Package Management

The default package manager on FreeBSD 10.0+ is ‘pkg’.

In order to use this on a newly provisioned system, one should first run ‘pkg update’

Some basic commands:

Ensure the package list is up-to-date:

pkg update

Determine if updates are available for already installed packages:

pkg upgrade

Install package(s):

pkg install <package name>

Search for package(s):

pkg search <package name>

Example: To install vim lite, sudo and tmux:

pkg update
pkg install vim-lite sudo tmux

See these links for more info:

http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/pkgng-intro.html

https://wiki.freebsd.org/pkgng

Private Network Setup

To configure a private network between two or more of your FreeBSD Cloud Servers, you’ll need to configure the second network interface on your device using the private network range provided in the Cloud Control Panel. You will also need to configure static routes between the images so that they can communicate properly. This will all be done in ‘/etc/rc.conf’.

For example, to use the subnet 10.9.243.0/24, with one image having the IP 10.9.243.1 and the other having 10.9.243.2, you would configure the following within the /etc/rc.conf file in each Cloud Server respectively:

1st Cloud Server:
ifconfig_vtnet1="inet 10.9.243.1 netmask 255.255.255.0"
static_routes="net1"
route_net1="-net 10.9.243.0/24 10.9.243.1"
2nd Cloud Server:
ifconfig_vtnet1="inet 10.9.243.2 netmask 255.255.255.0"
static_routes="net1"
route_net1="-net 10.9.243.0/24 10.9.243.2"

After the /etc/rc.conf changes, you must restart the network and routing services to bring up the private network:

service netif restart
service routing restart

Partitions/Filesystems

There are 3 partitions within your FreeBSD Cloud Servers:
/dev/da0p1 – 64KB boot partition, is not mounted during OS operation and is only used to contain FreebBSD boot code
/dev/da0p2 – 32MB Ext2 partition for Atlantic.Net use in configuring and interacting with your Cloud Server.  Empty and not mounted during normal OS operation

/dev/da0p3 – (size variable) UFS partition, mounted as /