Saturday , 19 August 2017
Home » Tutorial » Instalasi SPSE Versi 4 Latihan Dengan CentOS 6.7
Instalasi SPSE Versi 4 Latihan Dengan CentOS 6.7

Instalasi SPSE Versi 4 Latihan Dengan CentOS 6.7

Dibaca : 9258

Saya asumsikan Anda sudah melakukan instalasi CentOS 6.7 dengan konfigurasi IP yang terkoneksi internet dan sourcecode spse4 yang dapat Anda peroleh di LKPP.
Silahkan login ke server.

cd /usr/local/src/

yum update
yum install nano
rpm -ivh epel-release-6-8.noarch.rpm
yum update
yum -y install psmisc httpd-devel gcc-c++ pcre-devel libxml2-devel httpd postgresql-server make mod_security mod_evasive unzip rsync lynx elinks vim tcptraceroute nmap htop lshw iperf httperf pktstat

mkdir /home/appserv
mv epns-lat-36sp2 /home/appserv/
mv spse-lat-4 /home/appserv/

mkdir /home/file
mkdir /home/file/file_latihan
mkdir /home/file/file_prod

#/etc/init.d/postgresql initdb
#/etc/init.d/postgresql start
#chkconfig postgresql on
#chkconfig httpd on
#unzip apache2-centos.zip
#cat settingapache.txt | cat >> /etc/httpd/conf/httpd.conf

#tar -xzvf modsecurity265.tar.gz
#cd /usr/local/src/modsecurity265/curl-7.28.1/
#./configure
#make
#make install

#cd ../modsecurity-apache_2.6.5/
#./configure --with-apxs=/usr/sbin/apxs
#make
#make install

#cd ../
#cat additional_rule_mod_security.conf | cat >> /etc/httpd/conf/httpd.conf

#cd ../

#/etc/init.d/iptables stop
#chkconfig iptables off
#sed -i "s/enforcing/disabled/g" /etc/selinux/config
#tar -xzvf jdk-8u60-linux-x64.tar.gzip
#mv jdk1.8.0_60 jdk1.8.0
#unzip jce_policy-8.zip
#cp -vr UnlimitedJCEPolicyJDK8/* jdk1.8.0/jre/lib/security

overwrite pilih y –> enter

su postgres
psql

CREATE USER epns password 'epns';

\q

createdb -U postgres -O epns epns_latihan ;

psql -U postgres -d epns_latihan -f epns_lat-spse4.sql

exit

# nano /var/lib/pgsql/data/pg_hba.conf
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
# IPv6 local connections:
host all all ::1/128 trust

/etc/init.d/postgresql restart

#hostname appservlpse

#nano /etc/hosts

tambahkan 127.0.0.1 appservlpse

nano /etc/httpd/conf/httpd.conf

beri tanda coment (#)
#LoadModule jk_module modules/mod_jk.so

rubah epns-lat dengan inisial 35 menjadi 36sp2
rubah epns-prod dengan inisial 35 menjadi spse-lat-4

Alias /latihan /home/appserv/epns-lat-36sp2
Alias /eproc4lat /home/appserv/spse-lat-4

AllowOverride None
Order deny,allow
deny from all

beri tanda # untuk baris yang menggunakan inisial JK

#JkWorkersFile /etc/httpd/workers.properties
#JkLogFile /var/log/httpd/mod_jk.log
#JkLogLevel error
#JkLogStampFormat “[%a %b %d %H:%M:%S %Y] ”

#JkMount /latihan* worker1
#JkMount /eproc* worker2
#JkMountCopy All

kemudian tambahakan/input comand diatas baris JKWorkers

ProxyRequests Off
ProxyVia Off
Proxytimeout 600

ProxyPass /latihan http://localhost:8080/latihan
ProxypassReverse /latihan http://localhost:8080/latihan

ProxyPass /eproc4lat http://localhost:9090/eproc4lat
ProxypassReverse /eproc4lat http://localhost:9090/eproc4lat

edit redirect match

RedirectMatch ^/$ /eproc4lat/
RedirectMatch ^/latihan$ /latihan/

tambahkan baris paling bawah :

Servername appservlpse

unzip play-1.3.3-prod.zip

nano /home/appserv/epns-lat-36sp2/spse3

sesuaikan :

JAVA_HOME=/usr/local/src/jdk1.8.0
APP_HOME=/home/appserv/epns-lat-36sp2
PORT =8080
CONTEXT =/latihan

nano /home/appserv/epns-lat-36sp2/webapp/WEB-INF/classes/application.properties

sesuaikan :

jdbc.url=jdbc:postgresql://localhost/epns_latihan

nano /home/appserv/spse-lat-4/spse4

sesuaikan :

JAVA_HOME=/usr/local/src/jdk1.8.0
APP_HOME=/home/appserv/spse-lat-4
PLAY_HOME=/usr/local/src/play-1.3.3
PLAY_VERSION=play-1.3.3
PORT=9090

nano /home/appserv/spse-lat-4/conf/application.conf

sesuaikan :

http.port=9090
spse3.url=http://ip-server/latihan

chmod 755 /home/appserv/epns-lat-36sp2/spse3
chmod 755 /home/appserv/spse-lat-4/spse4
/etc/init.d/httpd restart

bila failed ===> coba reboot untuk mendisable SElinux dan ulangi start httpd

/usr/sbin/setsebool httpd_can_network_connect 1

jalankan spse36sp2 :

cd /home/appserv/epns-lat-36sp2/
./spse3 start

netstat -tulpn | grep java
netstat -tulpn | grep httpd

jalankan spse4latihan :

cd /home/appserv/spse-4-lat/
./spse4 start

MENGATASI ERROR DI SPSE 4 LATIHAN

1.  GAGAL BUAT SLIDER DAN BANNER

Tambahkan di databasenya :

su postgres

psql

\connect epns_latihan;

CREATE SEQUENCE seq_konten_multimedia
 INCREMENT 1
 MINVALUE 0
 MAXVALUE 9223372036854775807
 START 4
 CACHE 1;

ALTER TABLE seq_konten_multimedia
 OWNER TO epns;

2.  MENGATASI USER TIDAK BISA LOGOUT

nano /etc/httpd/conf/httpd.conf

Cari kata ini :

SecRule REQUEST_BODY "!^[\x20-\x7f]+$" "id:1234582"

Kasih tanda # (disable) sehingga menjadi :

#SecRule REQUEST_BODY "!^[\x20-\x7f]+$" "id:1234582"

3.  MENGATASI PENYEDIA TIDAK BISA UPLOAD DOKUMEN PENAWARAN MELALUI APENDO 4.1.1

nano /etc/httpd/conf.d/mod_security.conf

Cari kata ini :

 SecRule REQBODY_ERROR "!@eq 0" \
 "id:'200001', phase:2,t:none,log,deny,status:400,msg:'Failed to parse request body.',logdata:'%{reqbody_error_msg}',severity:2"
 SecRule MULTIPART_STRICT_ERROR "!@eq 0" \
 "id:'200002',phase:2,t:none,log,deny,status:44,msg:'Multipart request body \

Kasih tanda # (disable) sehingga menjadi :

 #SecRule REQBODY_ERROR "!@eq 0" \
 "id:'200001', phase:2,t:none,log,deny,status:400,msg:'Failed to parse request body.',logdata:'%{reqbody_error_msg}',severity:2"
 #SecRule MULTIPART_STRICT_ERROR "!@eq 0" \
 "id:'200002',phase:2,t:none,log,deny,status:44,msg:'Multipart request body \

agar spse36sp2 start otomatis pada saat boot :

nano /etc/rc.local

rm -rf /home/appserv/epns-lat-36sp2/server.pid
/home/appserv/epns-lat-36sp2/spse3 start
sleep 60
rm -rf /home/appserv/spse-4-lat/server.pid
/home/appserv/spse-4-lat/spse4 start

reboot server
SELAMAT BELAJAR, UNTUK PENGADAAN BARANG/JASA YANG BERSIH DAN KREDIBEL
SELESAI

Special Thanks to Mr. Agus Nur Rahman LPSE Kab. Barito Selatan

8 comments

  1. Karena saya memakai tulisan ini untuk pembanding memindahkan server LPSE 3.6 (belum SP2) dari Debian 6 ke Debian 8, jadi saya beri catatan update yang saya lakukan.

    – Install minimum Debian 8 (menggunakan NetInstall CD, hilangkan semua pilihan paket kecuali openssh-server) –> caranya bisa di-google

    – Install tmux, rsync (kebutuhan standar untuk administrasi jarak jauh) shorewall (sebagai firewall) dan fail2ban (pengamanan tambahan)
    # apt-get install tmux rsync shorewall fail2ban

    – untuk SPSE versi 3.6 harus menggunakan openJDK 8 (saya sempat mentok gara-gara tomcat7 secara otomatis menginstall openJDK7, setelah melacak log baru ketahuan kalau salah versi). Karena tomcat jalan sebagai daemon jadi tidak perlu mod_jk; tomcat akan reverse-proxy oleh apache
    Jadi install paket berikut:
    #apt-get install openjdk-8-jre-headless postgresql tomcat7 apache2 libapache2-mod-evasive libapache2-mod-security2

    – buat user database (sama dengan di tulisan atas)

    – Karena debian 6 masih menggunakan postgresql 8.4 sementara di debian 8 sudah potgresql 9.4, memindah data base dengan pg_restore akan timbul masalah, jadi kembali ke cara ‘bar-bar’:

    >> di server lama <<>> Dumping ” ${db} “<< /srv/backup/`date ‘+%Y%m%d’`-${db}.sql.gz
    done

    DB spse versi lama juga ikut dipindah sebagai audit trail.

    – RSync hasil backup ke server baru, lalu restore dengan:
    >> di server baru <>> Restoring ” ${db} “<<<";
    dropdb ${db};
    createdb –owner=epns ${db};
    gunzip -c /srv/backup/`date '+%Y%m%d'`-${db}.sql.gz | psql ${db}
    done

    – Jangan lupa RSync file_prod
    # rsync -avu –progres :/srv/file /srv/file

    – Diserver lama tomcat diinstall manual dan dijalankan melalui rc.local, sementara di server baru daemon tomcat berjalan di user tomcat7, jadi directory file perlu berganti owner:
    #chown -R tomcat7:tomcat7 /srv/file

    – buat file eproc.xml di directory /etc/tomcat7/Catalina/localhost/ dengan isi:

    WEB-INF/web.xml

    – restart tomcat7
    # systemctl restart tomcat 7.

    – Sisanya tinggal buat proxy di apache ke localhost:8080 , setting firewall untuk blok semua port kecuali 80, 443 dan 22; dan bila perlu setting LetsEncrypt untuk pengamanan SSL.

    • Hmmm, perintah script bash yang saya taruh di komen di atas secara otomatis terfilter jadi ada beberapa perintah yang berantakan ( misal perintah F O R )

    • isi file /etc/tomcat7/Catalina/localhost/eproc.xml

      WEB-INF/web.xml

  2. kalau muncul error 503 Service Temporarily Unavailable gimana mengatasinya ya?

    habis mati listrik dan server off beberapa jam, pas nyala muncul pesan tsb., server udah di restart beberapa kali tapi masih juga muncul 503 Service Temporarily Unavailable.

    spse udah upgrade ke versi 4.

  3. aplikasinya download dimana ya?

Leave a Reply

Your email address will not be published. Required fields are marked *

*