Feeds:
Posts
Comments

Lupa posting yang sudah dibuat dari taon 2015 desember kemaren …:mrgreen:

IBM Domino Linux installation notes in ubuntu server 14.04 and fedora 20 on Qubes-OS

Install error:

unix-shell> sudo -s
root@unix-shell> useradd -U notes

root@unix-shell> ./install

Sesudah diinstall, belum bisa dipakai tuh IBM Domino nya, kudu disetup dulu :

Running listener

Login as “notes” user

notes@unix-shell> cd /local/notesdata
notes@unix-shell> /opt/ibm/domino/bin/server -listen <8585>   # default port

Ubuntu server lakukan dibawah ini, Fedora tidak perlu

Login as ordinary user

Condition: install X system with minimize system

unix-shell> sudo apt-get install xinit

Run the minimize X system

unix-shell> startx

on Console :

notes@unix-shell-X-Console> cd /lotal/notesdata
notes@unix-shell-X-Console> /opt/ibm/domino/bin/server -remote

gak tahu kenapa saya harus menekan enter sebanyak 5x baru jalan

fill the ibm domino server IP and keep port with default 8585 then login .. tadaaa

Sebelum itu kudu di edit dulu di file “server” scriptnya (khusus buat ubuntu server, no need kalau pakai fedora 20)

cari

#
# backup notes.ini for server
#

dan comment yang dibawah nya

# from=”${NotesIniFile}”
# to=”${NotesIniFile}.1″
# [ -f “$to” ] && $Chmod u+w “${NotesIniFile}.1” >/dev/null 2>&1
# $Cp -p “$from” “$to” >/dev/null 2>&1
# if [ $? -ne 0 ]; then
#     #!!!
#     echo “Could not backup notes.ini”
#     exit 1
# fi

Fedora 20, lakukan remote setup dari client

 

IBM Domino Error Message:

INSTALLATION-ERROR:

Preparing Java(tm) Virual Machine…
Error writing file = Ther may not be enough temporary disk space. Try using -is:tempdir to use a temporary directory on a partition with more disk space.

SOLUTION:

1. Buat temporary directory yang berbeda dengan partisi /tmp

~] mkdir /tempe

2. Jalankan install dengan mode penunjukkan ke temp directory yang sudah kita buat di point 1

~user@domino/linux64] ./install -is:tempdir /tempe

 

RUNNING-SERVER-ERROR:

WARNING: The maximum number of file handles (ulimit -n) allowed for Domino is 4096.

SOLUTION:

1. Domino start dari login session

edit with root privilege:

Domino-server-shell> cd /etc/security
Domino-server-shell> sudo nano limits.conf

add the following entries:

domsrvr  soft  nofiles  60000
domsrvr  hard  nofiles  80000

save the file dan exit

langkah selanjutnya adalah mengaktifkan limit tersebut yaitu menambahkan entry sebagai berikut dari pam.d

session    required    /lib/security/pam_limits.so

kalau login dari :

ssh: statement diatas harus ada di /etc/pam.d/sshd
telnet: statement diatas harus ada di /etc/pam.d/login
rlogin: statement diatas harus ada di /etc/pam.d/rlogin

hati – hati dengan system 64-bit, kemungkinan perintah diatas tidak akan aktif, solusinya ?

khusus 64-bit OS:

session    required    /lib64/security/pam_limits.so

atau untuk lebih luwes adalah :

session    required    pam_limits.so

jadi statement diatas membiarkan operating system mencari pam_limits.so yang proper dengan mesin nya.

2. Domino automatically start dari /etc/init.d

masukkan script dibawah ini di file init.d

ulimit -n 20000

untuk lebih enak nya edit file /etc/security/limits.conf dan diisikan paling bawah :

@notes    soft    nproc     60000
@notes    hard    nproc    80000
@notes    soft    nofile    60000
@notes    hard    nofile    80000

khusus dari Qubes:

lakukan perubahan diatas di templateVM dan tidak perlu di appVM

 

IBM Domino opening ports:

Akses dari Luar

Untuk diakses dari luar, harus dilakukan port forwarding terlebih dahulu :

dari netVM open terminal:

netVM-shell> ifconfig | grep -i cast

yang diperlukan disini adalah melakukan port forwarding dari ethernet card biasanya eth0, dan tidak perlu dari internal card biasanya vif*

netVM-shell> sudo iptables -t nat -A PREROUTING -i eth0 -p tcp -m multiport –dports 80,1352 -d <<IP eth0>> -j DNAT –to-destination <<IP firewall>>
netVM-shell> sudo iptables -I FORWARD 2 -i eth0 -d <<IP firewall>> -p tcp -m multiport –dports 80.1352 -m conntrack –ctstate NEW -j ACCEPT

untuk setiap saat diload, masukkan iptables instruksi tersebut ke file rc.local dan save (oops, jangan lupa di first line #!/bin/bash yah:mrgreen: ). Dan do

netVM-shell> sudo chmod +x rc.local

Akses di setiap appVM

Untuk bisa diakses dari luar maupun dari internal appVM.

Jangan lupa karena Qubes menggunakan method security by isolation, so setiap appVM tidak bisa seenaknya berkomunikasi, semua jalur network ditutup kecuali ke internet (kalau ada internetnya — haree gene gak punya akses internet ..:mrgreen: ).

Nah, sekarang bagaimana untuk dilakukan komunikasi dari luar VM terutama untuk Domino dan Notes operation ? jawabannya sudah diberikan diatas Communication between appVM.

Tinggal lakukan opening ports menggunakan iptables di firewallVM:

firewallVM-shell> cd /rw/config
firewallVM-shell> sudo nano qubes_firewall_user_script

isikan :

#!/bin/bash

iptables -t nat -A PREROUTING -p tcp -d <IP firewallVM> -m multiport –dports 25,389,443,1352,1520,1533,8008,8080,8642,8585,8090,9043,9060,9081,9444 -j DNAT –to-destination <IP IBM Domino Server>
iptables -I FORWARD 2 -i eth0 -s <IP Luar> -d <IP IBM Domino Server> -p tcp -m multiport –dports 25,389,443,1352,1520,1533,8008,8080,8642,8585,8090,9043,9060,9081,9444 -m conntrack –ctstate NEW -j ACCEPT

atau open from anyhere (khusus inter-appVM saja):

#!/bin/bash

iptables -I FORWARD 2 -d <<IP IBM Domino Server> -p tcp -m multiport –dports <<sama seperti diatas>> -j ACCEPT

save the files. ganti menjadi mode execution

firewallVM-shell> chmod +x qubes_firewall_user_script

perintah diatas digunakan untuk setiap kali appVM running, langsung otomatis di load oleh system.

Tapi jangan lupa juga, itu disisi firewall, kalau untuk di server notesnya supaya bisa accept dari appVM lain :

appVM-Notes-Server> cd /etc/sysconfig

isikan di rc.local

iptables -I INPUT 5 <<src_address>> -j ACCEPT

then save.

Last Step

Setelah step diatas dilakukan semua, sekarang tinggal menjalankan IBM Domino Server tersebut

Ubuntu server, login pakai notes user

ubuntu-shell> cd /local/notesdata
ubuntu-shell> /opt/ibm/domino/bin/server -listen

Fedora (kalau menggunakan template, harus invoke user ke notes user, tidak boleh menggunakan ordinary user — saya tidak akan menjelaskan mengapa, kudu RTFM ya biar pinter:mrgreen: )

dom0-shell> qvm-run -u notes fedora-NotesServer gnome-terminal

dipoisisi fedora-NotesServer yang sudah terbuka gnome-terminal nya, lakukan perintah dibawah ini (as notes user):

fedora-NotesServer> cd /local/notesdata
fedora-NtoesServer> /opt/ibm/domino/bin/server -listen

Trouble shooting: Ubuntu Server

Kalau server Ubuntu, bagaimana untuk melihat port yang aktif ?

~] netstat -ntlp | grep LISTEN

Ada error :

ERROR bindsock’ helper application is executable, not setuid root, or no sticky bit set

di server Notes, bagaimana cara perbaikinya ?

1. Goto $IBM_DOMINO_HOME

2. do in shell:

~root] chmod +s bindsock

Salam,
Man’z
:mrgreen:

 

SQL jilid 2016

Selamat pagi menuju siang dan makan nasi disiang hari …

Sederhana tapi lumayan …😀

Tergelitik sedikit dari seorang teman yang memposting di medsos untuk hanya menjumlahkan beberapa baris saja dengan kumpulan data dibawah ini :

13782035_10154762010673912_3683660849283429470_n
Ternyata ini SQL membuat saya tertantang untuk membuatnya, dan inilah step nya:

  1. Kita lihat dulu total data yang ada seperti dibawah ini
    Screen Shot 2016-08-01 at 12.45.41 PM
  2. Kemudian, saya pikirkan gimana caranya untuk mendapatkan kriteria yang dimaksud, dalam hal ini ‘Aktiva’, berikut SQL nya:
    Screen Shot 2016-08-01 at 12.46.32 PM
  3. Coba dilihat data tersebut ada sub-detail dari Bank, jadi saya harus mengambil data Bank nya:
    Screen Shot 2016-08-01 at 12.47.52 PM
  4. Karena langkah ke-2 menghasilkan query beberapa row, tapi ini dijadikan acuan untuk mengambil data Bank dengan menggunakan fungsi IN pada WHERE condition, SQL:
    Screen Shot 2016-08-01 at 12.48.37 PM
  5. Gabungkan langkah ke-2 dan langkah ke-4
    Screen Shot 2016-08-01 at 12.49.22 PM
  6. Tujuan utama untuk menjumlahkan semua record yang bersifat ‘Aktiva’ dalam hal ini, maka saya buatkan kembali query sum untuk sub-query nya, SQL nya :
    Screen Shot 2016-07-29 at 2.43.02 PM

Itu saja dulu.

Kalau di embed ke stored procedure atau ke query apapun, lebih baik kriteria dimasukkan sebagai parameter saja, agar mudah jika dilakukan perubahan.

Semoga bermanfaat!

Cheers,
😎
Man’z

Selamat siang all,

Lagi dan lagi, yuk kita nulis dikit, daripada lupa ..:mrgreen:

Kali ini kita bahas step by step Apache2, SVN Server, dan WebSVN (Authenticated) yang jelas di Ubuntu Server.

Jangan lupa act as a root

A. Installation

Install apache2 dan teman teman:

root@myserver:/# apt-get install apache2
root@myserver:/# apt-get install subversion libapache2-svn

Create home svn and repo if you want:

root@myserver:/# mkdir /home/svn
root@myserver:/# mkdir /home/svn/myrepo

Create SVN repository dan ubah owner dan permission-nya:

root@myserver:/# svnadmin create /home/svn/myrepo
root@myserver:/# chown -R www-data:subversion /home/svn/myrepo
root@myserver:/# chmod -R g+rws myrepo

Ubah dulu subversion config yang ada di /home/svn/myrepo:

root@myserver:/# pico /home/svn/myrepo

ganti bagian menjadi:

anon-access = none
auth-access = write
password-db = passwd
realm = My Repository

tekan Ctrl-O dan Ctrl-X untuk menyimpan dan keluar dari pico editor.

sudah itu selesai bagian svn access pake console, bisa dicobain:

root@myserver:/mydir# svn co file://home/svn/myrepo

Download dan extract WebSVN dari http://websvn.info/download.
Setelah di download, lakukan extract package tersebut

root@myserver:/mydir# tar -xvf websvn-(version).tar.gz

pindahkan ke www/html directory

root@myserver:/mydir# mv websvn-(version) /var/www/html/websvn

B. Server Booting

Jangan lupa agar setiap server booting selalu load svnservernya:

root@myserver:/# touch /etc/init.d/svnserve
root@myserver:/# pico /etc/init.d/svnserve

dan isikan :

sudo svnserve -d -r /home/svn/myrepo

tekan Ctrl-O dan Ctrl-X

ubah security agar bisa menjadi executable:

root@myserver:/# chmod +x /etc/init.d/svnserve

update di rc.d agar bisa selalu load pada saat booting:

root@myserver:/# update-rc.d svnserve defaults

C. Config with WebDAV dan WebSVN sekalian

Sekarang access dari web browser, kita akan menggunakan fitur WebDAV dan WebSVN accessnya.

Enable dulu mod_dav nya:

root@myserver:/# a2enmod mod_dav

Edit konfigurasi pada /etc/apache2/mods-enabled/dav_svn.conf :

root@myserver:/# pico /etc/apache2/mods-enabled/dav_svn.conf

isikan seperti dibawah ini :

<Location /svn/myrepo>
   DAV svn
   SVNPath /home/svn/myrepo
   AuthType Basic
   AuthName "My Repository"
   AuthUserFile /webaccess/.passwd
   SVNPathAuthz on
   AuthzSVNAccessFile /etc/apache2/dav_svn.authz
   Require valid-user
</Location>

setelah itu lakukan restart server apache2 nya saja:

root@myserver:/# service apache2 reload

sekarang create file .passwd

root@myserver:/# mkdir webaccess
root@myserver:/# htpasswd -cs /webacess/.passwd user1
New password:   (isikan passwordnya)
Re-type new password:   (isikan passwordnya sama dengan diatas)

setiap kali akan menambahkan user, jangan pakai option -c, cukup pakai -s, option -s adalah menggunakan encrypt methode SHA.

kemudian change owner ke www-data:

root@myserver:/# chown www-data:www-data /webaccess/.passwd
root@myserver:/# chmod 644 /webaccess/.passwd

Setelah itu kita lakukan protection directory dengan menggunakan .htaccess (directive dari apache)

root@myserver:/# pico /var/www/html/websvn/.htaccess

isikan file .htaccess tersebut dengan :

AuthType Basic
AuthUserFile /webaccess/.passwd
AuthName “My Web Repository”
order deny,allow
allow from all
require valid-user

tekan Ctrl-O dan Ctrl-X untuk menyimpan file tersebut.

Kemudian lakukan perubahan pada file 000-default.conf.

root@myserver:/# pico /etc/apache2/sites-enabled/000-default.conf

lakukan perubahan / tambahkan directive dibawah ini pada bagian <VirtualHost *:80>

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

Sekarang lakukan perubahan pada WebSVN config.php

root@myserver:/# cd /var/www/html/websvn/include/
root@myserver:/include# cp distconfig.php config.php
root@myserver:/include# pico config.php

cari bagian: $config->parentPath(‘/Path/to/parent’) ganti menjadi

$config->parentPath(‘/home/svn/myrepo’);

uncomment: $config->setBlockRobots();

Tekan Ctrl-O dan Ctrl-X untuk menyimpan file tersebut.

Setelah dilakukan semua itu lakukan reloading apache2 server :

root@myserver:/# service apache2 reload

Kalau tidak ada error. Apache2+Subversion+WebSVN sudah dapat anda gunakan.

 

Cheers,
😎
Man’z

All … ketemu lagi dengan saya …

Seperti biasa kita to the point as subjected above saja:

Install ssh server di server ubuntu kita:

server #$: sudo apt-get install openssh-server

Copy sshd_config yang original, diperlukan apabila ada kesalahan setting jadi masih bisa dibalik ke factory default:

server #$: sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.factory_defaults
server #$: sudo chmod a-w /etc/ssh/sshd_config.factory_defaults

Edit pada sshd_config, bebas pakai editor apa, mau vi, vim, pico, nano terserah, contoh disini pakai pico, kenapa ? karena saya suka pico:mrgreen: :

server #$: sudo pico /etc/ssh/sshd_config

Edit beberapa item dibawah ini :

Disable Password Authentication, kenapa ? karena banyak user pake password yang gampang ditebak:

PasswordAuthentication no

Disable Forwarding, secara default anda bisa melakukan tunneling dengan menggunakan remote desktop atau nautilus dll, dalam hal ini kita protect seketat mungkin

AllowTcpForwarding no
X11Forwarding no

Tentukan user yang boleh mengakses server kita, kenapa ? biar gak kebobolan:

AllowUsers <<user1>> <<user2>> <<user_n>>

Ganti <<user1>> .. <<user_n>> dengan nama user yang diperbolehkan masuk ke ssh servermu.

Logging, tentunya dipergunakan untuk analisa apa yang terjadi dengan server kita pada suatu saat nanti, ganti dari INFO ke VERBOSE:

LogLevel VERBOSE

Nah, sebagai orang timur, lakukanlah sopan santun dalam segala hal, maka kita buat Banner, agar setiap user yang login itu kita say hallo, hilangkan tanda # pada sebelum Banner:

Banner /etc/issue.net

Editlah sesuka hati isi dari /etc/issue.net tersebut.

Sudah itu selesai, restart server ssh mu biar impact nya kerasa:mrgreen:

server #$: sudo restart ssh

kalo ada error bisa lakukan hal dibawah ini:

server #$: sudo systemctl restart ssh

Selesai sudah pada bagian server.

Nah sekarang kita menuju ke bagian client, dalam hal ini kita lakukan host-based authentication (kalau salah mohon diperbaiki, kalau benar ya sudah).

Masuk ke home dir mu dan lakukan :

client #~: mkdir ~/.ssh
client #~: chmod 700 ~/.ssh
client #~: ssh_keygen -t rsa -b 4096

system akan meminta konfirmasi seperti dibawah ini:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/b/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/b/.ssh/id_rsa.
Your public key has been saved in /home/b/.ssh/id_rsa.pub.

Nah disitu anda sudah mendapatkan id_rsa dan id_rsa.pub mu, yang mana id_rsa adalah private key dan id_rsa.pub adalah public key yang harus ditransfer ke server.

Pada saat meminta passphrase, buatlah passphrase yang bagus, yang sudah ditebak kalau bisa susah diingat sekalian:mrgreen: tapi kalau susah diingat nanti nyusahin diri sendiri😀

Setelah mendapatkan id_rsa.pub, kirimkanlah ke server ssh mu yang telah dibuat tadi dengan cara :

client $~: ssh-copy-id manz@server_ssh

server_ssh tadi adalah server yang kamu sudah buat, bisa pakai hostname atau pun IP.

Kalau terjadi kegagalan menggunakan ssh-copy-id, maka bisa lakukan hal lainnya, misal dengan dikirimkan lewat ftp server, nah nanti setelah mendarat di server file id_rsa.pub nya, lakukan hal dibawah ini :

server #$: cd ~
server #~: mkdir .ssh
server #~: chmod 700 .ssh
server #~: sudo touch .ssh/authorized_keys
server #~: cat id_rsa.pub >> .ssh/authorized_keys
server #~: chmod 600 .ssh/authorized_keys

Nah, sekarang cara koneknya gimana ?

client $~: ssh server_ssh

nanti akan dimintakan password yang sama pada saat pembuatan id_rsa tersebut.

Kalau banyak ssh server bagaimana pemilihan ID nya ?, buatlah file config di .ssh dir mu:

client #~: touch .ssh/config
client #~: pico .ssh/config

isikan dengan:

User <<nama_user>>
PubKeyAuthentication yes
IdentityFile ~/.ssh/id_rsa

Selesai sudah tutorial hari ini.

Have a nice day
😎
Man’z

Met Pagi semua, karena blog ini di create dan write di pagi hari cerah ditemani secangkir kopi yang harum, hanya untuk pisang goreng atau pun roti tidak ada. Jadi ya cukup kopi saja.

To the point:

Semua harus as a root

Install pre-dependencies package nya:

root@Manz:~# apt-get install libbonobo2-0:i386 libbonoboui2-0:i386 libgconf2-4:i386
root@Manz:~# apt-get install libgnome-desktop-2-17:i386 libgnomeui-0:i386 libjpeg62:i386 libcups2:i386
root@Manz:~# apt-get install gdb:386 libpango1.0-0:i386 libstdc++6:i386
root@Manz:~# apt-get install libstdc++6:i386 libxkbfile1:i386 libxp6:i386
root@Manz:~# apt-get install libxp6:i386 libxss1:i386 libxt6:i386 libxtst6:i386

Setelah semua diinstallkan, baru install packagenya:

root@Manz:~# dpkg -i ibm-notes-9.0.1.i586.deb

kalau ada masalah pada saat instalasi dengan menggunakan dpkg / ubuntu software center tidak adanya libcupsys2, maka langkah dibawah ini harus dilakukan:

  1. extract: root@Manz:~# dpkg -X ibm-notes-9.0.1.i586.deb ./notes
  2. extract: root@Manz:~# dpkg -X ibm-notes-9.0.1.i586.deb ./notes/DEBIAN
  3. kemudian edit ./notes/DEBIAN/control file — ganti libcupsys2 ke libcups2 dependencies nya
  4. package: root@Manz:~# dpkg -b notes ibm-notes-9.0.1.i586.deb

lalu install lagi dengan perintah sama seperti sebelumnya:

root@Manz:~# dpkg -i ibm-notes-9.0.1.i586.deb

Then .. yo wis … silahkan pakai:mrgreen:

Salam,
😎
Man’z

Hallo again ..

Sekarang sudah pakai Qubes kan … nah bagaimana kalau copy file banyak / per directory dari dom0 ke appVM ?

Ada beberapa contoh :

1.Copy semua file yang ada nama snapshot*.jpg ke appVM

dom0 ~] tar -cvf – snapshot*.jpeg | qvm-run -p appVM ‘tar -xf -‘

2. Copy semua file di directory

dom0 ~] tar -cvf – namadirectory | qvm-run -p appVM ‘tar -xf -‘

3. Pindahkan semua file yang kamu mau

dom0 ~] tar –remove-files -cvf – namadirectory | qvm-run -p appVM ‘tar -xf -‘

 

Next issue adalah bagaimana mengubah PDF file ke secure-PDF format secara banyak file :

~] for p in *.pdf; do qvm-convert-pdf “$p”; done

 

qrexec timeout for windows7 hvm

Ini gara gara setelah install qubes-tools-windows trus ada error: Cannot execute qrexec-daemon!

Setting qrexec_timeout secara default dari qubes adalah 60 seconds jadi kita perlu menaikkan agar lebih lama dari itu, kenapa ? karena untuk Windows loading disknya lebih lama daripada system linux, lakukan hal ini di domain dom0

dom0 ~] qvm-prefs win7 -s qrexec_timeout 120

more formal statements:

qvm-prefs <appVM> -s qrexec_timeout <higher-value-in-seconds>

 

Nantikan tricky – tricky yang saya kumpulkan dilain waktu.

 

Salam,
Man’z
😎

Hallow jek … kite nambahin yuk fitur di IBM Notes buat IBM Connection Plugins for Linux …

biar tambah maknyoss… kurleb space butuh 3.3Gb.. (ini size kata installer application nya):mrgreen:

1. Gak usah pake nanya … to the point ajah dah …:mrgreen: Jalankan di shell :

~user] sudo find /opt/ibm/notes/framework/shared/eclipse -exec chmod o+w {} \;

2. Download package untuk IBM Notes 9 Connection plugins di :

https://greenhouse.lotus.com/plugins/plugincatalog.nsf/assetDetails.xsp?action=editDocument&documentId%C3%81245802A721A20185257A9B005EFD52

pilih IBM Connection Plug-ins for IBM Notes package (scroll down ada paling bawah)

3. Extract file IC45PluginsForIBMNotes-20150204-0843.zip dan extract pula file ConnectionsAddonInstaller.zip

4. Setelah itu lakukan instalasi di IBM Notes nya melalui windows File -> Application -> Install , yakin deh fresh installation gak bakal nemu file ini

5. Do little hack :

~user] cd ~/ibm/notes/data/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings
~user/.settings] sudo nano com.ibm.notes/branding.prefs


enable.update.ui=false      <– ganti jadi true

Ctrl-O | Ctrl-X

6. Do the installation, follow below step … then install

Application_Install

 

 

 

 

 

 

AP_Install1

 

 

 

 

 

AP_Install2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7. Setelah itu, silahkan IBM Notes Client nya di restart untuk take-effect.

8. Jangan lupa execute kembali perintah dibawah ini, kalau tidak, you Notes will become vulnerable

~user] sudo find /opt/ibm/notes/framework/shared/eclipse -exec chmod ow {} \;

 

Cheers,
Man’z
😎