Apache HTTP + Tomcat + HTTPS (SSL/TLS)

ApacheTomcatSSL

I often have to deploy my JAVA application to tomcat with HTTPS communication. There is simple step-by-step guide.

Prerequisites

  • Linux machine (Ubuntu 14.04 in my case)
  • Installed and working Apache 2 HTTP server (http://localhost:80/ works in your browser)
  • Installed Tomcat 7 server (http://localhost:8080/ works in your browser)
  • Installed Oracle JAVA (JDK)

What we will do in the guide ?

  • Generate self-signed certificate for server
  • Install self-signed certificate to Apache
  • Configure AJP connection between Apache and Tomcat at URL (https://localhost)

Read More

Instalace JBoss AS 5.1 na Fedora Core 13

Instalace Java JDK

Stáhněte instalační soubor

– Balíček RPM.BIN (npř: jdk-6u20-linux-i586-rpm.bin) můžete stáhnout z této url: http://java.sun.com/javase/downloads/index.jsp.
Poznámka: Přihlašovací obrazovku můžete přeskočit.

Instalace

– Spusťte terminál a přihlašte se jako root

su -

– Změňte aktuální adresář (např: /tmp) a udělejte JDK binary spustitelný

cd /tmp
chmod +x jdk-6u21-linux-i586-rpm.bin

– Spusťte instalaci

./jdk-6u21-linux-i586-rpm.bin

– Nainstalujte novou SUN java, javac, javaws and libjavaplugin.so (pro Firefox/Mozilla) pomocí příkazu alternatives

alternatives --install /usr/bin/java java /usr/java/jdk1.6.0_21/jre/bin/java 20000
alternatives --install /usr/bin/javaws javaws /usr/java/jdk1.6.0_21/jre/bin/javaws 20000
alternatives --install /usr/lib/mozilla/plugins/libjavaplugin.so libjavaplugin.so /usr/java/jdk1.6.0_21/jre/lib/i386/libnpjp2.so 20000
alternatives --install /usr/bin/javac javac /usr/java/jdk1.6.0_21/bin/javac 20000

Nastavení JAVA_HOME proměnné

Vytvořte skript java.sh

cat <<EOF>> /etc/profile.d/java.sh
export JAVA_HOME=/usr/java/jdk1.6.0_21/jre
export PATH=\$JAVA_HOME/bin:\$PATH
EOF
source /etc/profile.d/java.sh

Zkontrolujte vaší instalaci javy

– Ověřte si verzi java, javac, javaws a libjavaplugin.so
Příkaz:

java -version

Výstup:

java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b06)
Java HotSpot(TM) Client VM (build 17.0-b16, mixed mode, sharing)

Příkaz:

javac -version

Výstup:

javac 1.6.0_21

Příkaz:

javaws

Výstup:

Java(TM) Web Start 1.6.0_21 
...

– Javu ve firefox můžete zkontrolovar tím že zadáte do address baru následující url:

about:plugins

– Na stránce by jste měli najít následující text:

Java(TM) Plug-in 1.6.0_21

    File: libnpjp2.so
    Version: 
    The next generation Java plug-in for Mozilla browsers.
...

– Java plugin můžete zkontrolovat také na této stránce: http://www.java.com/en/download/installed.jsp.

Instalace Apache-ant

Stažení instalačního souboru

– Stáhněte si balíček TAR.GZ z této url: http://ant.apache.org/bindownload.cgi.

Instalace

– Spusťte terminál a přihlašte se jako root

su -

– Běžte do složky “/usr/local”

cd /usr/local

– Rozbalte stažený balíček TAR.GZ

tar xvzf /PathToDownloadsDirectory/apache-ant-1.8.1-bin.tar.gz

Nastavení ANT_HOME proměnné

Vytvořte skript apache-ant.sh

cat <<EOF>> /etc/profile.d/apache-ant.sh
export ANT_HOME=/usr/local/apache-ant-1.8.1
export PATH=$PATH:$ANT_HOME/bin
EOF
source /etc/profile.d/apache-ant.sh

Link na ANT

Vytvořte link na ant do /usr/bin

ln -s /usr/local/apache-ant-1.8.1/bin/ant /usr/bin/ant

Instalace JBoss AS 5.1

Stažení instalačního souboru

– Stáhněte si ZIP balíček z této url: http://jboss.org/jbossas/downloads/.
Poznámka: Stáhněte si verzi připravenou pro JDK6 (e.g: jboss-5.1.0.GA-jdk6.zip), protože máme Java JDK6 nainstalovanou.

Instalace

– Spusťte terminál a přihlašte se jako root

su -

– Bžte do složky “/usr/local”

cd /usr/local

– Rozbalte ZIP balíček

unzip /PathToDownloadsDirectory/jboss-5.1.0.GA-jdk6.zip

Nastavení JBOSS_HOME proměnné

Vytvořte skript jboss.sh

cat <<EOF>> /etc/profile.d/jboss.sh
export JBOSS_HOME=/usr/local/jboss-5.1.0.GA
export PATH=$PATH:$JBOSS_HOME/bin
EOF
source /etc/profile.d/jboss.sh

Nastavení přístupových práv

– Aby mohl JBoss spouštět i jiný uživatel než root, musíte nastavit správná oprávnění ma jednotlivých konfiguračních adresářích JBoss. Ty se nachází ve složce “/usr/local/jboss-5.1.0.GA/server/”.
– My chceme aby všechny konfigurace JBoss mohli spouštět uživatelé ze skupiny “jboss” (tuto skupinu musíme mít již vytvořenou)
– Spusťte terminál a přihlašte se jako root

su -

– Nastavte vlastníka složky s instalací JBoss (např: uživatel jboss_user)

chown jboss_user /usr/local/jboss-5.1.0.GA/ -R

– Nyní mohou spouštět server JBoss všichni členové skupiny “jboss”

Test instalace

Spuštění JBoss

– Otevřete terminál a spusťte JBoss

/usr/local/jboss-5.1.0.GA/bin/run.sh

– Buďte trpělivý, JBoss na mém počítači startuje více jak 1,5 minuty.
Výstup:


=========================================================================

  JBoss Bootstrap Environment

  JBOSS_HOME: /usr/local/jboss-5.1.0.GA

  JAVA: /usr/java/jdk1.6.0_21/jre/bin/java

  JAVA_OPTS: -Dprogram.name=run.sh -server -Xms128m -Xmx512m -XX:MaxPermSize=256m -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djava.net.preferIPv4Stack=true

  CLASSPATH: /usr/local/jboss-5.1.0.GA/bin/run.jar

=========================================================================

07:56:12,461 INFO  [ServerImpl] Starting JBoss (Microcontainer)...
07:56:12,463 INFO  [ServerImpl] Release ID: JBoss [The Oracle] 5.1.0.GA (build: SVNTag=JBoss_5_1_0_GA date=200905221634)
...

07:59:03,045 INFO  [ServerImpl] JBoss (Microcontainer) [5.1.0.GA (build: SVNTag=JBoss_5_1_0_GA date=200905221634)] Started in 1m:37s:243ms

– Ve výpisu by neměl být jediný ERROR ale jen INFO zprávy, poslední řádek by měl být podobný jako vidíte v mém výpisu.

Otevření stránky JBoss v prohlížeči

– Spusťte internetový prohlížeč a zadejte do něj adresu:

http://localhost:8080

– Měla by se objevit úvodní stránka JBoss

OpenSUSE 11.1 – Subversion server + Apache2

Pokud chete nainstalovat subversion server a vytvorit si vlastni repozitář v OpenSUSE 11.1, tak je tato stránka určená právě Vám.

Obsah:

  1. Instalace subversion serveru
  2. Vytvoření nového repozitáře a dokončení instalace


Instalace subversion serveru

Top
  1. Nejdříve musíme nainstalovat subversion a apache2 balíčky.
    Spusťte trerminál a v něm příkaz:
    sudo /sbin/yast -i subversion-server subversion apache2 apache2-doc apache2-prefork libapr1 libapr-util1 neon
  2. Zapneme webdav a webdav-svn moduly v konfiguraci apache. To nám umožní procházet repozitáře SVN pomocí prohlížeče. Spusťte následující příkazy:
    sudo a2enmod dav
    sudo a2enmod dav_svn
  3. Nyní musíme vytvořit skupinu a uživatele svn, který bude mít právo pracovat se složkou SVN. Spusťte tyto příkazy:
    sudo groupadd -r svn
    sudo useradd -r -g svn -d /srv/svn -s /bin/false svn
  4. Je čas vytvořit složku kde budou uloženy vaše soubory které pošlete do SVN serveru. Cestu si můžete vybrat libovolně, já jsem zvolil “/home/SVN”
    sudo mkdir -p /home/SVN
  5. Modifikujeme konfigurační soubor “/etc/apache2/conf.d/subversion.conf”. Osobně používám editor nano, samozřejmě můžete použít libovolný editor. (pokud chcete použít nano a nemáte jej nainstalovaný spusťte příkaz sudo /sbin/yast -i nano)
    sudo nano /etc/apache2/conf.d/subversion.conf
  6. Modifikujte soubor tak aby měl nastavené parametry jako ukázka dole. Já jsem postupoval tak, že jsem celý obsah smazal a vložit nový. Nezapomeňte změnit položky “” a “SVNParentPath /home/SVN”.
    # Repository with URL http://your_url/svn
    # Free read access restricted commit access

    DAV svn
    SVNParentPath /home/SVN
    SVNListParentPath On
    # Limit write permission to list of valid users.

    # Require SSL connection for password protection.
    # SSLRequireSSL
    AuthType Basic
    # Message to give to the committer
    AuthName “Write access requires a password”
    # File listing users with write (commit) access
    AuthUserFile /srv/svn/user_access/svn_passwdfile
    Require valid-user

  7. Nyní vytvořím soubor, kde budou uložena hesla pro přístup do SVN. Spusťte příkazy:
    sudo mkdir /srv/svn
    sudo mkdir /srv/svn/user_access
    sudo touch /srv/svn/user_access/svn_passwdfile
    sudo chown root:www /srv/svn/user_access/svn_passwdfile
    sudo chmod 640 /srv/svn/user_access/svn_passwdfile
  8. Nového uživatele přidáte tímto příkazem. Budete vyzvání k zadání jeho hesla. (změňte slovo “user_name” za reálné jméno uživatele)
    sudo htpasswd2 /srv/svn/user_access/svn_passwdfile user_name
  9. Restartujte apache server.
    sudo rcapache2 restart


Vytvoření nového repozitáře a dokončení instalace

Top
  1. Vytvořte repozitář příkazem (modifikujte cestu “/home/SVN/myNewProject” na cestu k vaší subversion složce, kterou jste si vytvořili v předchozím postupu)
    sudo svnadmin create /home/SVN/myNewProject
  2. Modifikujte oprávnění složky, kterou jsme právě vytvořili.

    sudo chown -R wwwrun:www /home/SVN/myNewProject{db,locks}
    sudo chown wwwrun:www /home/SVN/myNewProject