ein Bugtrack- und Projekttrackingprogamm
Installation der erforderlichen Pakete:
apt-get install mysql-server tomcat7 zip mc default-jdk /etc/init.d/tomcat7 stop
Download der Trackplussoftware:
#sitzt Du hinter einem Proxy? #export http_proxy=http://meinuser:meinpasswort@meinproxy:8080 wget http://www.trackplus.com/tl_files/content/downloads/Software/track-382b46.war #wget http://www.trackplus.com/tl_files/content/downloads/Software/track-382b46-db.zip #unzip track-382b46-db.zip
Webverzeichnis erstellen:
mkdir /var/lib/tomcat6/webapps/track
Software in das Webverzeichnis kopieren und dann reinwechseln:
mv track-*.war /var/lib/tomcat6/webapps/track/ cd /var/lib/tomcat5.5/webapps/track
Software auspacken und war-Datei löschen:
jar -xvf track*.war rm track-*.war
Trackdateien konfigurieren. Dabei auf Authentifizierung achten.
Einträge mysql –user root
in mysql -u root -p
abändern:
cd dbase/MySQL mcedit createdb.sh ... ROOT_PWD= TRACKUSER=friedj TRACKPWD=tissi DATA_DIR=/var/lib/mysql DBNAME=track ...
Datenbank anlegen:
sh createdb.sh
Konfig prüfen/ändern:
mcedit /var/lib/tomcat6/webbapps/track/WEB-INF/Torque.properties ... torque.dsfactory.track.connection.user = <siehe oben TRACKUSER> torque.dsfactory.track.connection.password = <siehe oben TRACKPWD> torque.dsfactory.track.connection.url = <Eintrag ...track370d... nach siehe oben DBNAME> ...
Tomcat am Schluss wieder starten:
/etc/init.d/tomcat6 start /usr/share/tomcat6/bin/startup.sh /usr/share/tomcat6/bin/shutdown.sh
Zugriff über die URL im Browser:
http://meinserver:8080/track
(ältere Versionen benutzen Port 8180.)
Erstanmeldung:
admin tissi
fertig.
Gehe in das konfigurierte JAVA_HOME-Verzeichnis (z.B. cd /usr/lib/jvm/java-6-sun
)
cd $JAVA_HOME
Erstelle einen Schlüssel für den HTTPS-Port. Er soll 10 Jahre gültig sein:
/bin/keytool -genkey -keystore /etc/tomcat6/.keystore -validity 3650 -alias "mysrv" -keysize 2048 -sigalg SHA256withRSA -keyalg RSA -ext SAN=dns:mysrv,dns:myalias,dns:myalias.my.dom.ain,ip:192.168.100.100 Geben Sie das Keystore-Passwort ein: meinPasswort Geben Sie das Passwort erneut ein: meinPasswort Wie lautet Ihr Vor- und Nachname? [Unknown]: admin@firma.de Wie lautet der Name Ihrer organisatorischen Einheit? [Unknown]: EDV-Abteilung Wie lautete der Name Ihrer Organisation? [Unknown]: MeineFirma GmbH Wie lautet der Name Ihrer Stadt oder Gemeinde? [Unknown]: KleinsiesteNich Wie lautete der Name Ihres Bundeslandes oder Ihrer Provinz? [Unknown]: BY Wie lautete der Landescode (zwei Buchstaben) für diese Einheit? [Unknown]: de Ist CN=admin@firma.de, OU=EDV-Abteilung, OU=MeineFirma GmbH, L=KleinsiesteNich, ST=BY, C=de richtig? [nein]: ja Geben Sie das Passwort für <mykey> ein. (EINGABETASTE, wenn Passwort dasselbe wie für Keystore):
Überprüfung mit:
keytool -list -v -keystore mykeystore
Konfiguriere jetzt den Port 443. Schalte den unverschlüsselten Port 8080 ab !:
#cd /usr/share/tomcat6/conf cd /etc/tomcat6 mcedit /etc/tomcat6/server.xml #ab Zeile 71 auskommentieren: <!-- <Connector port="8080" protocol="HTTP/1.1" ... redirectPort="443" /> --> #ab Zeile 87 so konfigurieren/entkommentieren: <Connector port="443" protocol="HTTP/1.1" SSLEnabled="true" ... keystoreFile="/etc/tomcat6/.keystore" keystorePass="meinPasswort" />
Anschließend muss dem Dienst erlaubt werden, einen niedrigen Port (kleiner 1024) zu benutzen:
mcedit /etc/default/tomcat6 #Zeile 45 AUTHBIND=yes
Anschließend braucht es nur noch einen Neustart:
/etc/init.d/tomcat6 restart
Jetzt sollte der Trackserver unter https://meinserver/track erreichbar sein.
mkdir /sicherung
/etc/init.d/tomcat6 stop
/etc/init.d/mysql stop
tar czvf /sicherung/sich_`date +%y%m%d`.tar.gz /etc /var/lib/mysql /usr/share/tomcat6 /var/lib/tomcat6
cp -av /var/lib/tomcat6/webapps/track/WEB-INF/Torque.properties /sicherung/
cp -av /var/lib/tomcat6/webapps/track/favicon.gif /sicherung/
cp -av /var/lib/tomcat6/webapps/track/design/classic/logo.gif /sicherung/
cp -av /var/lib/tomcat6/webapps/track/design/classic/icons/track-logo.jpg /sicherung/
cp -avr /var/lib/tomcat6/webapps/track/anhaenge /sicherung/
systemctl stop tomcat8 systemctl disable tomcat8 apt-get install tomcat9 Datei /var/lib/tomcat9/conf/server.xml ändern: ... <Connector port="8009" protocol=AJP/1.3" secretRequired="false" RedirectPort="8080"/> Datei /var/lib/tomcat9/conf/context.xml ändern: ... <Resources cacheMaxSize="51200" /> </Context> Datei /etc/default/tomcat9 ändern: JAVAOPTS=" ... -DTRACKPLUS_HOME=/daten/trackplus" chown -R tomcat:tomcat /daten/trackplus chown -R tomcat:tomcat /daten/index cp irgendwo/allegra750b24.war /var/lib/tomcat9/webapps/allegra.war systemctl enable tomcat9 systemctl start tomcat9 tail -f /var/log/tomcat9/catalina.out
dann Webseite testen ..
apt-get remove tomcat8 apt-get autoremove
—-
Ich will die Verwaltung von Track plus an den Benutzer trackpadm
so übertragen, dass er nicht gleich volle ROOT-rechte benötigt.
Er soll in der Lage sein Tomcat6, Mysql zu stoppen und zu starten sowie Trackp-updates installieren können.
zuerst wird das Paket SUDO
nachinstalliert:
apt-get install sudo mc
danach wird ein neuer Benutzer trackpadm
angelegt und dann in die benötigten Gruppen mysql
und tomcat6
eingefügt:
useradd trackpadm password:(hier 2x mal neuses Passwort setzen) usermod -aG mysql trackpadm usermod -aG tomcat6 trackpadm #jetzt prüfen mit: id trackpadm
jetzt muss den Gruppen das sudo-Recht zugewiesen werden. D.h. z.B. alle Mitglieder der Gruppe mysql
können die freigegebenen Befehle
/etc/init.d/mysql
und /usr/bin/mysql*
ausführen:
mcedit /etc/sudoers ... %mysql ALL=/etc/init.d/mysql, /usr/bin/mysql* %tomcat6 ALL=/etc/init.d/tomcat6, /usr/share/tomcat6/bin/shutdown.sh, /usr/share/tomcat6/bin/startup.sh ...
jetzt kann sich der Benutzer trackpadm
anmelden und versuchen die freigegebenen Befehle auszuführen.
sudo /etc/init.d/tomcat6 stop password for trackpadm: sudo /etc/init.d/mysql stop sudo /etc/init.d/tomcat6 start sudo /etc/init.d/mysql start
Fehlerlogs:
cat /var/lib/tomcat6/logs/catalina.2012-03-19.log
Fehler:
der Benutzer trackpadm hat kein Homeverzeichnis.
Behebung:
siehe dazu: Pluggable Authentication Module
Fehler in:
/var/lib/tomcat6/logs/catalina.log:
SCHWERWIEGEND: Exception Processing ErrorPage[errorCode=500, location=/errorForward.jsp] java.lang.OutOfMemoryError: PermGen space
Behebung: durch JAVA_OPTS-Eintrag in /etc/default/tomcat6:
... JAVA_OPTS="-Djava.awt.headless=true -XX:PermSize=256M -XX:MaxPermSize=384M -Xms384M -Xmx384m -Xss64K -XX:+UseConcMarkSweepGC" #oder in /etc/default/tomcat5 #JAVA_OPTS="-Djava.awt.headless=true -Xms512M -Xmx512M -Xmn256M" ...
und Neustart des Tomcat6-Dienstes.
das Script (trackwaechter.sh
) per cronjob alle 10 Minuten von 7-22 Uhr ausführen :
*/10 7-22 * * * /pfad/zu/trackwaechter.sh >/dev/null
#!/bin/sh wget -qO- http://meinTrackServer:8080/track/ >/dev/null f=$? if [ ! $f -eq 0 ]; then echo https://meinTrackServer/ | mail -s Trackplusfehler admin@domain.de /etc/init.d/tomcat6 stop /etc/init.d/mysql restart /etc/init.d/tomcat6 start # echo $f returnwert fi