Chapter 2: Sifting Through Services Flashcards

1
Q

What are the two primary ways Linux servers run service programs?

A

The two primary ways linux servers run service programs are as a background process, running at all times listening for requests and as a process spawned by a parent program that listens for the requests

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is a daemon?

A

A daemon is when a linux service program runs continuously as a background process

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

How do you identify a daemon program?

A

Linux daemon programs often end with the letter d to indicate they’re daemon processes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are super-servers?

A

Super-servers are programs that listen for network connections for several different applications. When the super-server receives a request for a service from the client, it spawns the appropriate service program

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the original super-server program created for Linux?

A

The original super-servers program created for Linux was the internet daemon (inetd) application

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the extended internet daemon (xinetd)?

A

The extended internet daemon is an advanced version of the inetd. It also launches service programs as requested by clients, but also contains additional features, such as access control lists (ACL’s), more advanced logging features , and the ability to set schedules to turn services on and off at different times of the day or week

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are three internet services Linux servers provide?

A

1) Web services
2) Database Services
3) Email Services

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What are some of the Linux web servers?

A

1) The Apache Web Server
2) The nginX Web Server
3) The lighthttppd Web Server

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What are the three most popular one-source database servers you’ll encounter when working in the Linux environment?

A

1) PostgreSQL
2) The MySQL Server
3) The MongoDB Server (NoSQL)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Describe the Linux email server

A

The Linux email server is normally divided into 3 separate functions:

1) The mail transfer agent (MTA)
2) The mail delivery agent (MDA)
3) The mail user agent (MUA)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Which one of the three functions of a Linux email server does the end user interact with?

A

The Mail User Agent (MUA) is the program that interacts with end users allowing them to view and manipulate email messages. The MUA’s don’t usually run on the server side but rather on the client side

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is the mail transfer agent (MTA) responsible for?

A

The mail transfer agent is responsible for handling both incoming and outgoing messages on the server.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Name three MTA packages that Linux uses

A

1) sendmail
2) Postfix
3) Exim

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Describe the Mail Delivery Agent (MDA)

A

Responsible for delivering messages to local users. MDA Programs concentrate only on delivering messages to local users. The MDA program receives messages destined for local users from the MTA program then determines how those messages are to be delivered

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Describe the two common MDA programs used in Linux

A

Binmail is the most popular MDA program used for Linux. Its named is derived from the location on the system bin/mail. By default, it can read email messages stored in the standard /var/spool/mail directory or can be pointed at an alternative mailbox

Procmail is popular because of its versatility in creating user-configured scripts that allows a user to direct how the server processes received emails

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are the two basic methods for sharing files in a local network environment?

A

1) Peer to Peer

2) Client / Server

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What are the two common server software packages used for sharing files?

A

Network File System (NFS) is a protocol used to share folders in a network environment. With NFS, a linux system can share a portion of its virtual directory on the network to allow access by clients as well as other servers

The packed used in linux is nfs-utils

Samba was created to allow Linux systems to interact with the windows client and servers

18
Q

What are some popular DHCP clients for Linux?

A

1) dhclient
2) dhcpcd
3) pump

19
Q

What does DHCP stand for?

A

Dynamic Host Configuration Protocol

20
Q

What are the two main logging packages used in Linux?

A

rsyslogd: The SysVinit and Upstart systems utilize the rsyslogd service program to accept logging data from remote servers
journald: The Systemd system utilizes the journald service for both local and remote logging of system information.

Both rsyslogd and journald utilize configuration files that allow you to define just how data is logged and what clients the server accepts log messages from

21
Q

Describe SNMP

A

Simple Network Management Protocol (DNMP) provides a way for an administrator to query remote network devices and servers to obtain information about their configuration, status and even performance

The most popular SNMP package in Linux is the net-snmp package

22
Q

Describe the Network Time Protocol (NTP)

A

The NTP allows servers and clients to synchronize on the same time source across multiple networks.

23
Q

Implementing Security

A

Each Linux server maintains its own list of valid user accounts that have access on that server

24
Q

Describe the Network Information System(NIS)

A

The Network Information System (NIS) is a directory service that allows both client and servers to share a common naming directory. The NIS naming directory is often used as a common repository for user accounts, hostnames, and even email information on local networks.

The nis-utils package is used for implementing an NIS or NIS+ directory

25
Q

What is Kerberos?

A

Kerberos uses a symmetric-key cryptography to securely authenticate users with a centralized server database. The entire authentication process is encrypted, making it a secure method of logging into a linux server

26
Q

Describe LDAP

A

Lightweight Directory Access Protocol (LDAP)

Provides simple network configuration services to multiple applications and devices on a local network.

Most popular Linux LDAP package is OpenLDAP

OpenLDAP allows admins to design a hierarchal database to store objects in your network. Objects are connected in a tree like fashion to one another

27
Q

Describe a Certificate Authority

A

A certificate authority is a better way for authenticating users. A certificate is an encrypted key that implements a two-factor authentication method. To login to a server, a user must have two things:

1) Something they posses, such as a certificate file
2) Something they know, such as a pin

OpenSSL package provides standard certificate functions for both servers and clients

28
Q

Access Server (SSH)

A

Secure Shell (SSH) provides a layer of encryption around data sent across the network

Most popular software package that implements SSH in the Linux environment is the OpenSSH package

29
Q

Proxy Server

A

A web proxy server allows you to intercept web requests from local network clients. By intercepting the web requests, you have control of how clients interact with web servers

Most popular web proxy package for Linux is Squid

30
Q

What are three common methods methods for improving performance?

A

1) Clustering
2) Load balancing
3) Containers

31
Q

Describe Clustering

A

A computer cluster improves application performance by dividing application functions among multiple servers. Each server node in the cluster is configured the same and can perform the same functions, but the cluster management software determines how to split the application functions among the servers

32
Q

Describe Load Balancing

A

Load balancing is a special application of clustering. A load balancer redirects entire client requests to one of a cluster of servers. While a single server process the entire request, the client load is distributed among the multiple servers automatically

33
Q

Describe Containers

A

Linux containers create a self-contained environments to encapsulate applications. A container packages all of the necessary application files, library files, and operating system libraries into a bundle that can easily move between environments.

Two popular container packages are Kubernetes and Docker

34
Q

Describe the ways to start server programs in Linux

A

Server programs in Linux can either run continually in the background as a daemon process or be started from a super-server daemon when requested by a client.

35
Q

Explain how clients know how to contact a server program

A

Server applications listen for client connections on well-known ports. Clients must send a connection request to the server on the well-known port for the application they want to interact with.

36
Q

Explain the components commonly used in a LAMP stack

A

The LAMP stack uses the Linux operating system, the Apache web server, the MySQL database server, and the PHP programming language to provide a platform for web applications.

37
Q

Describe the difference between a relational database and a NoSQL database

A

A relational database stores data records in individual data tables. Each data type consists of one or more data fields that contain individual data elements. A data record is an instance of data for each data field in a table. A NoSQL database stores data values in documents. Each document is independent of all of the other documents in the database. Each document can also contain different data elements

38
Q

Understand the ways a Linux server can share files in a local network

A

Linux servers can use the nfs-utils package to communicate with other Linux servers to share folders using NFS. The local Linux server can mount folders from the remote Linux server as if they were local disks. Linux servers can also use the Samba package to share files on Windows local networks with Windows clients and servers as well as map folders located on Windows servers

39
Q

Understand which server packages are commonly used to support network features on a local network

A

The DHCPd package provides DHCP server services to assign IP addresses to clients. The BIND package provides DNS server services to both clients and servers on a local network for hostname resolution. The net-snmp package allows you to implement remote device management using SNMP, and you can use the ntpd package to create an NTP time server for the local network

40
Q

Describe how to create a network directory server using Linux

A

The OpenLDAP package allows you to create an LDAP directory of users and devices on the local network. Clients and other servers can use the LDAP directory to authenticate users and devices on the network

41
Q

Explain how to improve the performance of a network application

A

For network applications in a high-volume environment, you can improve performance by implementing either a cluster or load balancing environment. In a cluster, you can split application functions between multiple servers by using a cluster package such as Apache Hadoop. With load balancing, you can distribute client connections between multiple servers using packages such as HAProxy and Linux Virtual Server (LVS).