So friends before we actually kick off this skill, what I want to do is to take
a brief moment
to discuss with you AC Linux basics. Now at its core what AC Linux is is a
mandatory access control
that is designed to protect your computer. So the general behaviour of AC Linux
is that unless
you happen to explicitly permit a connection, then what is going to happen as
well, that connection
is going to be blocked. Now pretty much with respect to AC Linux, you have this
concept of a source
object as well as a target object. Now the use of the term object may be a WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
object as well as a target object. Now the use of the term object may be a
little bit confusing,
when we refer to a source object, we are talking about users and processes and
when we're talking
about a target object, we're talking about files, directories or ports. So say
for example a user
wants to access a particular file on the system, then this can be allowed or
disallowed via AC Linux
depending on what is known as the security context which is ultimately
implemented via the use of
labels. So for example this would be as if I go to one of my devices, I can see WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
labels. So for example this would be as if I go to one of my devices, I can see
I am the nugget user
if I do a cd to my home directory and a pwd, if I now list the contents of this
directory, we
can see all the files and directory within my home directory. Now if I do an ls
-z and that is a
capital Z and to enter, what we're actually seeing here is the associated
security context with
these files and directories. Now we're not going to go into too much detail
about what all these
tags happen to mean, but as a brief refresher if we look at the security
context associated with
the desktop directory, here's what we have right here. Now basically this is WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
the desktop directory, here's what we have right here. Now basically this is
broken into four different
sections and each one is separated via colons, here is the first section or the
first tag, then we
have the next tag and then the third tag and then the fourth. Now with respect
to basic se Linux
policy, we are really just concerned about this third tag here, the type tag
and pretty much if
we want to have a source object, be able to access a target object, effectively
they must be able to
communicate via the use of these tags. So say for example, if you want to
access a particular file WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
access a particular file
or directory in this home directory, then you would have to have the associated
tag user home t and
we have a whole bunch of these tags for a whole bunch of different
configurations, tags for web
services, tags for SSH, that type of thing. Now crucially one thing to note is
that these tags can
be inherited from parents, but the cool thing is is that they can also be
modified and changed and
by changing these tags, we can actually grant access from particular processes
and users
to these targeted files, directories and ports. So with that brief recap out of WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
to these targeted files, directories and ports. So with that brief recap out of
the way, let's
now take a look at modifying label configurations and see how these changes
affect the behavior
over system.