SchoolOnffLine: Server Berbasis Sabily
Distro SchoolOnffLine dapat di ambil di http://sourceforge.telkomspeedy.com/projects/schoolonffline/
Di sini akan di jelaskan teknik membuat LiveCD SchoolOnffLine yang akan berguna bagi pelajaran TIK di sekolah.
Maksud & Tujuan Distro SchoolOnffLine
- Membantu sekolah dalam menyelenggarakan pelajaran komputer, tanpa perlu adanya Internet
- Di Instalasi di Server lokal di Lab Komputer untuk menggantikan fungsi Internet
- Dapat berfungsi sebagai proxy jika tersambung ke Internet
- CATATAN: SchoolOnffLine tidak dirancang untuk di operasikan di jaringan Internet publik. Tidak ada usaha untuk membuat distro ini aman dari serangan di Internet.
Fitur Distro SchoolOnffLine
- Berbasis Sabily Desktop
- SchoolOnffLine: Konfigurasi Minimal PC Server SchoolOnffLine
- SchoolOnffLine: Konfigurasi Jaringan yang akan digunakan SchoolOnffLine
Konfigurasi Jaringan
- Statik eth0 IP 192.168.0.254
- Gateway IP 192.168.0.1
- DHCP Server
- Alokasi IP address 192.168.0.30-192.168.0.70
- OpenDNS & Nawala Project untuk membantu blokir situs tidak baik
- Setup /etc/apt/sources.list pada client jaringan jika digunakan untuk Repository Server
Untuk Ubuntu 9.04
pada client jaringan jika di aktifkan Repository Server
deb ftp://192.168.0.254/pub/repo/ jaunty main multiverse restricted universe deb ftp://192.168.0.254/pub/repo/ jaunty-updates main multiverse restricted universe deb ftp://192.168.0.254/pub/repo/ jaunty-security main multiverse restricted universe
atau
deb http://192.168.0.254/ubuntu/ jaunty main multiverse restricted universe deb http://192.168.0.254/ubuntu/ jaunty-updates main multiverse restricted universe deb http://192.168.0.254/ubuntu/ jaunty-security main multiverse restricted universe
Untuk Ubuntu 9.10
pada client jaringan jika di aktifkan Repository Server
deb http://dl2.foss-id.web.id/ubuntu/ jaunty main multiverse restricted universe deb http://dl2.foss-id.web.id/ubuntu/ jaunty-updates main multiverse restricted universe deb http://dl2.foss-id/web.id/ubuntu/ jaunty-security main multiverse restricted universe deb http://dl2.foss-id/web.id/ubuntu/ jaunty-backports main multiverse restricted universe deb http://dl2.foss-id/web.id/ubuntu/ jaunty-proposed main multiverse restricted universe
deb http://192.168.0.254/ubuntu/ karmic main multiverse restricted universe deb http://192.168.0.254/ubuntu/ karmic-updates main multiverse restricted universe deb http://192.168.0.254/ubuntu/ karmic-security main multiverse restricted universe deb http://192.168.0.254/ubuntu/ karmic-backports main multiverse restricted universe deb http://192.168.0.254/ubuntu/ karmic-proposed main multiverse restricted universe
Server Jaringan
- MySQL Database Server
- root password MySQL default 123456
- Apache2 Web Server
- OpenSSH Server
- NAT / Proxy
- Tinyproxy (builtin sabily)
- Dansguardian untuk membantu blokir situs tidak baik (builtin Sabily)
- Postfix SMTP Mail Server
- Relay host SMTP default smtp.telkom.net
- Dovecot POP3 & IMAP Mail Server
- BIND DNS Server untuk domain sekolah.sch.id
- NTP untuk time server lokal
- Samba untuk Network Neighbourhood
- FTP Server
Server Aplikasi
- Wordpress Blog Server
- SpeedyWiki
- Squirrelmail Webmail server
- Senayan Digital Library
- KnowldgeTree Digital Library
- Sistem Informasi Sekolah SD (SISFOKOL-SD)
- Sistem Informasi Sekolah SLTP (SISFOKOL-SLTP)
- Sistem Informasi Sekolah SLTA (SISFOKOL-SLTA)
- Sistem Informasi Sekolah SMK (SISFOKOL-SMK)
- ejabberd chatting server
- Mahana Social Networking Server
Akses ke Beberapa Fitur
Akses Jasa Web
- https://192.168.0.254:1000 - Webmin (admin, 123456)
- http://192.168.0.254/library - isi /var/data
- http://192.168.0.254/wordpress - Blog Wordpress (admin, 123456)
- http://192.168.0.254/moodle - Moodle (admin, Admin123456!)
- http://192.168.0.254/wiki - SpeedyWiki
- http://192.168.0.254/webmail - Webmail (siswa1, 123456)
- http://192.168.0.254/senayan - Digital Libary (admin, admin)
- http://192.168.0.254/knowledgeTree - Digital Library (admin, admin)
- http://192.168.0.254:5280/admin/ - ejabberd (admin, 123456)
- http://192.168.0.254/sisfokol-sd/ SISFO Sekolah SD (admin, admin)
- http://192.168.0.254/sisfokol-sltp/ SISFO Sekolah SLTP (admin, admin)
- http://192.168.0.254/sisfokol-slta/ SISFO Sekolah SLTA (admin, admin)
- http://192.168.0.254/sisfokol-smk/ SISFO Sekolah SMK (admin, admin)
- http://192.168.0.254/sisfokol-sabily-slta/ SISFO Sekolah Sabily SLTA (admin, admin)
- http://192.168.0.254/janissari (SISFO Sekolah Janisari)
- http://192.168.0.254/mahara/htdocs (admin, Admin123456!)
- http://mahara.sekolah.sch.id (admin, Admin123456)
- http://192.168.0.254/cmsbalitbang
- http://192.168.0.254/cmsbalitbang/admin/admin.php (admin, admin)
- smb://192.168.0.254/ - SAMBA Network Neighbourhood
- http://192.168.0.254/library
- http://192.168.0.254/ubuntu - siap untuk repository Ubuntu Lokal
- ftp://192.168.0.254/pub/repo - siap untuk repository Ubuntu Lokal
- Penambahan / Remove User ejabberd menggunakan shell
# ejabberdctl register admin 192.168.0.254 123456 # ejabberdctl register siswa1 192.168.0.254 123456 # ejabberdctl register namauser namaserver password # ejabberdctl unregister namauser 192.168.0.254
Kebutuhan Sistem Pendukung
- Harddisk kosong sebesar 3 – 5 GB (semakin besar ruang kosong, semakin dianjurkan)
- Memori 512MB dan swap 1 GB (semakin besar memori, semakin dianjurkan)
- Paket pendukung squashfs-tools, dchroot, genisoimage dan mkisofs
- Install UCK
- Program Virtualisasi semacam Qemu, VirtualBox, VM Ware dan lainya
- Berkas ISO Ubuntu LiveCD Desktop
- pastikan IP address agar 192.168.0.254 agar tidak rewel. Gunakan perintah misalnya
# ifconfig eth0:254 192.168.0.254
Persiapan
Setup hostname agar sama dengan hostname distro
sudo su - echo sekolah > /proc/sys/kernel/hostname echo sekolah > /etc/hostname vi /etc/hosts
192.168.0.254 sekolah sekolah.co.id
vi /etc/resolv.conf
nameserver 127.0.0.1 nameserver 180.131.144.144 nameserver 180.131.145.145 nameserver 208.67.222.222 nameserver 208.67.220.220
Buang seluruh folder ~/tmp yang lama, melalui perintah
sudo rm -Rf ~/tmp sudo shutdown -r now
Reboot Komputer.
Pastikan
$ sudo modprobe squashfs
Persiapan Source berbagai CMS & software yang tidak standard
Gunakan file iso sabily_9.10_gaza_desktop_small_version.iso. Lakukan langkah Ubuntu Customization Kit Menggunakan Text Mode sampai dengan perintah
sudo uck-remaster-unpack-iso sabily_9.10_gaza_desktop_small_version.iso sudo uck-remaster-unpack-rootfs sudo uck-remaster-unpack-initrd
- SchoolOnffLine: copy source CMS & wall paper ke folder /usr/local/src
- SchoolOnffLine: Memastikan semua server di mesin pembuat Distro dimatikan
Setelah semua source CMS yang dibutuhkan sudah siap, maka kita dapat melakukan chroot
$ sudo mkdir /home/onno/tmp/remaster-root/dev/pts $ sudo uck-remaster-chroot-rootfs
Customisasi
Beberapa proses customisasi yang secara umum dapat dilakukan:
- SchoolOnffLine: Melihat aplikasi yang terinstall
- SchoolOnffLine: Ubah file /etc/apt/sources.list
- SchoolOnffLine: Copy e-Book Pelajaran TIK
- SchoolOnffLine: Menginstalasi Ubiquity LiveCD Installer
- SchoolOnffLine: Install Script Update SpeedyWiki Automatis
- SchoolOnffLine: Instalasi Beberapa Batch File Bermanfaat
Customisasi Server Aplikasi
Selama dalam lingkungan chroot, untuk membuat Server aplikasi kita dapat mengikuti langkah yang normal dalam membuat server aplikasi seperti di jelaskan dalam Linux Howto.
- SchoolOnffLine: Memastikan Semua Server Beroperasi saat nyala
- SchoolOnffLine: Setup Hostname sekolah.sch.id
- SchoolOnffLine: Set Static IP address Untuk Ethernet (NOT RECOMMENDED - supaya mengubah /etc/rc.local mudah)
- SchoolOnffLine: Gunakan DNS dari OpenDNS & Nawala Project
- SchoolOnffLine: Instalasi dan Konfigurasi Server Standard
- SchoolOnffLine: Instalasi DHCP Server untuk pemberian IP address automatis
- SchoolOnffLine: Instalasi Postfix SMTP Server
- SchoolOnffLine: Instalasi Apache2 & OpenSSH Server
- SchoolOnffLine: Instalasi MySQL Server
- SchoolOnffLine: Instalasi BIND DNS Server
- SchoolOnffLine: Instalasi NTP Server
- SchoolOnffLine: Instalasi Samba
- SchoolOnffLine: Instalasi FTP Server
- SchoolOnffLine: Menyiapkan Server Repository Ubuntu Lokal
Selanjutnya kita mulai dapat menginstalasi berbagai Content Management System (CMS) yang lebih serius. Seperti,
- SchoolOnffLine: Instalasi Squirrelmail Webmail
- SchoolOnffLine: Instalasi Wordpress
- SchoolOnffLine: Instalasi Mediawiki
- SchoolOnffLine: Instalasi Moodle
- SchoolOnffLine: Instalasi Senayan Digital Library
- SchoolOnffLine: Instalasi KnowledgeTree Digital Library Cara Lama
- SchoolOnffLine: Instalasi KnowledgeTree Digital Library (WARNING: PHP tidak kompatible)
- SchoolOnffLine: Instalasi cmsbalitbang
- SchoolOnffLine: Instalasi Mahara
- SchoolOnffLine: Instalasi ejabberd Chatting Server
- SchoolOnffline: Instalasi SISFOKOL SD
- SchoolOnffline: Instalasi SISFOKOL SLTP
- SchoolOnffline: Instalasi SISFOKOL SLTA
- SchoolOnffline: Instalasi SISFOKOL SMK
- SchoolOnffline: Instalasi SISFOKOL Sabily SLTA
- SchoolOnffline: Instalasi SISFOKOL Janissari
- SchoolOnffLine: Instalasi Webmin
- SchoolOnffLine: Instalasi Wordpress Multi User (lakukan instalasi WordpressMU setelah DNS selesai)
- SchoolOnffLine: Replikasi Database dan Image SpeedyWiki
- SchoolOnffLine: Bersihan Source CMS dari /var/www
Konfigurasi Desktop
Proses file wallpaper jika dibutuhkan
cd /usr/share/backgrounds/ tar zxvf 78294-Greenman-backgrounds-20080420.tar.gz gconftool-2 --set /desktop/gnome/background/picture_filename --type string "/usr/share/backgrounds/Greenman/fiesty-final-greenman.png"
Cleanup
Pastikan untuk mengubah semua file temporary yang tidak lagi dibutuhkan karena ruang dalam CD sangat terbatas. Beberapa contoh paket / file yang dapat di bersihkan menggunakan. Beberapa hal yang perlu dilakukan adalah,
- Membersihkan temporary file
- Membersihkan mailbox
- Membersihkan source file
- Kembalikan sources.list ke original sources.list
Menggunakan shell dapat dilakukan perintah berikut
chown -Rf www-data.www-data /var/www &
aptitude clean rm -rf /tmp/* ~/.bash_history rm -Rf /var/mail/*
rm /usr/local/src/*pdf rm /usr/local/src/*gz rm /usr/local/src/wiki* rm /var/www/*gz rm /var/www/*pdf rm /var/www/wikipedia/*gz
cp /etc/apt/sources.list.original /etc/apt/sources.list
umount /var/www/ubuntu umount /var/www/library umount /home/ftp/pub/repo
sudo /etc/init.d/mysql stop sudo /etc/init.d/apache2 stop sudo /etc/init.d/postfix stop sudo /etc/init.d/vsftpd stop sudo /etc/init.d/dovecot stop sudo /etc/init.d/webmin stop sudo /etc/init.d/dhcp3-server stop sudo /etc/init.d/bind9 stop sudo /etc/init.d/ntp stop sudo /etc/init.d/tinyproxy stop sudo /etc/init.d/dansguardian stop sudo /etc/init.d/samba stop sudo /etc/init.d/ejabberd stop sudo /etc/init.d/postgresql-8.4 stop
dari dalam lingkungan chroot.
Lakukan juga umount (unmount) berbagai file sistem dan keluar dari chroot
umount /proc umount /sys exit
$ sudo umount ~/tmp/remaster-root/dev $ sudo umount ~/tmp/remaster-root/tmp
Catatan: jika "umount /proc" gagal, coba "umount -lf /proc"
Membuat ISO CD
Buat iso dari distro yang baru
cd ~ sudo uck-remaster-pack-initrd sudo uck-remaster-pack-rootfs sudo uck-remaster-pack-iso schoolonffline-sabily-beta.iso
File iso distro baru ada di folder
/home/user/tmp/remaster-new-files
Selanjutnya adalah burn dan test file iso baru tersebut.
Percobaan LiveCD Baru
Percobaan dapat menggunakan emulator qemu
$ qemu -cdrom schoolonffline-sabily-beta.iso -boot d -m 512
Atau jika kita mempunyai hardware accelerator untuk kvm dapat menggunakan
$ kvm -cdrom schoolonffline-sabily-beta.iso -boot d -m 512
Kita juga dapat mencoba menggunakan virtualbox-ose, yang merupakan open source software yang dapat di ambil dari Ubuntu universe repository.
Burning image CD
Simple! lakukan
$ cdrecord dev=/dev/cdrom schoolonffline-sabily-beta.iso