Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 8 additions & 5 deletions docs/guides/cms/cloud_server_using_nextcloud.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,10 @@
title: Cloud Server Using Nextcloud
author: Steven Spencer
contributors: Ezequiel Bruni
update: Jan-16-2022
tested with: 8.5
tags:
- cloud
- nextcloud
---

# Cloud Server Using Nextcloud
Expand Down Expand Up @@ -32,7 +35,7 @@ There are several steps here that are the same regardless of which install metho

## Nextcloud - Module Method

Why use the Nextcloud module? After enabling the module we can then install Nextcloud, which will download nearly all of the dependencies for you. You will still have to install your database of choice (mariadb, postgresql, or sqlite) but your web platform will be handled by the Nextcloud packages, as well as any back-end scripts. The downside to this particular method is that you lose control over where you want Nextcloud to install.
Why use the Nextcloud module? After enabling the module we can then install Nextcloud, which will download nearly all of the dependencies for you. You will still have to install your database of choice (mariadb, postgresql, or sqlite) but your web platform will be handled by the Nextcloud packages, as well as any back-end scripts. The downside to this particular method is that you lose control over where you want Nextcloud to install.

When operating a bunch of servers or containers with web applications on them, a Systems Administrator would prefer to look for things in the same spot, not try to keep up with where package 'A' installed itself as opposed to package 'B'.

Expand Down Expand Up @@ -149,7 +152,7 @@ We also need a special empty file so that we can install Nextcloud. This file re
#### Configuring PHP
<a name="confphp"></a>

We need to set the timezone for PHP. To do this, open up php.ini with your test editor of choice:
We need to set the timezone for PHP. To do this, open up php.ini with your text editor of choice:

`vi /etc/php.ini`

Expand Down Expand Up @@ -219,7 +222,7 @@ Once you have all this, click `Finish Setup` and you should be up and running.

### Notes for the Systems Administrator

As noted earlier, if using the module install for Nextcloud, Nextcloud is going to put things where it thinks they should be, not where the Systems Administrator might go looking for them. For this reason, as part of the setup steps, I recommend that a README.txt file be created in each location where the Systems Administrator would logically look.
As noted earlier, if using the module install for Nextcloud, Nextcloud is going to put things where it thinks they should be, not where the Systems Administrator might go looking for them. For this reason, as part of the setup steps, I recommend that a README.txt file be created in each location where the Systems Administrator would logically look.

I came from an environment where we used `/etc/httpd/sites-enabled` for configuration files (see the alternate install steps for more) and put our web files in `/var/www/sub-domains/[site_name]/html`. If I were to use the module install of Nextcloud, then, I would want to put a README.txt file in both locations.

Expand Down Expand Up @@ -374,7 +377,7 @@ There are a couple of things that we want to do differently than the defaults th

Now cross your fingers and click "Finish Setup".

The browser window will refresh for a bit and then usually not reload the site. Enter your URL in the browser window again and you should be confronted with the default first pages.
The browser window will refresh for a bit and then usually not reload the site. Enter your URL in the browser window again and you should be confronted with the default first pages.

Your administrative user is already (or should be) logged in at this point, and there are several informational pages designed to get you up to speed. The "Dashboard" is what users will see when they first login. The administrative user can now create other users, install other applications and many other tasks.

Expand Down
45 changes: 26 additions & 19 deletions docs/guides/cms/dokuwiki_server.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,33 @@
---
title: DokuWiki
author: Steven Spencer
contributors: Ezequiel Bruni
tested with: 8.5
tags:
- wiki
- documentation
---

# DokuWiki Server

# Prerequisites And Assumptions
## Prerequisites And Assumptions

* A Rocky Linux instance installed on a server, container, or virtual machine.
* A Rocky Linux instance installed on a server, container, or virtual machine.
* Comfort with modifying configuration files from the command line with an editor (our examples here will use _vi_, but you can substitute your favorite editor)
* Some knowledge about web applications and setup.
* Our example will use the [Apache Sites Enabled](../web/apache-sites-enabled.md) for setup, so it is a good idea to review that routine if you plan on following along.
* We will be using "wiki-doc.yourdomain.com" as the domain name throughout this example.
* We will assume throughout this document that you are the root user or can get there with _sudo_.
* We are assuming a fresh install of the OS, however that is **NOT** a requirement.

# Introduction
## Introduction

Documentation can take many forms in an organization. Having a repository that you can reference for that documentation is invaluable. A wiki (which means _quick_ in Hawaiian), is a way to keep documentation, process notes, corporate knowledge bases, and even code examples, in a centralized location. IT professionals who maintain a wiki, even secretly, have a built-in insurance policy against forgetting an obscure routine.
Documentation can take many forms in an organization. Having a repository that you can reference for that documentation is invaluable. A wiki (which means _quick_ in Hawaiian), is a way to keep documentation, process notes, corporate knowledge bases, and even code examples, in a centralized location. IT professionals who maintain a wiki, even secretly, have a built-in insurance policy against forgetting an obscure routine.

DokuWiki is a mature, fast, wiki that runs without a database, has built in security features, and is relatively easy to deploy. For more information on what DokuWiki can do, check out their [web page](https://www.dokuwiki.org/dokuwiki).
DokuWiki is a mature, fast, wiki that runs without a database, has built in security features, and is relatively easy to deploy. For more information on what DokuWiki can do, check out their [web page](https://www.dokuwiki.org/dokuwiki).

DokuWiki is just one of many wiki's available, though it's a pretty good one. One big pro is that DokuWiki is relatively lightweight and can run on a server that is already running other services, provided you have space and memory available.

# Installation

## Installing Dependencies

The minimum PHP version for DokuWiki is now 7.2, which is exactly what Rocky Linux 8 comes with. We are specifying packages here that may already be installed:
Expand Down Expand Up @@ -77,7 +85,7 @@ That configuration file should look something like this:

Note that the "AllowOverride All" above, allows the .htaccess (directory specific security) file to work.

Go ahead an link the configuration file into sites-enabled, but don't start web services as yet:
Go ahead and link the configuration file into sites-enabled, but don't start web services as yet:

`ln -s /etc/httpd/sites-available/com.yourdomain.wiki-doc /etc/httpd/sites-enabled/`

Expand All @@ -93,7 +101,7 @@ In your server, change to the root directory.

`cd /root`

Now that we have our environment ready to go, let's get the latest stable version of DokuWiki. You can find this by going to [the download page](https://download.dokuwiki.org/) and on the left-hand side of the page under "Version" you will see "Stable (Recommended) (direct link)."
Now that we have our environment ready to go, let's get the latest stable version of DokuWiki. You can find this by going to [the download page](https://download.dokuwiki.org/) and on the left-hand side of the page under "Version" you will see "Stable (Recommended) (direct link)."

Right-click on the "(direct link)" portion of this and copy the link address. In the console of your DokuWiki server, type "wget" and a space and then paste in your copied link in the terminal. You should get something like this:

Expand All @@ -112,15 +120,15 @@ dokuwiki-2020-07-29/inc/lang/fr/draft.txt
dokuwiki-2020-07-29/inc/lang/fr/recent.txt
... (more below)
```
We don't want that leading named directory when we decompress the archive, so we are going to use some options with tar to exclude it. The first option is the "--strip-components=1" which removes that leading directory.
We don't want that leading named directory when we decompress the archive, so we are going to use some options with tar to exclude it. The first option is the "--strip-components=1" which removes that leading directory.

The second option is the "-C" option, and that tells tar where we want the archive to be decompressed to. So decompress the archive with this command:

`tar xzf dokuwiki-stable.tgz --strip-components=1 -C /var/www/sub-domains/com.yourdomain.wiki-doc/html/`

Once we have executed this command, all of DokuWiki should be in our _DocumentRoot_.

We need to make a copy of the _.htaccess.dist_ file that came with DokuWiki and keep the old one there too, in case we need to revert to the original in the future.
We need to make a copy of the _.htaccess.dist_ file that came with DokuWiki and keep the old one there too, in case we need to revert to the original in the future.

In the process, we will be changing the name of this file to simply _.htaccess_ which is what _apache_ will be looking for. To do this:

Expand All @@ -132,7 +140,7 @@ Now we need to change ownership of the new directory and its files to the _apach

## Setting Up DNS Or /etc/hosts

Before you'll be able to access the DokuWiki interface, you'll need to set name resolution for this site. For testing purposes, you can use your _/etc/hosts_ file.
Before you'll be able to access the DokuWiki interface, you'll need to set name resolution for this site. For testing purposes, you can use your _/etc/hosts_ file.

In this example, let's assume that DokuWiki will be running on a private IPv4 address of 10.56.233.179. Let's also assume that you are modifying the _/etc/hosts_ file on a Linux workstation. To do this, run:

Expand Down Expand Up @@ -198,15 +206,15 @@ Either should work if you set your hosts file as above. This will bring you to t

Your wiki is now ready for you to add content.

# Securing DokuWiki
## Securing DokuWiki

Besides the ACL policy that you just created, consider:

## Your Firewall
### Your Firewall

Before you call everything done, you need to think about security. First, you should be running a firewall on the server. We will assume that you are using _iptables_ and have [Enabled _iptables_](../security/enabling_iptables_firewall.md), but if you want to use _firewalld_ instead, simply modify your _firewalld_ rules accordingly.
Before you call everything done, you need to think about security. First, you should be running a firewall on the server. We will assume that you are using _iptables_ and have [Enabled _iptables_](../security/enabling_iptables_firewall.md), but if you want to use _firewalld_ instead, simply modify your _firewalld_ rules accordingly.

Instead of everyone having access to the wiki, we are going to assume that anyone on the 10.0.0.0/8 network is on your private Local Area Network, and that those are the only people who need access to the site. A simple _iptables_ firewall script for this is down below.
Instead of everyone having access to the wiki, we are going to assume that anyone on the 10.0.0.0/8 network is on your private Local Area Network, and that those are the only people who need access to the site. A simple _iptables_ firewall script for this is down below.

Please note that you may need other rules for other services on this server, and that this example only takes into account the web services.

Expand Down Expand Up @@ -244,11 +252,10 @@ Then execute the script:

This will execute the rules and save them so that they will be reloaded on the next start of _iptables_ or on boot.

## SSL
### SSL

For the best security, you should consider using an SSL so that all web traffic is encrypted. You can purchase an SSL from an SSL provider or use [Let's Encrypt](../security/generating_ssl_keys_lets_encrypt.md)

# Conclusion
## Conclusion

Whether you need to document processes, company policies, program code, or something else, a wiki is a great way to get that done. DokuWiki is a product that is secure, flexible, easy to use, relatively easy to install and deploy, and is a stable project that has been around for many years.

12 changes: 11 additions & 1 deletion docs/guides/desktop/mate_installation.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
---
title: MATE Desktop
author: unknown
contributors: Steven Spencer
tested with: 8.5
tags:
- mate
- desktop
---

# MATE Desktop Environment

The MATE desktop environment was created to fork and continue GNOME2 in the wake of the somewhat negative reception that GNOME3 received when introduced. MATE has a loyal set of followers, who immediately install it on their OS of choice. MATE can be installed on many flavors of Linux, including Rocky Linux.
Expand Down Expand Up @@ -77,4 +87,4 @@ You should end up with a login prompt in the MATE GUI, and when you login, you w

## Conclusion

Some people are not satisfied with the newer GNOME implementations or are a lot of users who simply prefer the older MATE GNOME 2 look and feel. For those people, getting MATE installed in Rocky Linux will provide a nice, stable alternative.
Some people are not satisfied with the newer GNOME implementations or simply prefer the older MATE GNOME 2 look and feel. For those people, getting MATE installed in Rocky Linux will provide a nice, stable alternative.
10 changes: 8 additions & 2 deletions docs/guides/dns/private_dns_server_using_bind.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
---
title: Bind Private DNS Server
author: Steven Spencer
contributors: Ezequiel Bruni
tested with: 8.5
tags:
- dns
- bind
---

# Private DNS Server Using Bind
Expand Down Expand Up @@ -136,7 +142,7 @@ devel IN A 192.168.1.15

Add as many hosts as you need to the bottom of the file along with their IP addresses and then save your changes.

Next, we need a reverse file to map our hostname to the IP address, In this case, the only part of the IP that you need is the last octet (in an IPv4 address each number separated by a comma, is an octet) of the host and then the PTR and hostname.
Next, we need a reverse file to map our hostname to the IP address, In this case, the only part of the IP that you need is the last octet (in an IPv4 address each number separated by a period, is an octet) of the host and then the PTR and hostname.

`vi /var/named/ourdomain.lan.rev`

Expand Down Expand Up @@ -244,7 +250,7 @@ TYPE=Ethernet
MTU=
```

We want to substitute in our new DNS server for the primary (DNS1) and then move each of the other DNS servers down one so that it like this:
We want to substitute in our new DNS server for the primary (DNS1) and then move each of the other DNS servers down one so that it is like this:

```
DEVICE=eth0
Expand Down
6 changes: 5 additions & 1 deletion docs/guides/editors/micro.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@ title: micro
author: Ezequiel Bruni
contributors: Steven Spencer
tested version: 8.5
tags:
- editor
- editors
- micro
---

# Install micro on Rocky Linux
Expand Down Expand Up @@ -46,7 +50,7 @@ Next, you’ll need the installer from *micro*’s website. The following comman
curl https://getmic.ro | bash
```

To install the app system-wide (and so you can just type “micro” to open up the app), you can run the script as root inside of `/usr/bin/`. However, if you want to check the it out first and be careful about it, you can install the *micro* to any folder you want, and then move the app later with:
To install the app system-wide (and so you can just type “micro” to open up the app), you can run the script as root inside of `/usr/bin/`. However, if you want to check it out first and be careful about it, you can install the *micro* to any folder you want, and then move the app later with:

```bash
sudo mv micro /usr/bin/
Expand Down
Loading