Webserver mit FreeBSD® 9.1-RELEASE über Ports aufsetzen
Inhaltsverzeichnis
- 1 FreeBSD®/i386 9.1-RELEASE beschaffen
- 1.1 Installationsmedium erstellen
- 1.2 Installationsstart
- 1.3 Willkommensbildschirm
- 1.4 Auswahl der Nationalität, Sprach- und Landeseinstellungen
- 1.5 Festlegung des Hostnamens
- 1.6 Auswahl der Installationsumfangs
- 1.7 Grobeinteilung des/der einzurichtenden Datenmediums/-en (meist Festplatten/-en)
- 1.8 Ort für Urlader/Startverwaltung festlegen
- 1.9 Feineinteilung des/der einzurichtenden Datenmediums/-en (meist Festplatten/-en)
- 1.10 Installationsumfang festlegen
- 1.11 Installationsquelle festlegen
- 1.12 Warnhinweis wegen Überschreibens eventuell bereits auf dem einzurichtenden Datenmedium vorhandener Altdaten
- 1.13 Fertigmeldung der erfolgten Installation
- 1.14 Einstellung zum Netzwerk
- 1.15 Einstellung der Netzwerkdienste
- 1.16 Ein/ausgabeeinstellungen für Tastatur und Bild
- 1.17 Einstellungen für Zeit
- 1.18 Binärkompatibilität zu Linux
- 1.19 Maus einrichten
- 1.20 Softwarepakete aus Sammlung installieren
- 1.21 Benutzerkonten und Kennwörter anlegen
- 1.22 Einrichtung abschliessen
- 1.23 Anmelden
- 1.24 Verzögerung des Bootmenüs einstellen
- 1.25 Ports einrichten
- 1.26 Webserver Apache einrichten
- 1.27 Start von Apache einrichten
- 1.28 SSL einrichten
- 1.29 Apache einstellen
- 1.30 Kernelmodul für Apache einschalten
- 1.31 PHP5 einrichten
- 1.32 Apache für PHP einrichten
- 1.33 MySQL einrichten
- 1.34 MySQL Datenbank Kennwort setzen
- 1.35 MySQL Datenbank anonyme Nutzer löschen
- 1.36 MySQL Datenbank Hauptbenutzer umbenennen
- 1.37 MySQL Datenbank Hauptbenutzer Kennwort setzen
- 1.38 MySQL Datenbank verlassen
- 1.39 Historie der Eingabeshell und MySQL löschen
- 1.40 MySQL Netzwerkeinstellungen setzen
- 1.41 phpMyAdmin einrichten
- 1.42 phpMyAdmin einstellen
FreeBSD®/i386 9.1-RELEASE beschaffen
Installationsmedium erstellen
Datei schreiben
- die gespeicherte Image-Datei mit .img-Dateiendung sollte anschliessend mit einem Programm auf einen ausreichend großen (>640MB)) USB-Stick oder Festplatte geschrieben werden.
Unter Linux/Unix/Darwin/MacOS® X etc. :
# dd if=FreeBSD-9.1-RELEASE-i386-memstick.img of=/dev/da0 bs=64k
Mit Microsoft Windows® sollte der "Image Writer for Windows®" verwendet werden.
Er kann hier heruntergeladen werden.
Achtung! bitte genau darauf achten welchen Laufwerksbuchstaben man als Ziel angibt.
Installationsstart
- Durch Einlegen der DVD/CD ins Laufwerk kann der zu installierende Server jetzt gestartet werden.
Eventuell ist das Drücken einer bestimmten Taste (zum Beispiel F12 bei DELL® OptiPlex GX270) beim Serverstart notwendig um das Starten von USB auszuwählen oder im BIOS muss die Bootreihenfolge entsprechend verändert werden.
- Meist kann dann in einer Auswahliste:
"USB Flash Device"
oder ähnlich ausgewählt werden.
Willkommensbildschirm
- Es erscheint eine Auswahliste
1. Boot FreeBSD [Enter]
mit der Taste 1 auswählen.
Nach einigen Boot & Hardwaremeldungen erscheint ein farbiges Auswahlfenster:
Install, falls nicht ausgewählt über die TAB-Taste auswählen, RETURN drücken.
Auswahl der Nationalität, Sprach- und Landeseinstellungen
Es escheint ein farbiges Auswahlfenster:
Yes, falls nicht ausgewählt über die TAB-Taste auswählen, RETURN drücken.
- Es erscheint eine Auswahliste "Keyboard Menu"'
- mit den den Richtungstasten (Pfeile aufwärts/abwärts) die
German ISO-8859-1
für Deutschland auswählen.
- über die Schaltfläche OK die Auswahl bestätigen.
Festlegung des Hostnamens
- Es escheint ein farbiges Auswahlfenster:
- Den Hostnamen eingeben und RETURN drücken.
Auswahl der Installationsumfangs
- Es erscheint eine Auswahliste "Distribution Select"'
- mit den den Richtungstasten (Pfeile aufwärts/abwärts)
[*] ports
auswählen. (Durch Drücken der Leertaste bis * erscheint )
Die Punkte
[ ] doc [ ] games [ ] src
abwählen. (Durch Drücken der Leertaste bis * verschwindet )
- über die Schaltfläche OK die Auswahl mit RETURN bestätigen.
Grobeinteilung des/der einzurichtenden Datenmediums/-en (meist Festplatten/-en)
- Es escheint ein farbiges Auswahlfenster:
- über die Schaltfläche <Guided> die Meldung bestätigen.
- Es escheint ein farbiges Auswahlfenster:
- mit den den Richtungstasten (Pfeile aufwärts/abwärts) den Datenträger auswählen auf dem installiert werden soll.
Hinweis: Meistens ist dies nicht da0, da dies der Installations-Bootstick ist!
- über die Schaltfläche OK die Auswahl mit RETURN bestätigen
- Es escheint ein farbiges Auswahlfenster:
- mit der TAB-Taste <Entire Disk> auswählen und mit RETURN bestätigen
Hinweis: Sollte der Installationsdatenträger nicht leer sein erscheint ein Dialogfenster "Confirmation" das fragt ob man das Löschen des Datenträgers fortsetzen will. => mit < Yes > bestätigen.
- Es erscheint ein farbiges Auswahlfenster "Partition Editor"
- Das/die Datenmedium/-en entsprechend den eigenen Wünschen einteilen (auch mehrere Festplatten können verwendet werden) - Vorschlag:
< Auto >
auswählen. Das Installationsprogramm erstellt dann von selbst eine Einteilung.
- Danach
< Finish >
mit der TAB-Taste auswählen.
Ort für Urlader/Startverwaltung festlegen
- Es erscheint eine Abfrage "Install Boot Manager for drive ad0?"
(drive ad0 kann -je nach den vorher gemachten Auswahlen abweichen !)
- mit den den Richtungstasten (Pfeile aufwärts/abwärts)
Standard Install a standard MBR (no boot manager)
auswählen.
- über die Schaltfläche OK die Auswahl bestätigen.
Feineinteilung des/der einzurichtenden Datenmediums/-en (meist Festplatten/-en)
- Es erscheint eine Meldung "Message"' die darüber informiert, das eine Feineinteilung des Datenmediums gemacht werden muss. Wenn mehr als 1GB Platz zur Verfügung steht kann man einfach die vorgeschlagene Selbsteinteilung von FreeBSD wählen.
- über die Schaltfläche OK die Meldung bestätigen.
- Es erscheint ein Programm "FDISK Partition Editor"
- Das Datenmedium entsprechend den eigenen Wünschen einteilen (auch mehrere Festplatten können verwendet werden) - Vorschlag:
A = Auto Defaults
mit der Taste A auswählen. Das Installationsprogramm erstellt dann von selbst eine Einteilung.
- Danach:
Q = Finish
mit der Taste Q auswählen.
Installationsumfang festlegen
- Es erscheint eine Auswahliste "Choose Distributions"
- mit den den Richtungstasten (Pfeile aufwärts/abwärts)
[ ] A Minimal The smallest configuration possible
auswählen.
mit der Leertaste ein X in die vorhandenen [ ] setzen:
[X] A Minimal The smallest configuration possible
- mit der TAB-Taste die Schaltfläche OK auswählen. (Einfügemarke steht auf Schaltfläche)
- über die Schaltfläche OK die Auswahl bestätigen.
Installationsquelle festlegen
- Es erscheint eine Abfrage "Choose Installation Media"
- mit den Richtungstasten (Pfeile aufwärts/abwärts)
1 CD/DVD Install from a FreeBSD CD/DVD
auswählen.
- über die Schaltfläche OK die Auswahl bestätigen.
Warnhinweis wegen Überschreibens eventuell bereits auf dem einzurichtenden Datenmedium vorhandener Altdaten
- Es erscheint eine Abfrage "User Confirm Requested"
- mit der TAB-Taste die Schaltfläche Yes auswählen um die Installation zu beginnen.
Fertigmeldung der erfolgten Installation
- Es erscheint eine Meldung "Message"' die darüber informiert, das FreeBSD® jetzt installiert ist und weitere Einstellungen gemacht werden können.
- über die Schaltfläche OK die Meldung bestätigen.
Einstellung zum Netzwerk
- Es erscheint ein Abfrage "User Confirmation Requested" über die Verwendung von Ethernet oder SLIP/PPP
- über die Schaltfläche Yes die Meldung bestätigen.
- Es erscheint eine Abfrage "Network interface information required"
- mit den den Richtungstasten (Pfeile aufwärts/abwärts)
xl0 3COM 3c90x / 3c90xB PCI Ethernet card
auswählen. (Je nach Hersteller der Netzwerkkarte kann diese Angabe abweichen)
- mit der TAB-Taste die Schaltfläche OK auswählen. (Einfügemarke steht auf Schaltfläche)
- über die Schaltfläche OK die Auswahl bestätigen.
- Es erscheint ein Abfrage "User Confirmation Requested" über die Verwendung von IPv6
- mit der TAB-Taste die Schaltfläche No auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint ein Abfrage "User Confirmation Requested" über die Verwendung von DHCP
- mit der TAB-Taste die Schaltfläche Yes auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint ein eine Maske "Network Configuration"' zur Einstellung von Netzwerknamen, Adressen, Netzwegen, Namensservern
Host: Domain: eman.thruhere.net thruhere.net IPv4 Gateway: Name Server: xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx
Configuration for Interface xl0 IPv4 Address: Netmask: xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx Extra options to ifconfig (usually empty) <leer lassen>
- Einstellungen eintragen (über die TAB-Taste kann ein Eingabefeld weiter gesprungen werden).
- über die Schaltfläche OK die Auswahl bestätigen.
- Es erscheint ein Abfrage "User Confirmation Requested" über die Verwendung des Servers als Netzwerkweg
- mit der TAB-Taste die Schaltfläche No auswählen. (Einfügemarke steht auf Schaltfläche)
Einstellung der Netzwerkdienste
- Es erscheint ein Abfrage "User Confirmation Requested" über die Verwendung des inetd, der Netzwerkdienste anbietet
- mit der TAB-Taste die Schaltfläche Yes auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint ein Abfrage "User Confirmation Requested" über das Einschalten von inetd
- mit der TAB-Taste die Schaltfläche Yes auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint ein Abfrage "User Confirmation Requested" über die Einstellung von inetd
- mit der TAB-Taste die Schaltfläche Yes auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint ein ein ee-Editor, der die Einstellungsdatei /etc/inetd.conf geöffnet hat.
- mit der Einfügemarke (Cursor) und der Taste Entf vor folgenden Diensten das Zeichen # entfernen:
ftp stream tcp nowait root /usr/libexec/ftpd ftpd-l
- mit der Taste ESC das "main menu" auswählen.
a) leave editor
- dann
a) save changes
wählen.
- Es erscheint ein Abfrage "User Confirmation Requested" über die Verwendung von SSH
- mit der TAB-Taste die Schaltfläche Yes auswählen. (Einfügemarke steht auf Schaltfläche)
Hinweis: meldet sich ein Benutzer später über SSH z.B. mit dem Programm Putty am Server an, so kann er über su root-Rechte erlangen, sofern er der Gruppe wheel zugehörig ist.
- Es erscheint ein Abfrage "User Confirmation Requested" über die Verwendung von anonymen FTP-Zugriff
- mit der TAB-Taste die Schaltfläche No auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint ein Abfrage "User Confirmation Requested" über die Verwendung des Computers als NFS Server
- mit der TAB-Taste die Schaltfläche No auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint ein Abfrage "User Confirmation Requested" über die Verwendung des Computers als NFS Client
- mit der TAB-Taste die Schaltfläche No auswählen. (Einfügemarke steht auf Schaltfläche)
Ein/ausgabeeinstellungen für Tastatur und Bild
- Es erscheint ein Abfrage "User Confirmation Requested" ob Einstellungen vorgenommen werden sollen.
- mit der TAB-Taste die Schaltfläche No auswählen. (Einfügemarke steht auf Schaltfläche)
Einstellungen für Zeit
- Es erscheint ein Abfrage "User Confirmation Requested" um die Zeitzone einzustellen
- mit der TAB-Taste die Schaltfläche Yes auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint ein Abfrage "User Confirmation Requested" um die Uhr einzustellen
- mit der TAB-Taste die Schaltfläche No auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint eine Auswahlliste "Time Zone Selector"
- mit den den Richtungstasten (Pfeile aufwärts/abwärts) die
8 Europe
auswählen.
- über die Schaltfläche OK die Auswahl bestätigen.
- Es erscheint eine Auswahlliste "Countries in Europe"
- mit den den Richtungstasten (Pfeile aufwärts/abwärts) die
15 Germany
für Deutschland auswählen.
- über die Schaltfläche OK die Auswahl bestätigen.
- Es erscheint ein Abfrage "Confirmation" um die Abkürzung für zentrale europäische Zeit zu bestätigen.
- mit der TAB-Taste die Schaltfläche Yes auswählen. (Einfügemarke steht auf Schaltfläche)
Binärkompatibilität zu Linux
- Es erscheint ein Abfrage "User Confirmation Requested" um die Binärkompatibiltät zu Linux auszuwählen
- mit der TAB-Taste die Schaltfläche No auswählen. (Einfügemarke steht auf Schaltfläche)
Maus einrichten
- Es erscheint ein Abfrage "User Confirmation Requested" um die Verfügbarkeit einer Maus abzufragen.
- mit der TAB-Taste die Schaltfläche Yes auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint eine Auswahlliste "Please configure your mouse"
- mit den den Richtungstasten (Pfeile aufwärts/abwärts) die
2 Enable
auswählen.
- über die Schaltfläche OK die Auswahl bestätigen.
- Es erscheint ein Abfrage "User Confirmation Requested" um die korrekte Funktion der Maus abzufragen.
- mit der TAB-Taste die Schaltfläche Yes auswählen. (Einfügemarke steht auf Schaltfläche)
- jetzt ist wieder die Auswahlliste "Please configure your mouse" aktiv
- mit den den Richtungstasten (Pfeile aufwärts/abwärts)
x Exit
auswählen.
- über die Schaltfläche OK die Auswahl bestätigen.
Softwarepakete aus Sammlung installieren
- Es erscheint ein Abfrage "User Confirmation Requested" um die Softwarepake auszuwählen
- mit der TAB-Taste die Schaltfläche No auswählen. (Einfügemarke steht auf Schaltfläche)
Benutzerkonten und Kennwörter anlegen
- Es erscheint ein Abfrage "User Confirmation Requested" um Benutzer anzulegen
- mit der TAB-Taste die Schaltfläche Yes auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint eine Auswahlliste "User and group management"
- mit den den Richtungstasten (Pfeile aufwärts/abwärts)
User
auswählen.
- über die Schaltfläche OK die Auswahl bestätigen.
- Es erscheint ein eine Maske "User and Group Management"' zur Einstellung von Namen, Gruppenzugehörigkeit, Verzeichnis ...
Login ID: UID: Group: Password: xxx 1001
Full name: Member groups: xxx wheel
Home directory Login shell: /home/xxx /bin/sh
- Einstellungen eintragen (über die TAB-Taste kann ein Eingabefeld weiter gesprungen werden).
- über die Schaltfläche OK die Auswahl bestätigen.
- Es erscheint eine Auswahlliste "User and group management"
- mit den den Richtungstasten (Pfeile aufwärts/abwärts)
x Exit
auswählen.
- über die Schaltfläche OK die Auswahl bestätigen.
- Es erscheint eine Meldung "Message"' die darüber informiert, das ein Kennwort für den Haupverwalter (root) vergeben werden muss.
- über die Schaltfläche OK die Meldung bestätigen.
- Es erscheint eine Shell:
New Password:
- das Kennwort für den Hauptverwalter eingeben und mit der Eingabetaste bestätigen (das Kennwort wird nicht angezeigt).
- in der Shell steht jetzt:
New Password: Retype New Password:
- das Kennwort für den Hauptverwalter nochmals eingeben und mit der Eingabetaste bestätigen (das Kennwort wird nicht angezeigt).
Einrichtung abschliessen
- Es erscheint ein Abfrage "User Confirmation Requested" um zurück in die Auswahlisten zu gelangen.
- mit der TAB-Taste die Schaltfläche Yes auswählen. (Einfügemarke steht auf Schaltfläche)
Wird an dieser Stelle "No" gewählt wird dies irgnoriert - es dürfte sich um einen kleinen Programmierfehler (bug) handeln
- Es erscheint eine Auswahliste "sysinstall Main Menu"'
- mit der TAB-Taste die Schaltfläche X Exit Install auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint ein Abfrage "User Confirmation Requested" um den Server neu zu starten. Es sollten alle Installationsdatenträger aus den Laufwerken entfernt werden.
- mit der TAB-Taste die Schaltfläche Yes auswählen. (Einfügemarke steht auf Schaltfläche)
- der Server startet jetzt neu.
- Es erscheint eine Auswahliste
1. Boot FreeBSD [default]
mit der Taste 1 auswählen.
Anmelden
- Nach dem Neustart als root anmelden:
FreeBSD/i386 (eman.thruhere.net) (ttyv0) login: root Password: xxx #
Verzögerung des Bootmenüs einstellen
# ee /boot/loader.conf
eingeben um eine neue Einstellungsdatei für den bootloaders zu erstellen. In die noch leere Datei:
autoboot_delay="1" #reduce time to choose from bootmenu to 1 second
eingeben.
- mit der Taste ESC das "main menu" auswählen.
a) leave editor
- dann
a) save changes
wählen.
Ports einrichten
# portsnap fetch extract
eingeben.
- Die Portdateien werden übertragen, dies kann eine Zeit dauern. (ca. 59 MB / 15 Min. - 14.11.2009)
Webserver Apache einrichten
# cd /usr/ports/www/apache22
# make config install distclean
- Es erscheint eine Auswahliste "Options for apache 2.2.13"
- mit der TAB-Taste die Schaltfläche OK auswählen. (Einfügemarke steht auf Schaltfläche)
Diese Auswahl erscheint zweimal - scheint ein kleiner Programmierfehler (bug) zu sein.
- über die Schaltfläche OK die Auswahl bestätigen.
- Es erscheint eine Auswahliste "Options for perl 5.8.9_3"
- mit der TAB-Taste die Schaltfläche OK auswählen. (Einfügemarke steht auf Schaltfläche)
- über die Schaltfläche OK die Auswahl bestätigen.
- Es erscheint eine Auswahliste "Options for m4 1.4.13,1"
- Jetzt kann zusätzlich folgende Einstellung gemacht werden: Header-Daten des Apache Webservers ändern
- mit der TAB-Taste die Schaltfläche OK auswählen. (Einfügemarke steht auf Schaltfläche)
- über die Schaltfläche OK die Auswahl bestätigen.
- Es erscheint eine Auswahliste "Options for libiconv 1.13.1"
- mit der TAB-Taste die Schaltfläche OK auswählen. (Einfügemarke steht auf Schaltfläche)
- über die Schaltfläche OK die Auswahl bestätigen.
# reboot
eingeben.
- wieder als root anmelden.
Start von Apache einrichten
# echo 'apache22_enable="YES"' >> /etc/rc.conf
eingeben um die entsprechende Start-Scripte beim Serverstart aufzurufen.
SSL einrichten
# cd /usr/local/etc/apache22/ # openssl genrsa -out server.key 1024
eingeben
# openssl req -new -key server.key -out server.csr
eingeben.
You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:DE
- DE für Deutschland eingeben
State or Province Name (full name) [Some-State]:xxxx
- Bundesland eingeben
Locality Name (eg, city) []: xxxx
- Stadt eingeben
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
- Organisation, Firma eingeben
Organizational Unit Name (eg, section) []:
- ...
Common Name (eg, YOUR name) []:
- ...
Email Address []:
- ...
Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []:
- ...
An optional company name []:
- ...
# openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt # chmod 0400 server.key server.crt
eingeben um SSL-Schlüssel und Zertifikate zu erzeugen und Zugriffsrechte zu setzen.
Apache einstellen
# ee /usr/local/etc/apache22/httpd.conf
eingeben um die Haupteinstellungen des Apache zu öffnen
#ServerName www.example.com:80
...
ServerAdmin you@example.com
...
www.Server.tld:80
anpassen.
DocumentRoot "/usr/local/www/apache22/data" <Directory "/usr/local/www/apache22/data">
- je anpassen zu:
DocumentRoot "/usr/local/www/apache22/data/01" <Directory "/usr/local/www/apache22/data/01">
dieses Verzeichnis muss später noch erstellt werden
#Include etc/apache22/extra/httpd-info.conf ... #Include etc/apache22/extra/httpd-vhosts.conf ... #Include etc/apache22/extra/httpd-default.conf ... #Include etc/apache22/extra/httpd-ssl.conf
- jeweils das vorangestellte # entfernen oder einfügen um diese in die Haupteinstellungen miteinzubinden oder herauszunehmen:
Include etc/apache22/extra/httpd-info.conf ... Include etc/apache22/extra/httpd-vhosts.conf ... Include etc/apache22/extra/httpd-default.conf ... Include etc/apache22/extra/httpd-ssl.conf
- mit der Taste ESC das "main menu" auswählen.
a) leave editor
- dann
a) save changes
wählen.
# mkdir /usr/local/www/apache22/data/01
- dann
# mkdir /usr/local/www/apache22/data/02
eingeben um zwei Verzeichnisse für die Webseiten zu erstellen.
# ee /usr/local/etc/apache22/extra/httpd-default.conf
eingeben um diese Einstellungen des Apache zu öffnen
ServerTokens Full
anpassen zu:
ServerTokens Prod
ServerSignature On
anpassen zu:
ServerSignature Off
- mit der Taste ESC das "main menu" auswählen.
a) leave editor
- dann
a) save changes
wählen.
# ee /usr/local/etc/apache22/extra/httpd-info.conf
eingeben um diese Einstellungen des Apache zu öffnen
<Location /server-status> SetHandler server-status Order deny,allow Deny from all Allow from .example.com </Location>
anpassen zu:
# <Location /server-status> # SetHandler server-status # Order deny,allow # Deny from all # Allow from .example.com # </Location>
<Location /server-info> SetHandler server-info Order deny,allow Deny from all Allow from .example.com </Location>
anpassen zu:
# <Location /server-info> # SetHandler server-info # Order deny,allow # Deny from all # Allow from .example.com # </Location>
- mit der Taste ESC das "main menu" auswählen.
a) leave editor
- dann
a) save changes
wählen.
# ee /usr/local/etc/apache22/extra/httpd-vhosts.conf
eingeben um diese Einstellungen des Apache zu öffnen
NameVirtualHost *:80
<VirtualHost *:80> ServerAdmin webmaster@dummy-host.example.com DocumentRoot "/usr/local/docs/dummy-host.example.com" ServerName dummy-host.example.com ServerAlias www.dummy-host.example.com ErrorLog "/var/log/dummy-host.example.com-error_log" CustomLog "/var/log/dummy-host.example.com-access_log" common </VirtualHost> <VirtualHost *:80> ServerAdmin webmaster@dummy-host2.example.com DocumentRoot "/usr/local/docs/dummy-host2.example.com" ServerName dummy-host2.example.com ErrorLog "/var/log/dummy-host2.example.com-error_log" CustomLog "/var/log/dummy-host2.example.com-access_log" common </VirtualHost>
anpassen zu:
NameVirtualHost *:443
<VirtualHost *:443> ServerAdmin name@domain.tld DocumentRoot "/usr/local/www/apache22/data/02" ServerName eman.thruhere ServerAlias eman.thruhere.net # ErrorLog "/var/log/dummy-host.example.com-error_log" # CustomLog "/var/log/dummy-host.example.com-access_log" common <Directory /usr/local/www/apache22/data/02/> Order allow,deny allow from all </Directory> SSLEngine On SSLCertificateFile /usr/local/etc/apache22/server.crt SSLCertificateKeyFile /usr/local/etc/apache22/server.key </VirtualHost> #<VirtualHost *:80> # ServerAdmin webmaster@dummy-host2.example.com # DocumentRoot "/usr/local/docs/dummy-host2.example.com" # ServerName dummy-host2.example.com # ErrorLog "/var/log/dummy-host2.example.com-error_log" # CustomLog "/var/log/dummy-host2.example.com-access_log" common #</VirtualHost>
- mit der Taste ESC das "main menu" auswählen.
a) leave editor
dann
a) save changes
wählen.
Kernelmodul für Apache einschalten
werden die folgenden Anweisungen nicht durchgeführt, so kommt es beim Start von Apache evtl. zu zwei Fehlermeldungen: ...Failed to enable the 'dataready' Accept Filter ...Failed to enable the 'httpready' Accept Filter
# ee /boot/loader.conf
eingeben um diese Einstellungen des Loaders zu öffnen
autoboot_delay="1" # reduce time to choose from bootmenu to 1 second
ändern zu:
autoboot_delay="1" # reduce time to choose from bootmenu to 1 second accf_data_load="YES" # wait for data accept filter accf_http_load="YES" # wait for full HTTP request accept filter loader_logo="beastie" # show beastie in colour beneath bootmenu
- mit der Taste ESC das "main menu" auswählen.
a) leave editor
dann
a) save changes
wählen.
PHP5 einrichten
# cd /usr/ports/lang/php5 # make config install distclean
nacheinander eingeben.
- Es erscheint eine Auswahlliste "Options for php5 5.2.11_1"
- mit den den Richtungstasten (Pfeile aufwärts/abwärts)
[ ] APACHE Build Apache module
auswählen.
mit der Leertaste ein X in die vorhandenen [ ] setzen:
[X] APACHE Build Apache module
- mit der TAB-Taste die Schaltfläche OK auswählen. (Einfügemarke steht auf Schaltfläche)
- über die Schaltfläche OK die Auswahl bestätigen.
# cd /usr/ports/lang/php5-extensions # make config install distclean
nacheinander eingeben.
- Es erscheint eine Auswahlliste "Options for php5-extensions 1.3"
- über die Schaltfläche OK die Auswahl bestätigen.
- Es erscheint eine Auswahlliste "Options for php5-pcre 5.2.11_1"
- über die Schaltfläche OK die Auswahl bestätigen.
- Es erscheint eine Auswahlliste "Options for php5-sqlite 5.2.11_1"
- über die Schaltfläche OK die Auswahl bestätigen.
# cp /usr/local/etc/php.ini-recommended /usr/local/etc/php.ini
eingeben um die empfohlene Einstellungsdatei für PHP zu verwenden.
danach:
# ee /usr/local/etc/php.ini
um folgende Zeilen:
;;;;;;;;;;;;;;;;;; ; Fopen wrappers ; ;;;;;;;;;;;;;;;;;; ; Whether to allow the treatment of URLs (like http:// or ftp://) as files. allow_url_fopen = On
in:
;;;;;;;;;;;;;;;;;; ; Fopen wrappers ; ;;;;;;;;;;;;;;;;;; ; Whether to allow the treatment of URLs (like http:// or ftp://) as files. allow_url_fopen = Off
abändern.
Apache für PHP einrichten
# ee /usr/local/etc/apache22/httpd.conf
eingeben um die Haupteinstellungen des Apache zu öffnen
- innerhalb der
LoadModule... -Anweisungen
folgende Zeilen auf kontrollieren - und falls fehlend einfügen:
LoadModule php5_module libexec/apache22/libphp5.so
- unterhalb der
LoadModule... -Anweisungen
folgende Zeilen einfügen:
<IfModule mod_php5.c> DirectoryIndex index.php index.html index.htm </IfModule>
<IfModule mod_php5.c> AddType application/x-httpd-php .php .phtml AddType application/x-httpd-php-source .phps </IfModule>
- mit der Taste ESC das "main menu" auswählen.
a) leave editor
dann
a) save changes
wählen.
MySQL einrichten
# cd /usr/ports/databases/mysql51-server # make install WITH_OPENSSL=yes # make distclean
nacheinander eingeben.
# echo 'mysql_enable="YES"' >> /etc/rc.conf
eingeben um die entsprechende Start-Scripte beim Serverstart aufzurufen.
# reboot
eingeben.
- wieder als root anmelden.
MySQL Datenbank Kennwort setzen
# mysqladmin -u root password yyy
eingeben.
(yyy steht für ein Kennwort, das man sich für später merken sollte.)
# mysql -u root -p
eingeben.
Enter password:
- Kennwort yyy eingeben.
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 Server version: 5.1.40 FreeBSD port: mysql-server-5.1.40 Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
- use mysql eingeben um die Hauptdatenbank von MySQL für den Zugriff zu öffnen.
mysql> use mysql Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql>
MySQL Datenbank anonyme Nutzer löschen
- DELETE FROM user WHERE user=""; eingeben um anonyme Nutzer der Datenbank zu löschen.
mysql> DELETE FROM user WHERE user=""; Query OK, 2 rows affected (0.00 sec) mysql>
- FLUSH PRIVILEGES; eingeben um die Tabellen der Benutzerrrechte neu zu laden.
mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.00 sec)
- SELECT * FROM user WHERE Password=""; um zu kontrollieren, das keine weiteren anonymen Nutzer mehr in der der Datenbank sind.
mysql> SELECT * FROM user WHERE Password=""; +-------------------+------+----------+-------------+-------------+ ... | Host | User | Password | Select_priv | Insert_priv | ... +-------------------+------+----------+-------------+-------------+ ... | eman.thruhere.net | root | | Y | Y | ... | 127.0.0.1 | root | | Y | Y | ... +-------------------+------+----------+-------------+-------------+ ... 2 rows in set (0.00 sec)
MySQL Datenbank Hauptbenutzer umbenennen
- UPDATE user SET user='zzz' WHERE user='root'; eingeben um den Benutzer root in Benutzer zzz zu ändern.
mysql> UPDATE user SET user='zzz' WHERE user='root'; Query OK, 3 rows affected (0.01 sec) Rows matched: 3 Changed: 3 Warnings: 0 mysql>
- SELECT * FROM user WHERE Password=""; eingeben um zu kontrollieren ob der Benutzer root in zzz abgeändert wurde.
mysql> SELECT * FROM user WHERE Password=""; +-------------------+------+----------+-------------+-------------+ ... | Host | User | Password | Select_priv | Insert_priv | ... +-------------------+------+----------+-------------+-------------+ ... | eman.thruhere.net | zzz | | Y | Y | ... | 127.0.0.1 | zzz | | Y | Y | ... +-------------------+------+----------+-------------+-------------+ ... 2 rows in set (0.00 sec)
MySQL Datenbank Hauptbenutzer Kennwort setzen
- UPDATE user SET Password = PASSWORD( 'aaa' ) WHERE Host = 'localhost' AND User = 'zzz'; eingeben um den Benutzer zzz das Kennwort aaa zuzuweisen.
mysql> UPDATE user SET Password = PASSWORD( 'aaa' ) WHERE Host = 'localhost' OR '127.0.0.1' AND User = 'zzz'; Query OK, 2 rows affected, 1 warning (0.00 sec) Rows matched: 4 Changed: 3 Warnings: 0 mysql>
- SELECT * FROM user WHERE Password=""; eingeben um zu kontrollieren, das keine weiteren Nutzer mit leerem Kennwort in der der Datenbank sind.
mysql> SELECT * FROM user WHERE Password=""; Empty set (0.00 sec) mysql>
MySQL Datenbank verlassen
- quit eingeben.
mysql> quit Bye #
Historie der Eingabeshell und MySQL löschen
# rm /root/.mysql_history # history -c
nacheinander eingeben um eventuell in der in der Historie der Eingabeshell und MySQL-Historie gespeicherte Kennworte zu löschen.
MySQL Netzwerkeinstellungen setzen
# ee /etc/my.cnf
eingeben um eine neue Datei mit ee zu erstellen.
[client] port=29912 [mysqld] port=29912 bind-address=127.0.0.1 skip-name-resolve safe-show-database
einfügen.
- mit der Taste ESC das "main menu" auswählen.
a) leave editor
- dann
a) save changes
wählen.
phpMyAdmin einrichten
cd /usr/ports/databases/phpmyadmin make config install distclean
nacheinander eingeben.
- Es erscheint eine Auswahliste "Options for phpMyAdmin 3.2.3"
- mit der TAB-Taste die Schaltfläche OK auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint eine Auswahliste "Options for php5-gd 5.2.11_2"
- mit der TAB-Taste die Schaltfläche OK auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint eine Auswahliste "Options for libxslt 1.1.26"
- mit der TAB-Taste die Schaltfläche OK auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint eine Auswahliste "Options for python26 2.6.2_3"
- mit der TAB-Taste die Schaltfläche OK auswählen. (Einfügemarke steht auf Schaltfläche)
- Es erscheint eine Auswahliste "php5-mbstring 5.2.11_1"
- mit der TAB-Taste die Schaltfläche OK auswählen. (Einfügemarke steht auf Schaltfläche)
# ln -s /usr/local/www/phpMyAdmin /usr/local/www/apache22/data/01
eingeben um einen Link zu im Dokumentenverzeichnis des Apache Webservers zu erstellen, der Zugriff per Webbrowser (https://) auf MyPHPAdmin ermöglicht.
# cd /usr/local/www/phpMyAdmin # cp config.sample.inc.php config.inc.php
nacheinander eingeben um die vorgeschlagenen Einstellungen für MyPHPAdmin zu kopieren.
phpMyAdmin einstellen
# ee config.inc.php
eingeben um folgende Einträge der Datei zu ändern:
$cfg['blowfish_secret'] = ; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */ ... /* User for advanced features */ // $cfg['Servers'][$i]['controluser'] = 'pma'; // $cfg['Servers'][$i]['controlpass'] = 'pmapass';
in:
$cfg['blowfish_secret'] = 'bbb'; ... /* User for advanced features */ $cfg['Servers'][$i]['controluser'] = 'zzz'; $cfg['Servers'][$i]['controlpass'] = 'aaa';
bbb ist ein neues Kennwort um den MySQL-Benutzernamen zzz und das zugehörige Kennwort aaa zu verschlüsseln.
- mit der Taste ESC das "main menu" auswählen.
a) leave editor
dann
a) save changes
wählen.