Salah satu keunggulan Linux adalah dapat digunakan sebagai
Desktop ataupun Server sekaligus. Server di Linux yang paling mudah
dipasang adalah WebServer dan digunakan untuk berbagai keperluan seperti
untuk membuat local web server untuk keperluan belajar membuat website
atau bagi web desainer dalam membuat desain web. Catatan kali ini adalah
membuat WebServer LAMP yang merupakan kepanjangan dari Linux, Apache
WebServer, MySQL database server serta PHP. Fokusnya adalah mengenai
aturan pengelolaan Service httpd dan mysqld yang tidak semudah seperti
waktu dulu pada Rilis Fedora 14 dan sebelumnya. Pada rilis-rilis lawas
tersebut, httpd dan mysql sudah terdapat pada System Config Services.
Untuk start dan stop menggunakan System Config Services.
Inslatasi Linux Distribusi Fedora
Asumsinya bahwa Fedora 16 XFCE sudah terpasang dengan
metode LiveUSB.
Fedora 16 XFCE LiveCD dapat diunduh pada Fedora Project. Bisa juga
menggunakan LiveCD Fedora 16 biasa (GNOME), namun buat ngoprek server
sebaiknya tingalkan saja keindahan Desktop dan pilih kecepatan dan
kesederhanaan yang ada di XFCE.
Mulai Fedora 15 dan khususnya Fedora 16 untuk mengelola Services
digunakan systemctl yang secara bawaannya belum memasukkan httpd dan
mysqld sebagai service dan harus dimasukkan secara manual. Tujuannya
adalah unuk memaksimalkan keamanan (
Security) jika memang kedua
daemon tersebut tidak diperlukan. Sebelum instalasi httpd (Apache),
MySQL dan PHP, pasang dulu saja beberapa paket aplikasi System Config,
sebagai contoh adalah system-config-services dan system-config-firewall
jika memang dirasakan perlu.
System Config Services
Instalasi System Config Services adalah sebagai berikut:
01 | [ywandanoe@localhost ~]$ sudo yum install system-config-services |
02 | [ sudo ] password for ywandanoe: |
03 | Loaded plugins: langpacks, presto, refresh-packagekit |
05 | adobe-linux-i386 | 951 B 00:00 |
06 | fedora-chromium | 3.4 kB 00:00 |
07 | fedora-chromium/primary_db | 14 kB 00:00 |
08 | fedorautils | 3.2 kB 00:00 |
09 | rpmfusion- free -updates | 3.3 kB 00:00 |
10 | rpmfusion- free -updates/primary_db | 8.4 kB 00:00 |
11 | rpmfusion-nonfree-updates | 3.3 kB 00:00 |
12 | rpmfusion-nonfree-updates/primary_db | 7.8 kB 00:00 |
14 | updates/metalink | 5.2 kB 00:00 |
16 | updates/primary_db | 1.2 MB 00:14 |
17 | updates/group_gz | 431 kB 00:06 |
18 | Setting up Install Process |
20 | --> Running transaction check |
21 | ---> Package system-config-services.noarch 0:0.101.7-1.fc16 will be installed |
22 | --> Processing Dependency: gamin-python for package: system-config-services-0.101.7-1.fc16.noarch |
23 | --> Running transaction check |
24 | ---> Package gamin-python.i686 0:0.1.10-10.fc16 will be installed |
25 | --> Finished Dependency Resolution |
29 | ============================================================= |
30 | Package Arch Version Repository Size |
31 | ============================================================= |
33 | system-config-services noarch 0.101.7-1.fc16 fedora 199 k |
34 | Installing for dependencies: |
35 | gamin-python i686 0.1.10-10.fc16 fedora 33 k |
38 | ============================================================= |
41 | Total download size: 232 k |
System Config Services pada Fedora XFCE dapat dijalankan melalui Applications Menu >> Administration >> Services
Instalasi Apache HTTPD server
Instalasi httpd server dapat menggunakan paket yang sudah tersedia
dalam repo everything Fedora 16, atau jika ingin paket-paket server
rilis versi terbaru dapat menggunakan
repository Remi.
Asumsinya semua paket akan memakai repository yang sudah tersedia di
Fedora 16. Untuk memasang repo Remi secara manual dapat membaca post
mengenai
Pasca Instalasi Fedora 15. Untuk memasang httpd server cukup dilakukan dengan perintah:
1 | [ywandanoe@localhost ~]$ sudo yum install httpd |
Bisa di periksa pada System Config Services belum terdapat service httpd seperti yang diperlihatkan pada gambar di atas.
Instalasi MySQL Server
MySQL server tidak memiliki aplikasi GUI untuk mengelolanya, biasanya
pengguna harus menguasai perintah-perintah berbasis text untuk
mengelola database seperti menambahkan user, melakukan perubahan
privileges user, membuat database dan sebagainya. Pada kegiatan awal
setelah instalasi MySQL biasanya dilanjutkan dengan paling tidak
menambahkan user selain root yang digunakan untuk keperluan selanjutnya.
Tools yang bagus dan cukup mudah untuk dipakai untuk mempelajari MySQL
sekaligus perintah teksnya adalah MySQL Workbench. Instalasinya adalah
sebagai berikut, instalasi MySQL Server dan MySQL Workbench,
1 | [ywandanoe@localhost ~]$ sudo yum install mysql-server mysql-workbench |
Selanjutnya adalah menghidupkan httpd dan mysql service daemon,
httpd service
1 | [ywandanoe@localhost ~]$ sudo systemctl enable httpd.service |
2 | [ sudo ] password for ywandanoe: |
3 | ln -s '/lib/systemd/system/httpd.service' '/etc/systemd/system/multi-user.target.wants/httpd.service' |
mysql service
1 | [ywandanoe@localhost ~]$ sudo systemctl enable mysqld.service |
2 | ln -s '/lib/systemd/system/mysqld.service' '/etc/systemd/system/multi-user.target.wants/mysqld.service' |
Periksa pada System Config Service untuk melihat httpd dan mysqld sebagai service,
Terlihat bahwa httpd dan mysqld sudah terdaftar dalam service pada
System Config Services, untuk menjalankan service httpd dan mysql
tinggal klik saja tombol start, tunggu beberapa saat sampai tanda
segitiga berubah menjadi kotak.
Tahap berikutnya melakukan pemberian root password mysql dengan menggunakan mysql_secure_installation,
1 | [ywandanoe@localhost ~]$ sudo /usr/bin/mysql_secure_installation |
Selain men-set root mysql password, perintah ini akan melakukan
beberapa langkah pengamanan seperi menghapus database test, menghapus
anonimous user dan beberapa langkah pengamanan lainnya,
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MySQL to secure it, we\'ll need the current
password for the root user. If you\'ve just installed MySQL, and
you haven\'t set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.
Set root password? [Y/n] Y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] Y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] Y
... Success!
By default, MySQL comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] Y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] Y
... Success!
Cleaning up...
All done! If you\'ve completed all of the above steps, your MySQL
installation should now be secure.
Thanks for using MySQL!
Biasanya untuk keperluan web server lokal, mysql diakses sebagai
localhost saja, kecuali jika ingin diakses dari tempat lain maka perlu
di set port 3306 pada firewall. Root User Mysql digunakan hanya untuk
keperluan penting saja, oleh karena itu buatlah user lain dan berikan
beberapa grant access dengan menggunakan MySQL Workbench.
Instalasi PHP Hypertext Preprocessor
Jika ingin memasang WordPress, Joomla!, Drupal ataupun CodeIgniter
misanya, atau ingin belajar PHP, maka tahap terakhir adalah memasang php
dan beberapa pustaka php lainnya seperi php-mysql sebagai berikut,
1 | [ywandanoe@localhost ~]$ sudo yum -y install php php-common php-pear php-pdo php-mysql php-pecl-memcache php-gd php-mbstring php-mcrypt php-xml |
Selanjutnya cek konfigurasi web server, mysql dan php dengan membuat file info.php di webroot directory,
1 | [ywandanoe@localhost ~]$ sudo gedit /var/www/html/info.php |
Jalankan firefox dan buka halaman info.php yang telah dibuat tadi
Akses MySQL dan HTTPD dari Jaringan
Agar supaya MySQL dan WebServer LAMP dapat diakses dari PC komputer
lain melalui Jaringan, maka perlu di set sesuatu pada Firewal. Caranya
mudah saja cukup memakai System Config Firewall pada XFCE Applications
Menu >> Administration >> Firewall
Setting httpd untk akses jaringan dari pc lain,
Setting Port 3306 untuk akses MySQL dari jaringan (jika perlu), Klik
Other Port seperti yang ditujukkan pada gambar di atas dan akan muncul
jendela konfigurasi Port and Protocol,
Hey… pssst… pssstt!
Ternyata setting WebServer di Linux sangat mudah ya? Mengapa
settingnya tidak pakai command line? Linux itu sekarang milik semua
orang termasuk pembelajar seperti kita bukan milik admin dan geek saja…
ya…
sumber
http://canmasagi.tripelpley.com/2011/11/lamp-server-dengan-fedora-16-xfce/
Tidak ada komentar:
Posting Komentar