Hello there! I am

Chau

Beginner System Engineer Beginner DevOps Let's scroll!!! :)

About me

Hello

I'mChau

System Engineer

My full name is Nguyen Dinh Chau. I studied at Danang University of Technology and just graduated on August, 12th, 2017.

I'm searching for a position of System Admin. I wanna become a excellent System Admin engineer in next 3 years.

Experience

Network

Understand tcp/ip and osi network model.

Understand about ip routing.

Deploy ASA firewall (simulate)

Simulate a VPN for Danang University of Technology using MPLS/IPSec (simulate)

Work with AAA model and TACACS+/RADIUS protocol by using Cisco ACS on Windows Server (simulate)

Deploy network system for Nam Hai resort (One Corporation)

System

Deploy LAMP/LEMP stack on Linux server (CentOS/Ubuntu)

Deploy DNS, FPT... service

Deploy Samba service

Deploy mailserver: Zimbra

Deploy monitor server: Zabbix

...

Posts

Cài đặt LAMP trên Ubuntu server 16.04

LAMP là một nhóm các phần mềm mã nguồn mở được cài đặt cùng nhau để xây dựng môi trường web server :
  • Hệ điều hành Linux
  • Web server Apache
  • Hệ quản trị CSDL MySQL
  • Ngôn ngữ lập trình PHP
Đầu tiên, cần phải cập nhật lại các package.

sudo apt-get update

Cài đặt apache2 và php
sudo apt-get install -y apache2 php libapache2-mod-php php-mcrypt

Sau bước này, nếu bạn truy cập http://localhost, http://127.0.0.1 hoặc là truy cập http://192.168.1.179 (ip của bạn trong mạng) thành công tức là apache đã hoạt động.

Kiểm tra xem php và apache có tương thích không, ta tạo 1 file info.php 
vim /var/www/html/info.php

với nội dung:

<?php phpinfo(); 

truy cập http://192.168.1.179/info.php nếu hiển thị như hình dưới thì coi như đã cài đặt thành công.

Tiếp theo, chúng ta sẽ cài MySQL với câu lệnh:

sudo apt-get install mysql-server php-mysql

Quá trình cài đặt cũng khá đơn giản. Hệ thống sẽ yêu cầu bạn đặt mật khẩu cho tài khoản root của mysql. Nhập mật khẩu xong nhập lại là ok thôi.
Nếu bạn không quen dùng MySQL bằng CLI thì có thể cài phpmyadmin để quản lý db 1 cách trực quan.

sudo apt-get install phpmyadmin

Trong lúc cài đặt sẽ yêu cầu chúng ta chọn webserver apache2 hay lighttpd để cấu hình thì bạn tích vào apache2 và enter.

Mở file /etc/apache2/apache2.conf và thêm dòng sau vào cuối file

Include /etc/phpmyadmin/apache.conf

Cuối cùng là khởi động lại apache.

service apache2 restart


Cài đặt Zabbix trên Ubuntu Server (16.04 LTS)


Mình đã có cài đặt và cấu hình LAMP stack trên server ubuntu này rồi. Nếu server mới thì cài đặt LAMP stack vào trước nhé.

Đầu tiên là cần cài repo của zabbix cho apt với câu lệnh sau:

wget http://repo.zabbix.com/zabbix/3.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.2-1+xenial_all.deb
dpkg -i zabbix*
sudo apt-get update

Sau đó, cài đặt các gói zabbix-server-mysql và zabbix-frontend-php

sudo apt-get install zabbix-server-mysql zabbix-frontend-php

Sau khi cài đặt thành công, các bạn cần phải tạo database và cấu hình để cài đặt server.

mysql -u root -p
Enter password:

-> create database zabbix charater set utf8 collate utf8_bin;
-> grant all privileges on zabbix.* to zabbix@localhost identified by 'password';
-> flush privileges;
-> exit
cd /usr/share/doc/zabbix-server-mysql
gunzip create.sql.gz
mysql -u root -p zabbix < create.sql
Enter password:

Đến đây thì cần cấu hình 1 chút để có thể cài đặt zabbix server với 2 file zabbix_server.conf và php.ini

vim /etc/zabbix/zabbix_server.conf

Tìm các dòng sau và sửa đúng với thông tin mà các bạn vừa tạo ở bước trên.
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=password

Sửa lại 1 chút thông số của file php.ini

vim /etc/php/7.0/apache2/php.ini

post_max_size = 16M
max_execution_time = 300
max_input_time = 300
date.timezone = "your timezone" ; Asia/Ho_Chi_Minh

Copy file apache.conf vào conf-available để apache và zabbix có thể làm việc cùng nhau.

cp /etc/zabbix/apache.conf /etc/apache2/conf-available/zabbix.conf

Bật cấu hình trong file zabbix.conf

a2enconf zabbix.conf

Đảm bảo mod alias được bật.

a2enmod alias ; nếu không được thì bạn cần sử dụng với quyền root

Nếu bạn đang sử dụng firewall thì cần phải mở port 10050/tcp và 10051/tcp và tất nhiên, phải đảm bảo port 80 phải được mở. Còn nếu không dùng thì bạn có thể bỏ qua bước này.

sudo ufw allow port/protocol
sudo ufw reload

Khởi động lại apache và bật zabbix server.

service apache2 restart
service zabbix-server start

Đến bước này thì cơ bản đã hoàn tất phần back-end. Bây giờ sẽ cài đặt phần front-end cho zabbix.
Bạn truy cập vào http://192.168.1.179/zabbix để tiến hành cài đặt
Giao diện cài đặt qua web
Thông tin cài đặt của DB zabbix lấy ở trên.
Sau khi cài đặt xong, bạn đăng nhập với username Admin và pass zabbix (chú ý là Admin chứ không phải admin, mình bị nhầm chỗ này, xem đi xem lại document mấy lần + google mãi k được, sau mới phát hiện ra)

Sau khi đăng nhập thì ta sẽ vào được Dashboard của Zabbix.


Tìm hiểu về hot swap/hot plug

Thuật ngữ Hot swap (tạm dịch: trao đổi nóng) là khả năng tháo gỡ và thay thế các bộ phận của một chiếc máy tính trong khi hệ thống vẫn đang chạy. Người ta còn dùng thuật ngữ hot plug để chỉ khả năng này.

Nhờ hot swap, các nhà quản trị mạng có thể thay thế đĩa cứng trong khi hệ thống vẫn hoạt động
Tháo lắp "nóng" thiết bị trong khi hệ thống vẫn đang hoạt động. Bạn có thể gắn vào và tháo ra thiết bị mà không cần phải tắt máy (shutdown) hay khởi động lại (reboot). Khả năng này cho phép bạn gắn hay tháo gỡ một cách dễ dàng các linh kiện ngoại vi như chuột, bàn phím, máy in, thậm chí là ổ cứng (đối với các server).

Nguyên lý hoạt động: Các máy hỗ trợ hot swap cần phải có khả năng dò tìm và phát hiện có một bộ phận nào đó vừa được gỡ ra. Ngoài ra, tất cả các mối kết nối điện và cơ khí cũng cần phải được thiết kế làm thế nào để không làm tổn hại cho thiết bị cũng như người sử dụng mỗi khi tháo gỡ. Cuối cùng, tất cả các bộ phận khác của hệ thống đó phải được thiết kế để việc tháo gỡ một bộ phận khác không làm ảnh hưởng tới hoạt động của chúng.


Cài đặt SAMBA trên máy chủ CentOS 7

Đầu tiên, chúng ta cần biết Samba là gì?
Samba là một phần mềm miễn phí chủ yếu dùng để chia sẻ file giữa các nền tảng khác nhau như Windows và Linux bằng cách sử dụng giao thức SMB/CIFS.
Sau đây chúng ta sẽ tiến hành cài đặt Samba trên CentOS 7

B1: Cài đặt Samba

yum install samba -y
Installed:
samba.x86_64 0:4.4.4-14.el7_3
Dependency Installed:
pytalloc.x86_64 0:2.1.6-1.el7
samba-common-libs.x86_64 0:4.4.4-14.el7_3
samba-common-tools.x86_64 0:4.4.4-14.el7_3
samba-libs.x86_64 0:4.4.4-14.el7_3
Complete!

B2: Thêm user và group sử dụng s trên centos

useradd samba_u01 -s /sbin/nologin
smbpasswd -a samba_u01
groupadd smbusers
usermod -G smbusers samba_u01

B3: Thêm thư mục dùng để chia sẻ file

mkdir -p /share_samba

Thay đổi quyền sở hữu

chown :smbusers /share_samba/

B4: Cấu hình file "/etc/samba/sbm.conf"

vim /etc/samba/sbm.conf

Thêm các dòng sau vào cuối file

[samba_u01]
comment = This is description
path = /share_samba
writable = yes
valid users = samba_u01
B5: Chạy dịch vụ Samba và cho Samba khởi động cùng hệ thống

systemctl start smb.service
ststemctl enable smb.service

B6: Mở port 137/udp 139/tcp 445/tcp qua iptables

iptables -A IN_public_allow -p udp -m udp --dport 137 -m conntrack --ctstate NEW -j ACCEPT
iptables -A IN_public_allow -p tcp -m tcp --dport 139 -m conntrack --ctstate NEW -j ACCEPT
iptables -A IN_public_allow -p tcp -m tcp --dport 445 -m conntrack --ctstate NEW -j ACCEPT
Như vậy là chúng ta đã có thể share file trong mạng sử dụng samba.

Đối với client linux, để truy cập vào folder được share bằng samba, chúng ta có thể dùng smb client hoặc có thể mount vào /mnt, hoặc nhanh hơn là dùng lệnh:


Hệ thống sẽ hiện ra 1 hộp thoại để bạn nhập username và password đã tạo ở bước 2.
Sau khi đăng nhập thành công, sẽ có kết quả như sau:




Đối với client Windows, mở hộp thoại Run (Windows + R), nhập vào \\192.168.1.254\samba_u01 rồi nhập username và password đã tạo ở bước 2 cũng có thể truy cập vào folder được share bởi samba.