FreeBSD Web Server

1,037 views

Published on

a tutorial guide explaining how to install FreeBSD as a web server, an experience at IMTelkom (http://www.imtelkom.ac.id)

Published in: Education, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,037
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
39
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

FreeBSD Web Server

  1. 1. Standar Instalasi FreeBS D @ Institut Manajemen Telkom ( http://www.imtelkom.ac.id)Instalasi Apache 2.xApache adalah aplikasi untuk web server yg paling popular digunakan, sederhanapemakaiannya, dan sangat responsive meskipun hanya membutuhkan resourcesystem yang minimal.Untuk instalasi Apache 2.0 anda harus login ke server sebagai SuperUser (root).# cd /usr/ports/www/apache2# make install clean……… <tunggu sampai selesai, jika ada pertanyaan gunakan default saja> ………# edit /usr/local/etc/apache2/httpd.conf……… (hanya entry yg perlu di-edit)Listen 10.1.1.2:80  sesuaikan dgn alamat IP dari serverServerAdmin sisfo@imtelkom.ac.idServerName www.imtelkom.ac.id:80  sesuaikan dgn nama serverDocumentRoot /data/web<Directory /data/web> Allow from all</Directory>ServerTokens ProdServerSignature Off………# ipfw add allow tcp from any to 10.1.1.2 dst-port 80 setup# cat /etc/rc.conf | grep apacheapache2_enable="YES"apache2ssl_enable="YES"Apache 2.2 memberikan fitur yang lebih banyak dibandingkan Apache 2.0,meskipun fitur2 tersebut tidak terlalu berguna untuk pemakaian sebagai webserver standar. Selain perbedaan pada fitur yang disediakan, Apache 2.2 jugamemisahkan antara konfigurasi standar dengan konfigurasi modul tambahan,seperti misalnya :# cd /usr/local/etc/apache22/# ls –l httpd.conf  konfigurasi standar# ls –l extra/httpd-vhosts.conf  konfigurasi Virtual Host# ls –l extra/httpd-ssl.conf  konfigurasi SSLUntuk instalasi Apache 2.2 anda harus login ke server sebagai SuperUser (root).# cd /usr/ports/www/apache22# make install cleanUntuk selanjutnya, dokumen akan menjelaskan setting dan konfigurasi dariApache 2.0, sementara untuk Apache 2.2 bisa disesuaikan.
  2. 2. Standar Instalasi FreeBS D @ Institut Manajemen Telkom ( http://www.imtelkom.ac.id)Dengan alasan keamanan data, SSL (Secure Socket Layer) harus diaktifkan :# cd /usr/local/etc/apache2# openssl genrsa > server.key# openssl req -new -x509 -key server.key -out server.crt -days 365Country Name (2 letter code) []:IDState or Province Name (full name) []:West JavaLocality Name (eg, city) []:BandungOrganization Name (eg, company) []:IM TelkomOrganizational Unit Name (eg, section) []:SisfoCommon Name []:www.imtelkom.ac.id  gunakan nama serverEmail Address []:sisfo@imtelkom.ac.id# mkdir ssl.key# mv server.key ssl.key/# mkdir ssl.crt# mv server.crt ssl.crt/# edit ssl.confDocumentRoot "/data/web"ServerName www.imtelkom.ac.id:443ServerAdmin sisfo@imtelkom.ac.id# ipfw add allow tcp from any to 10.1.1.2 dst-port 443 setupTips:- script untuk menjalankan apache2 ada di /usr/local/etc/rc.d/apache2.sh /usr/local/etc/rc.d/apache2.sh start  menjalankan apache2 /usr/local/etc/rc.d/apache2.sh restart  mematikan apache2 dan menjalankannya kembali dgn membaca file konfigurasi httpd.conf yg baru- sebelum menjalankan file konfigurasi yg baru, sebaiknya mengecek terlebih dahulu validitas syntax di dalam file httpd.conf dengan : # apachectl configtest Syntax OK- selain menggunakan /usr/local/etc/rc.d/apache2.sh restart kita juga bisa menggunakan command berikut untuk me-restart apache2 : # apachectl graceful- untuk melihat siapa yg sedang mengakses apache : # tail -f /var/log/httpd-access.log- "Alias" digunakan untuk redirection request web ke suatu folder : Alias /nilai "/data/web/akademik/html/nilai" <Directory "/data/web/akademik/html/nilai"> Allow from all </Directory> maka request ke http://server/nilai akan direply oleh index.php atau index.html di folder /data/web/akademik/html/nilai- "Proxy" digunakan untuk redirection request web ke suatu folder di server lain: ProxyPass /mhs http://10.1.1.20/mhs ProxyPassReverse /mhs http://10.1.1.20/mhs ProxyVia On  cukup ditulis 1x saja maka request ke http://server/mhs akan diforward ke server 10.1.1.20 (dari sisi client yg dianggap menjawab request tsb adalah tetap http://server)- Apache 2.2 menyediakan setting proxy pada VirtualHost: <VirtualHost 10.1.1.2:80> ProxyPreserveHost On ProxyPass / http://10.1.1.20/ ProxyPassReverse / http://10.1.1.20/ ServerName mhs.imtelkom.ac.id </VirtualHost>
  3. 3. Standar Instalasi FreeBS D @ Institut Manajemen Telkom ( http://www.imtelkom.ac.id)- Apache 2.0 memiliki beberapa modul yg bisa di-install maupun tidak : # cd /usr/ports/www/apache20 # make show-categories AUTH  untuk membatasi user yg bisa mengakses suatu page (default ON) DAV  untuk Web DAV (sharing hard disk server) (default ON) EXPERIMENTAL  optional (default OFF) LDAP  untuk LDAP (default OFF) MISC  modul standar (default ON) PROXY  untuk melewatkan query HTTP ke server lain (default OFF) SSL  untuk SSL (default OFF) SUEXEC  untuk SUEXEC (default OFF) THREADS  untuk CGI (default OFF) # make install WITHOUT_DAV_MODULES=yes WITH_PROXY_MODULES=yes  akan meng-install Apache20 tanpa modul DAV tapi dengan tambahan modul PROXY Jika Apache sudah terlanjur di-install, maka kita tidak bisa menambah atau mengurangi modul. Untuk dapat menambah atau mengurangi modul, Apache harus di-"make deinstall" terlebih dahulu, baru diulang kembali "make install WITH……"- Modul pada Apache 2.2 secara default akan selalu diinstall, dan untuk menonaktifkannya kita bisa melakukannya pada file konfigurasi standar: # vi /usr/local/etc/apache22/httpd.conf LoadModule authn_file_module libexec/apache22/mod_authn_file.so LoadModule authn_dbm_module libexec/apache22/mod_authn_dbm.so LoadModule authn_anon_module libexec/apache22/mod_authn_anon.so LoadModule authn_default_module libexec/apache22/mod_authn_default.so LoadModule authn_alias_module libexec/apache22/mod_authn_alias.so LoadModule authz_host_module libexec/apache22/mod_authz_host.so LoadModule authz_user_module libexec/apache22/mod_authz_user.so LoadModule authz_dbm_module libexec/apache22/mod_authz_dbm.so LoadModule authz_owner_module libexec/apache22/mod_authz_owner.so LoadModule authz_default_module libexec/apache22/mod_authz_default.so LoadModule auth_basic_module libexec/apache22/mod_auth_basic.so LoadModule auth_digest_module libexec/apache22/mod_auth_digest.so LoadModule file_cache_module libexec/apache22/mod_file_cache.so LoadModule cache_module libexec/apache22/mod_cache.so LoadModule disk_cache_module libexec/apache22/mod_disk_cache.so LoadModule dumpio_module libexec/apache22/mod_dumpio.so LoadModule reqtimeout_module libexec/apache22/mod_reqtimeout.so LoadModule include_module libexec/apache22/mod_include.so LoadModule filter_module libexec/apache22/mod_filter.so LoadModule charset_lite_module libexec/apache22/mod_charset_lite.so LoadModule deflate_module libexec/apache22/mod_deflate.so LoadModule log_config_module libexec/apache22/mod_log_config.so LoadModule logio_module libexec/apache22/mod_logio.so LoadModule env_module libexec/apache22/mod_env.so LoadModule mime_magic_module libexec/apache22/mod_mime_magic.so LoadModule cern_meta_module libexec/apache22/mod_cern_meta.so LoadModule expires_module libexec/apache22/mod_expires.so LoadModule headers_module libexec/apache22/mod_headers.so LoadModule usertrack_module libexec/apache22/mod_usertrack.so LoadModule unique_id_module libexec/apache22/mod_unique_id.so LoadModule setenvif_module libexec/apache22/mod_setenvif.so LoadModule version_module libexec/apache22/mod_version.so ……… (dan seterusnya)

×