SlideShare une entreprise Scribd logo
1  sur  38
SLiMS Technical Aspects Hendro Wicaksono SLiMS Lead Developer hendrowicaksono@yahoo.com/gmail.com.  Twitter: @hendrowicaksono,  Facebook: facebook.com/hendrowicaksono
Internet (HTTP Protocol) request response Web Server Create, read, update, delete http://slims.web.id request response
Kenapa  &  MySQL ? Portabilitas yang lebih baik.
Terbukti berjalan baik pada ...
SCM software Source code management menggunakan GIT ( http://git-scm.com/ )
Update Harian Versi stabil terakhir: SliMS 3 stable 15 (Matoa) https://github.com/slims/s3st15_matoa   Development page:  https://github.com/slims   Download paket tarball: http://slims.web.id/web/?q=node/1   Web:  http://slims.web.id
Dokumentasi Developer Developer: https://github.com/slims/s3-devdocs
Dokumentasi Pengguna http://slims.web.id/download/docs/s3-doc-id.pdf Documentation source code (daily updated): https://github.com/slims/s3-doc-id (latex/lyx format)
SLiMS menyimpan data Data bibliografi, pengguna, transaksi disimpan di database MySQL. Cover data bibliografi, lampiran berkas (file attachment), cache (label, barcode, swf), Foto anggota, Back-up (sql), generated report, disimpan di  filesystem .
Strategi Back-up (1) Export “sqldump” secara berkala. Jika di Linux, gunakan cron.
Strategi Back-up (2) Copy folder aplikasi SliMS secara berkala. Jika di Linux, gunakan cron.
Contoh skrip untuk backup #!/bin/sh # membersihkan folder backup rm -Rf /home/hendro/backup/* # membuat subfolder sql utk menyimpan  mkdir -p /home/hendro/backup/slims_backup/sql mkdir -p /home/hendro/backup/slims_backup/app # dumping sql data /usr/bin/mysqldump -u root --lock-tables --password='mysqlrootpasswd' slimsdb > /home/hendro/backup/slims_backup/sql/slims.sql # copy app folder cp -R /var/www/libsenayan /home/hendro/backup/senayan_backup/app/ tar -czf /home/hendro/backup/`date +%Y_%m_%d-%d_%B_%Y-%H_%M`.tar.gz -C /home/hendro/backup/slims_backup scp /home/hendro/backup/*.tar.gz hendro@10.0.0.145:/home/hendro/backup_senayan/ >/dev/null 2>&1 exit
Contoh Implementasi (1) Perpustakaan Kemdiknas RI Production Server OPAC Library Staff Backup/File Server request/ response request/ response backup frequently via cron & ssh Internet OPAC update frequently via cron & ssh Intranet / LAN Internet / DMZ Untuk akses OPAC, diinstal SLiMS terpisah tetapi mengacu ke database yang sama dengan username database yang “almost read-only”. Untuk sinkronisasi folder 'images', files, repository antara aplikasi prod & opac, digunakan rsync via cron. Server Internet OPAC tidak terkoneksi langsung dengan Production Server. Akses ke database MySQL di set “read-only” (GRANT SELECT ON dbname.* TO  [email_address]  IDENTIFIED BY 'paswd') Via cron, secara berkala (15 menit) database di restore.
Contoh Implementasi (2) Sebuah Institusi Pemerintah & instansi swasta bidang perminyakan Production Server Staff Library Staff MS Active Directory Server request/ response request/ response Intranet / LAN Internet / DMZ Librarian & member login via LDAP for single sign-on support
SLiMS Hardening Tips Hendro Wicaksono
Separate database access.
Separate database access (1) ,[object Object]
Full Access for Librarian Login
Separate database access (2) Read-Only for OPAC GRANT SELECT ON senayandb.* TO  [email_address]  IDENTIFIED BY 'password_rahasia'; GRANT UPDATE ON senayandb.member TO  [email_address] ; Full Access for Librarian Login GRANT ALL PRIVILEGES ON senayandb.* TO  [email_address]  IDENTIFIED BY 'password_rahasia_juga'; FLUSH PRIVILEGES;
Separate database access (3) Create 2 sysconfig files: ,[object Object]
sysconfig-opac.inc.php
Separate database access (4) In sysconfig-opac.inc.php: define('DB_USERNAME', 'opacuser'); define('DB_PASSWORD', 'password_rahasia'); In sysconfig.inc.php: define('DB_USERNAME', 'slimsadmin'); define('DB_PASSWORD', 'password_rahasia_juga');
Separate database access (5) Edit index.php: require '../sysconfig.inc.php'; change to  require '../sysconfig-opac.inc.php';
Separate database access (6) Since SLiMS version 3 stable 15 (matoa), just copy  sysconfig.local.inc.php  to  sysconfig.local.fa.inc.php  and adjust the database connection setting for admin user.
Access Restriction based on IP Address to Librarian Login.
IP Restriction to LibLogin Edit lib/contents/login.inc.php: $allowed_liblogin_ip = array('127.0.0.1'); $remote_addr = $_SERVER['REMOTE_ADDR']; $confirmation = 0; foreach ($allowed_liblogin_ip as $ip) { if ($ip == $remote_addr) { $confirmation = 1; } } if (!$confirmation) { header ("location:index.php"); }
HTTP Secure Connection to Librarian Login
HTTPS Secure Connection (1) Edit lib/contents/login.inc.php: if ($_SERVER['SERVER_PORT'] != '443') { header ("location:index.php"); }
HTTPS Secure Connection (2) Edit admin/index.php: if ($_SERVER['SERVER_PORT'] != '443') { header ("location:../index.php"); }
Security by obscurity (1) Remove link to Librarian Login in OPAC
Security by obscurity (2) <li><a class=&quot;menu&quot; href=&quot;index.php?p=login&quot;><span><?php echo __('Librarian LOGIN'); ?></span></a></li> Change to <!-- <li><a class=&quot;menu&quot; href=&quot;index.php?p=login&quot;><span><?php echo __('Librarian LOGIN'); ?></span></a></li> -> Or delete the line.
Do not use shared account. Every staff should login with their own account. Separate Account for Staffs
Choose the right Operating System for your needs. Choose the Right OS
Suhosin! sudo apt-get install php5-suhosin PHP Hardening
MySQL Hardening
Apache Hardening
 
Choose the web server with built-in security features

Contenu connexe

Tendances

Apache Web server Complete Guide
Apache Web server Complete GuideApache Web server Complete Guide
Apache Web server Complete Guide
webhostingguy
 
APACHE WEB SERVER FOR LINUX
APACHE WEB SERVER FOR LINUXAPACHE WEB SERVER FOR LINUX
APACHE WEB SERVER FOR LINUX
webhostingguy
 

Tendances (20)

Apache Web server Complete Guide
Apache Web server Complete GuideApache Web server Complete Guide
Apache Web server Complete Guide
 
Apache web server tutorial for linux
Apache web server tutorial for linuxApache web server tutorial for linux
Apache web server tutorial for linux
 
Apache Web Server Setup 2
Apache Web Server Setup 2Apache Web Server Setup 2
Apache Web Server Setup 2
 
Apache Server Tutorial
Apache Server TutorialApache Server Tutorial
Apache Server Tutorial
 
Apache Tutorial
Apache TutorialApache Tutorial
Apache Tutorial
 
Whats new in ASP.NET 4.0
Whats new in ASP.NET 4.0Whats new in ASP.NET 4.0
Whats new in ASP.NET 4.0
 
Enable oracle database vault
Enable oracle database vaultEnable oracle database vault
Enable oracle database vault
 
Apache Presentation
Apache PresentationApache Presentation
Apache Presentation
 
Gab17 lyon SQL on Linux - David BARBARIN
Gab17 lyon SQL on Linux - David BARBARINGab17 lyon SQL on Linux - David BARBARIN
Gab17 lyon SQL on Linux - David BARBARIN
 
How to install and configure LEMP stack
How to install and configure LEMP stackHow to install and configure LEMP stack
How to install and configure LEMP stack
 
Apache
ApacheApache
Apache
 
APACHE WEB SERVER FOR LINUX
APACHE WEB SERVER FOR LINUXAPACHE WEB SERVER FOR LINUX
APACHE WEB SERVER FOR LINUX
 
Getting Started with CloudScript
Getting Started with CloudScriptGetting Started with CloudScript
Getting Started with CloudScript
 
Oracle autovue
Oracle autovueOracle autovue
Oracle autovue
 
Introduction to Wildfly 8 - Marchioni
Introduction to Wildfly 8 -  MarchioniIntroduction to Wildfly 8 -  Marchioni
Introduction to Wildfly 8 - Marchioni
 
Jboss App Server
Jboss App ServerJboss App Server
Jboss App Server
 
Apache Web Server Setup 3
Apache Web Server Setup 3Apache Web Server Setup 3
Apache Web Server Setup 3
 
MongoDB Server Provisioning - From 2 Months to 2 Minutes
MongoDB Server Provisioning - From 2 Months to 2 MinutesMongoDB Server Provisioning - From 2 Months to 2 Minutes
MongoDB Server Provisioning - From 2 Months to 2 Minutes
 
Upgrade IOS Cisco Aironet 1130AG Series Access Point
Upgrade IOS Cisco Aironet 1130AG Series Access PointUpgrade IOS Cisco Aironet 1130AG Series Access Point
Upgrade IOS Cisco Aironet 1130AG Series Access Point
 
Installation of LAMP Server with Ubuntu 14.10 Server Edition
Installation of LAMP Server with Ubuntu 14.10 Server EditionInstallation of LAMP Server with Ubuntu 14.10 Server Edition
Installation of LAMP Server with Ubuntu 14.10 Server Edition
 

Similaire à Technical Aspects of SLiMS

MOSS 2007 Deployment Fundamentals -Part2
MOSS 2007 Deployment Fundamentals -Part2MOSS 2007 Deployment Fundamentals -Part2
MOSS 2007 Deployment Fundamentals -Part2
Information Technology
 
Securing Hadoop with OSSEC
Securing Hadoop with OSSECSecuring Hadoop with OSSEC
Securing Hadoop with OSSEC
Vic Hargrave
 
Python Deployment with Fabric
Python Deployment with FabricPython Deployment with Fabric
Python Deployment with Fabric
andymccurdy
 
Noel sps bay_backup_restore
Noel sps bay_backup_restoreNoel sps bay_backup_restore
Noel sps bay_backup_restore
Michael Noel
 
Sps baltimore backupand_restore-dpm
Sps baltimore backupand_restore-dpmSps baltimore backupand_restore-dpm
Sps baltimore backupand_restore-dpm
Michael Noel
 

Similaire à Technical Aspects of SLiMS (20)

Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...
Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...
Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...
 
What's new in SharePoint 2010 for Backup and Recovery - SP Saturday Copenhagen
What's new in SharePoint 2010 for Backup and Recovery - SP Saturday CopenhagenWhat's new in SharePoint 2010 for Backup and Recovery - SP Saturday Copenhagen
What's new in SharePoint 2010 for Backup and Recovery - SP Saturday Copenhagen
 
MOSS 2007 Deployment Fundamentals -Part2
MOSS 2007 Deployment Fundamentals -Part2MOSS 2007 Deployment Fundamentals -Part2
MOSS 2007 Deployment Fundamentals -Part2
 
Securing Hadoop with OSSEC
Securing Hadoop with OSSECSecuring Hadoop with OSSEC
Securing Hadoop with OSSEC
 
[AU SPC 2011] Backup Restore SharePoint 2010
[AU SPC 2011] Backup Restore SharePoint 2010[AU SPC 2011] Backup Restore SharePoint 2010
[AU SPC 2011] Backup Restore SharePoint 2010
 
Python Deployment with Fabric
Python Deployment with FabricPython Deployment with Fabric
Python Deployment with Fabric
 
Single Sign-On for APEX applications based on Kerberos (Important: latest ver...
Single Sign-On for APEX applications based on Kerberos (Important: latest ver...Single Sign-On for APEX applications based on Kerberos (Important: latest ver...
Single Sign-On for APEX applications based on Kerberos (Important: latest ver...
 
Alfresco Content Services - Solution Document
Alfresco Content Services - Solution DocumentAlfresco Content Services - Solution Document
Alfresco Content Services - Solution Document
 
Preparing for Upgrade to SharePoint 2010 with Joel Oleson Quest Software Webcast
Preparing for Upgrade to SharePoint 2010 with Joel Oleson Quest Software WebcastPreparing for Upgrade to SharePoint 2010 with Joel Oleson Quest Software Webcast
Preparing for Upgrade to SharePoint 2010 with Joel Oleson Quest Software Webcast
 
Noel sps bay_backup_restore
Noel sps bay_backup_restoreNoel sps bay_backup_restore
Noel sps bay_backup_restore
 
Scaling 101 test
Scaling 101 testScaling 101 test
Scaling 101 test
 
Scaling 101
Scaling 101Scaling 101
Scaling 101
 
gDBClone - Database Clone “onecommand Automation Tool”
gDBClone - Database Clone “onecommand Automation Tool”gDBClone - Database Clone “onecommand Automation Tool”
gDBClone - Database Clone “onecommand Automation Tool”
 
PHP Security on i5/OS
PHP Security on i5/OSPHP Security on i5/OS
PHP Security on i5/OS
 
Building Super Fast Cloud-Native Data Platforms - Yaron Haviv, KubeCon 2017 EU
Building Super Fast Cloud-Native Data Platforms - Yaron Haviv, KubeCon 2017 EUBuilding Super Fast Cloud-Native Data Platforms - Yaron Haviv, KubeCon 2017 EU
Building Super Fast Cloud-Native Data Platforms - Yaron Haviv, KubeCon 2017 EU
 
Sps baltimore backupand_restore-dpm
Sps baltimore backupand_restore-dpmSps baltimore backupand_restore-dpm
Sps baltimore backupand_restore-dpm
 
Ceph Day Tokyo - Bring Ceph to Enterprise
Ceph Day Tokyo - Bring Ceph to Enterprise Ceph Day Tokyo - Bring Ceph to Enterprise
Ceph Day Tokyo - Bring Ceph to Enterprise
 
BIWUG 20/02/2006 Backup & Restore with SharePoint 2003
BIWUG 20/02/2006 Backup & Restore with SharePoint 2003BIWUG 20/02/2006 Backup & Restore with SharePoint 2003
BIWUG 20/02/2006 Backup & Restore with SharePoint 2003
 
Continuous Deployment @ AWS Re:Invent
Continuous Deployment @ AWS Re:InventContinuous Deployment @ AWS Re:Invent
Continuous Deployment @ AWS Re:Invent
 
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
 

Plus de hendrowicaksono

Riset Integrasi ELiMS dan SLiMS
Riset Integrasi ELiMS dan SLiMSRiset Integrasi ELiMS dan SLiMS
Riset Integrasi ELiMS dan SLiMS
hendrowicaksono
 

Plus de hendrowicaksono (11)

Sistem informasi integrasi koleksi perpustakaan kemendikbud sikoper - 20210403
Sistem informasi integrasi koleksi perpustakaan kemendikbud   sikoper - 20210403Sistem informasi integrasi koleksi perpustakaan kemendikbud   sikoper - 20210403
Sistem informasi integrasi koleksi perpustakaan kemendikbud sikoper - 20210403
 
Pengelolaan Arsip Elektronik
Pengelolaan Arsip ElektronikPengelolaan Arsip Elektronik
Pengelolaan Arsip Elektronik
 
Presentasi Aspek Teknis Software Repositori Institusi
Presentasi Aspek Teknis Software Repositori InstitusiPresentasi Aspek Teknis Software Repositori Institusi
Presentasi Aspek Teknis Software Repositori Institusi
 
Kompetensi ti perpustakaan-v2
Kompetensi ti perpustakaan-v2Kompetensi ti perpustakaan-v2
Kompetensi ti perpustakaan-v2
 
Kompetensi ti perpustakaan-v2
Kompetensi ti perpustakaan-v2Kompetensi ti perpustakaan-v2
Kompetensi ti perpustakaan-v2
 
Kompetensi ti perpustakaan-v2
Kompetensi ti perpustakaan-v2Kompetensi ti perpustakaan-v2
Kompetensi ti perpustakaan-v2
 
Presentasi SLiMS di MIP UGM Juni/Juli 2013
Presentasi SLiMS di MIP UGM Juni/Juli 2013Presentasi SLiMS di MIP UGM Juni/Juli 2013
Presentasi SLiMS di MIP UGM Juni/Juli 2013
 
Oral History Project - Belanda Depok
Oral History Project - Belanda DepokOral History Project - Belanda Depok
Oral History Project - Belanda Depok
 
Riset Integrasi ELiMS dan SLiMS
Riset Integrasi ELiMS dan SLiMSRiset Integrasi ELiMS dan SLiMS
Riset Integrasi ELiMS dan SLiMS
 
How We Build SLiMS that Rocks
How We Build SLiMS that RocksHow We Build SLiMS that Rocks
How We Build SLiMS that Rocks
 
Aspek Keamanan Aplikasi E-cpns
Aspek Keamanan Aplikasi E-cpnsAspek Keamanan Aplikasi E-cpns
Aspek Keamanan Aplikasi E-cpns
 

Dernier

1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
ciinovamais
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Krashi Coaching
 

Dernier (20)

Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdf
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writing
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 

Technical Aspects of SLiMS

  • 1. SLiMS Technical Aspects Hendro Wicaksono SLiMS Lead Developer hendrowicaksono@yahoo.com/gmail.com. Twitter: @hendrowicaksono, Facebook: facebook.com/hendrowicaksono
  • 2. Internet (HTTP Protocol) request response Web Server Create, read, update, delete http://slims.web.id request response
  • 3. Kenapa & MySQL ? Portabilitas yang lebih baik.
  • 5. SCM software Source code management menggunakan GIT ( http://git-scm.com/ )
  • 6. Update Harian Versi stabil terakhir: SliMS 3 stable 15 (Matoa) https://github.com/slims/s3st15_matoa Development page: https://github.com/slims Download paket tarball: http://slims.web.id/web/?q=node/1 Web: http://slims.web.id
  • 7. Dokumentasi Developer Developer: https://github.com/slims/s3-devdocs
  • 8. Dokumentasi Pengguna http://slims.web.id/download/docs/s3-doc-id.pdf Documentation source code (daily updated): https://github.com/slims/s3-doc-id (latex/lyx format)
  • 9. SLiMS menyimpan data Data bibliografi, pengguna, transaksi disimpan di database MySQL. Cover data bibliografi, lampiran berkas (file attachment), cache (label, barcode, swf), Foto anggota, Back-up (sql), generated report, disimpan di filesystem .
  • 10. Strategi Back-up (1) Export “sqldump” secara berkala. Jika di Linux, gunakan cron.
  • 11. Strategi Back-up (2) Copy folder aplikasi SliMS secara berkala. Jika di Linux, gunakan cron.
  • 12. Contoh skrip untuk backup #!/bin/sh # membersihkan folder backup rm -Rf /home/hendro/backup/* # membuat subfolder sql utk menyimpan mkdir -p /home/hendro/backup/slims_backup/sql mkdir -p /home/hendro/backup/slims_backup/app # dumping sql data /usr/bin/mysqldump -u root --lock-tables --password='mysqlrootpasswd' slimsdb > /home/hendro/backup/slims_backup/sql/slims.sql # copy app folder cp -R /var/www/libsenayan /home/hendro/backup/senayan_backup/app/ tar -czf /home/hendro/backup/`date +%Y_%m_%d-%d_%B_%Y-%H_%M`.tar.gz -C /home/hendro/backup/slims_backup scp /home/hendro/backup/*.tar.gz hendro@10.0.0.145:/home/hendro/backup_senayan/ >/dev/null 2>&1 exit
  • 13. Contoh Implementasi (1) Perpustakaan Kemdiknas RI Production Server OPAC Library Staff Backup/File Server request/ response request/ response backup frequently via cron & ssh Internet OPAC update frequently via cron & ssh Intranet / LAN Internet / DMZ Untuk akses OPAC, diinstal SLiMS terpisah tetapi mengacu ke database yang sama dengan username database yang “almost read-only”. Untuk sinkronisasi folder 'images', files, repository antara aplikasi prod & opac, digunakan rsync via cron. Server Internet OPAC tidak terkoneksi langsung dengan Production Server. Akses ke database MySQL di set “read-only” (GRANT SELECT ON dbname.* TO [email_address] IDENTIFIED BY 'paswd') Via cron, secara berkala (15 menit) database di restore.
  • 14. Contoh Implementasi (2) Sebuah Institusi Pemerintah & instansi swasta bidang perminyakan Production Server Staff Library Staff MS Active Directory Server request/ response request/ response Intranet / LAN Internet / DMZ Librarian & member login via LDAP for single sign-on support
  • 15. SLiMS Hardening Tips Hendro Wicaksono
  • 17.
  • 18. Full Access for Librarian Login
  • 19. Separate database access (2) Read-Only for OPAC GRANT SELECT ON senayandb.* TO [email_address] IDENTIFIED BY 'password_rahasia'; GRANT UPDATE ON senayandb.member TO [email_address] ; Full Access for Librarian Login GRANT ALL PRIVILEGES ON senayandb.* TO [email_address] IDENTIFIED BY 'password_rahasia_juga'; FLUSH PRIVILEGES;
  • 20.
  • 22. Separate database access (4) In sysconfig-opac.inc.php: define('DB_USERNAME', 'opacuser'); define('DB_PASSWORD', 'password_rahasia'); In sysconfig.inc.php: define('DB_USERNAME', 'slimsadmin'); define('DB_PASSWORD', 'password_rahasia_juga');
  • 23. Separate database access (5) Edit index.php: require '../sysconfig.inc.php'; change to require '../sysconfig-opac.inc.php';
  • 24. Separate database access (6) Since SLiMS version 3 stable 15 (matoa), just copy sysconfig.local.inc.php to sysconfig.local.fa.inc.php and adjust the database connection setting for admin user.
  • 25. Access Restriction based on IP Address to Librarian Login.
  • 26. IP Restriction to LibLogin Edit lib/contents/login.inc.php: $allowed_liblogin_ip = array('127.0.0.1'); $remote_addr = $_SERVER['REMOTE_ADDR']; $confirmation = 0; foreach ($allowed_liblogin_ip as $ip) { if ($ip == $remote_addr) { $confirmation = 1; } } if (!$confirmation) { header (&quot;location:index.php&quot;); }
  • 27. HTTP Secure Connection to Librarian Login
  • 28. HTTPS Secure Connection (1) Edit lib/contents/login.inc.php: if ($_SERVER['SERVER_PORT'] != '443') { header (&quot;location:index.php&quot;); }
  • 29. HTTPS Secure Connection (2) Edit admin/index.php: if ($_SERVER['SERVER_PORT'] != '443') { header (&quot;location:../index.php&quot;); }
  • 30. Security by obscurity (1) Remove link to Librarian Login in OPAC
  • 31. Security by obscurity (2) <li><a class=&quot;menu&quot; href=&quot;index.php?p=login&quot;><span><?php echo __('Librarian LOGIN'); ?></span></a></li> Change to <!-- <li><a class=&quot;menu&quot; href=&quot;index.php?p=login&quot;><span><?php echo __('Librarian LOGIN'); ?></span></a></li> -> Or delete the line.
  • 32. Do not use shared account. Every staff should login with their own account. Separate Account for Staffs
  • 33. Choose the right Operating System for your needs. Choose the Right OS
  • 34. Suhosin! sudo apt-get install php5-suhosin PHP Hardening
  • 37.  
  • 38. Choose the web server with built-in security features
  • 39. PHP Accelerator/Opcode cache Performance tuning sudo apt-get install php-apc APC sudo apt-get install php5-xcache xcache