RackTables on Ubuntu 16.04

 

Step 1:

sudo -s

Step 2:

apt-get install mysql-server

Step 3:

printf “[mysqld]\ncharacter-set-server=utf8\n” > /etc/mysql/conf.d/charset.cnf; service mysql restart

Step 4:

apt-get install apache2-bin libapache2-mod-php7.0 php7.0-gd php7.0-mysql php7.0-mbstring php7.0-bcmath php7.0-json php7.0-snmp

Step 5:

cd /home/….

Step 6:

wget https://downloads.sourceforge.net/project/racktables/RackTables-0.20.13.tar.gz

Step 7:

tar -xf RackTables-0.20.13.tar.gz

Step 8:

mv ./RackTables-0.20.13 /var/www/html

Step 9:

cd /var/www/html

ln -s RackTables-0.20.13 racktables

Step 10:

nano /etc/apache2/sites-available/000-default.conf

Step 11:

DocumentRoot /var/www/html/racktables/wwwroot

Step 12:

/etc/init.d/apache2 restart

Step 13:

touch ‘/var/www/html/RackTables-0.20.13/wwwroot/inc/secret.php’; chmod a=rw ‘/var/www/html/RackTables-0.20.13/wwwroot/inc/secret.php’

Step 14:

mysql -u root -p

Step 15:

CREATE DATABASE racktables_db CHARACTER SET utf8 COLLATE utf8_general_ci;
GRANT ALL PRIVILEGES ON racktables_db.* TO racktables_user@localhost IDENTIFIED BY ‘MY_SECRET_PASSWORD’;

Step 16:

Start the Installation goto http://yourRackTablesServer

Step 17:

/var/www/html/racktables/wwwroot/inc# chown www-data:nogroup secret.php; chmod 440 secret.php

 

 

That´s IT

 

SFTP Zugang mit openssh ohne Shell Zugriff

Um eine SFTP Verbindung möglich zu machen ohne direkten Shell zugriff muss die Konfiguration von sshd geändert werden.

 

Step 1: Gruppe definieren welche von ssshd anders behandelt wird

sudo nano /etc/ssh/sshd_config

 

  #Subsystem sftp /usr/lib/openssh/sftp-server
  Subsystem sftp internal-sftp
 
  Match Group sftp
  ChrootDirectory %h
  ForceCommand internal-sftp
  AllowTcpForwarding no

 

 

Step 2: User anlegen für die Gruppe

sudo addgroup sftp

sudo useradd -m -s /bin/false -G sftp sftptest

sudo passwd sftptest

 

 

Step 3: Home Verzeichnis für User anlegen und Berechtigungen vergeben

sudo chown root:root /home/sftptest/

sudo chmod 0755 /home/sftptest/

 

sudo mkdir /home/sftptest/upload

sudo chown sftptest:sftptest /home/sftptest/upload

 

 

Step 4: Testen

Nun kann das ganze per SFTP getestet werden und ich würde an eurer Stelle schauen ob die SSH Verbindung funktioniert oder nicht.

 

 

That´s IT

 

 

ProFTPD ohne OS User

 

Wenn man einen FTP verwendet, dann möchte man meist den FTP komplett vom OS trennen, sei es aus Sicherheitsgründen oder aus Prinzip 😉 .

 

Step 1: ProFTPD installieren

sudo apt-get install proftpd-basic

 

Step 2: ProFTPD Config anpassen

/etc/proftpd/proftpd.conf
DefaultRoot ~
AuthOrder mod_auth_file.c mod_auth_unix.c
AuthUserFile /etc/proftpd/ftpd.passwd
AuthPAM off
RequireValidShell off

 

Step 3: User Anlegen

ftpasswd –passwd –name benutzername –uid 1001 –home /pfad/zum/userdir –shell /bin/false
damit das ganze auf Ubuntu 14.04 funktioniert noch dies hier ausführen
sudo chmod 440 /etc/proftpd/ftpd.passwd && sudo chown proftpd.root /etc/proftpd/ftpd.passwd

 

Step 4: ProFTPD durchstarten

sudo /etc/init.d/proftpd restart

 

 

Thats´s IT

Domain Umleitung per .htaccess

 

Um eine Website über mehrere URLs laufen zu lassen, aber eine Domain als ausführende zu verwenden, kann man per .htaccess eine direkte Umleitung auf dem Webserver machen.

 

RewriteCond %{HTTP_HOST} ^(www\.)?zweitdomain\.de$ [NC]
RewriteRule ^(.*)$ http://www.hauptdomain.com/$1 [R=301,L]

Benutzer und Gruppen verwalten

 

Gruppen mit Benutzern anzeigen

less /etc/group

 

Informationen über den aktuellen Benutzer

id

 

Benutzerkonto löschen

nur das Konto

sudo deluser Benutzername

 

Konto mit Home-Dir

sudo deluser –remove-home Benutzername

 

Benutzer anlegen mit spezieller Hauptgruppe

sudo adduser Benutzername –ingroup Gruppenname

 

Vorhandenem Benutzer eine weitere Gruppe zuordnen

sudo usermod -aG Gruppenname Benutzername

 

Standartgruppe eines Users ändern

sudo usermod -g Gruppenname Benutzername

 

Benutzer aus einer Gruppe entfernen

sudo deluser Benutzername Gruppenname

 

neue Gruppe erstellen

sudo addgroup Gruppenname

 

Passwort eines Benutzers ändern

sudo passwd Benutzername

 

 

That´s IT

Apache alle Seiten umleiten (Maintenance)

 

Falls eine Wartung nötig ist und alle Bookmarks und direkte Unterordner umgeleitet werden sollen, kann man mit entsprechenden vorgehen einen Apache Webserver mit entsprechender .htaccess aufsetzen und alles auftretende Ereignisse abfangen.

 

1. im Apache mod rewrite aktivieren

sudo a2enmod rewrite

 

2. sites-enables anpassen um die Weiterleitung zu aktivieren

 sudo nano /etc/apache2/sites-enabled/000-default

 

<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride none
Order allow,deny
allow from all
</Directory>

<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>

 

3. .htaccess Datei erstellen und mit den Weiterleitungsparametern füllen

sudo nano /var/www/.htaccess

 

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !index.html
RewriteCond %{REQUEST_URI} !.*css
RewriteCond %{REQUEST_URI} !.*png
RewriteRule .* ./index.html [R=307,L]

 

 

That´s IT

MySQL Server — mysql_datadir change

Wenn der mysql-datadir auf ein anderes Verzeichnis umziehen muss, muss doch einiges bedacht werden und anbei das vorgehen für den Umzug.

 

1. mysql Server stoppen

sudo /etc/init.d/mysql stop

 

2. vorhandene Dateien in das neue Verzeichnis kopieren

sudo cp -R -p /var/lib/mysql /newpath

 

3. datadir in der mysql-conf anpassen

sudo nano /etc/mysql/my.cnf

 

datadir = /var/lib/mysql

change to

datadir = /new_folder

 

4. im apparmor die mysql_data Pfade anpassen

sudo nano /etc/apparmor.d/usr.sbin.mysqld

/var/lib/mysql –> /new_folder

 

5. apparmor-config neu laden

sudo /etc/init.d/apparmor reload

 

6. mysql Server neu starten

sudo /etc/init.d/mysql restart

 

 

That´s IT