Tình hình phát triển và ứng dụng hệ điều hành Linux nguồn mở tại Việt Nam

MỤC LỤC

Phát triển ứng dụng trên môi trường Linux (3 tiết)

Cách đây không lâu, phong trào phát triển và sử dụng hệ điều hành nguồn mở, trong đó nổi bật là Linux, đã bùng phát mạnh mẽ với mục tiêu lãng mạn: phá vỡ sự độc quyền của Microsoft, hạ giá thành phần mềm trong máy tính và tạo ra cái riêng của mình. Với Việt Nam, chúng ta đã có 2 cuộc hội thảo Quốc gia về phần mềm nguồn mở, cũng đã có 3 công ty công bố hệ điều hành Linux Việt Nam (Tổng công ty điện tử tin học VN, CMC, Vietkey), và Chính phủ vừa phê duyệt dự án tổng thể ứng dụng và phát triển phần mềm nguồn mở ở Việt Nam giai đoạn 2004-2008. Những nội dung chính của dự án có thể là: lựa chọn dòng phân phối Linux phù hợp với từng môi trường ứng dụng Linux cụ thể ở Việt Nam, xây dựng Vietnam Linux Base Standards, lập và triển khai Vietnam Linux Documentation Project, lập quỹ Linux Việt Nam.

Tham dự hội thảo có thứ trưởng bộ thông tin và truyền thông ông Nguyễn Minh Hồng, đại diện lãnh đạo một số đơn vị chức năng thuộc bộ thông tin và truyền thông, đại diện lãnh đạo một số sở thông tin và truyền thông, đại diện câu lạc bộ VFOSSA, đại diện các doanh nghiệp viễn thông, công nghệ thông tin… phát biểu khai mạc hội thảo, thứ trưởng bộ thông tin và truền thông. Các chuyên gia hàng đầu thế giới đã khẳng định phần mềm nguồn mở làm giảm rủi ro tấn công từ bên ngoài điều đó giúp thúc đẩy phát triển ngành công nghiệp công nghệ thông tin, đặc biệt là ngành dịch vụ công nghệ thông tin khi sử dụng phần mềm nguồn mở.

Hình 7.1: Sử dụng Geany để lập trình C
Hình 7.1: Sử dụng Geany để lập trình C

Quản lý dịch vụ và bảo mật (3 tiết)

Giải thích câu lệnh: iptables được cấu hình cho phép firewall chấp nhận các gói dữ liệu sử dụng TCP, đến từ card mạng eth0 với địa chỉ IP nguồn là bất kỳ, đi tới địa chỉ đích 192.168.1.58 qua card mạng eth1. Ví dụ, nếu bạn có một chương trình đáp ứng các yêu cầu đến một socket mà không cần phải truy cập vào file system, thì chương trình đó chỉ được phép lắng nghe trên một socket cố định và không có quyền đụng đến file system. Các hàm hook mà security_ops gọi đến được định nghĩa động như là một module kernel có thể tải lên được, còn trong trường hợp không có module nào được load thì nó sẽ chứa những hàm dummy Những hàm này sẽ hiện thực policy theo chuẩn Linux DAC.

Sự can thiệp này gồm có thao tác quản lý (creation, signaling, waiting), nạp chương trình (execve), quản lý hệ thống file (superblock, inode, và filehooks), IPC (message queues, shared memory, và semaphore operations), module hooks (chèn và xoá), và network hooks (gồm có sockets, netlink, network devices, và những giao diện protocol khác). Việc này có 2 tác dụng chính là hạn chế việc tiêu tốn tài nguyên hệ thống cho sự thực thi của dịch vụ, thứ 2 là nó đảm bảo rằng dịch vụ không bị khai thác trái phép từ bên ngoài vào làm tiền đề cho sự mất an toàn trong hệ thống mạng.

Hình 10.1. Security policy and enforcement are independent using SELinux.
Hình 10.1. Security policy and enforcement are independent using SELinux.

Cấu hình dịch vụ mạng căn bản trên Linux (3 tiết)

Hệ thống dịch vụ cho phép người quản trị có thể thực thi các lệnh từ xa (từ máy client) đến trực tiếp máy server cài dịch vụ telnet server mà không cần phải trực tiếp ngồi sử dụng máy server để thao tác. Nhưng để đảm bảo tính bảo mật cho hệ thống, một điều cảnh báo là chúng ta không nên làm việc từ xa bằng telnet mà nên làm việc trực tiếp tại máy Linux. Như ta đã biết telnet traffic không được mã hóa do đó nếu ta cho telnet server hoạt động trên tcp port 23 thì không được an toàn vì thế ta có thể đặt telnet server hoạt động trên tcp port khác 23.

Có rất nhiều người muốn biết mật khẩu của người dùng root để xâm nhập vào hệ thống nhằm mục đích phá hoại hệ thống hay tìm kiếm những thông tin nào đó. Chương trình telnet trong Linux cho phép người dùng đăng nhập vào hệ thống Linux từ xa, như nó có khuyết điểm của chương trình này là tên người dùng và mật khẩu gởi qua mạng không được mã hóa.

Hình 12.3: Thẻ Proxy.
Hình 12.3: Thẻ Proxy.

Cài đặt và cấu hình dhcp server và dns server trên linux (3 tiết)

Server này có nhiệm vụ sao lưu tất cả những dữ liệu trên Primary Name Server và khi Primary Name Server bị gián đoạn thì nó sẽ đảm nhận việc phân giải tên máy tính thành địa chỉ IP và ngược lại. Entry đầu tiên trong file là SOA (start of authority) resource record. Trong mỗi tập tin CSDL phải có một và chỉ một record SOA Record SOA chỉ ra rằng máy chủ name server là nơi cung cấp thông tin tin cậy từ dữ liệu có trong zone. Refresh number Retry number Expire number Time-to-live number ). Record MX chỉ ra một mail exchanger cho một miền – mail exchanger là một máy chủ xử lý (chuyển mail đến mailbox cục bộ hay làm gateway chuyền sang một giao thức chuyển mail khác như UUCP) hoặc chuyển tiếp mail đến một mail exchanger khác (trung gian) gần với mình nhất để đến tới máy chủ đích cuối cùng hơn dùng giao thức SMTP (Simple Mail Transfer Protocol).

 Các máy server trên mạng khi nhận được gói tin yêu cầu đó, nếu còn khả năng cung cấp địa chỉ IP, đều gửi lại cho máy client gói tin DHCPOFFER, đề nghị cho thuê một địa chỉ IP trong một khoản thời gian nhất định, kèm theo là một subnet mask và địa chỉ của server.  Máy server được client chấp nhận sẽ gửi ngược lại một gói tin DHCPACK như là một lời xác nhận, cho biết là địa chỉ IP đó, subnet mask đó và thời hạn cho sử dụng đó sẽ chính thức được áp dụng.

Hình 14.3: Cơ chế phân giải địa chỉ IP.
Hình 14.3: Cơ chế phân giải địa chỉ IP.

Thảo luận 3: các dịch vụ mạng cần thiết để triển khai mạng LAN theo mô hình doanh nghiệp (3 tiết)

Right click vào biểu tượng My Network Places > chọn Properties Double click vào biểu tượng card mạng Local Area Connection Chọn Internet Protocol, sau đó nhấp chọn Properties.

Dịch vụ chia sẻ dữ liệu (3 tiết)

Sau đó, máy khách lắng nghe trên cổng N+1 và gửi lệnh đến FTP serrver và từ cổng dữ liệu của m ình, FTP server kết nối lại với cổng dữ liệu của máy khách đã khai báo trước đó. Khi FTP server hoạt động ở chế độ chủ động, client không tạo kết nối thật sự vào cổng dữ liệu của FTP server, mà chỉ đơn giản là thông báo cho FTP server biết rằng nó đang lắng nghe trên cổng nào và Server phải kết nối ngược vào cổng đó. Hoạt động ở chế độ Passive: Ở chế độ thụ động, FTP client tạo kết nối đến server, tránh vấn đề firewall lọc kết nối đến cổng của máy bên trong từ server.

Khi kết nối FTP được mở, client sẽ mở 2 cổng dành riêng (>1024), cổng thứ nhất dùng để liên lạc với cổng 21 của FTP server, nhưng thay v ì gửi lệnh PORT và sau đó là server kết nối ngược trở lại, thì lệnh PASS được phát ra. FTP Server: FTP server là máy chủ lưu trữ những tài nguyên và hổ trợ giao thức FTP để giao tiếp với những máy khác cho phép truyền dữ liệu trên internet.

Hình 16.1: Liệt kê danh sách các portmap.
Hình 16.1: Liệt kê danh sách các portmap.

Dịch vụ quản lý tài nguyên tập chung (3 tiết)

Trong trường hợp không mã hóa mật mã, người dùng chỉ có thể sử dụng dịch vụ Samba giữa các máy Linux với nhau hoặc người dùng phải cấu hình lại máy tính Windows nếu muốn sử dụng dịch vụ Samba trên Linux.  Trong tập tin smb.conf có thể sử dụng một số biến thay thế như %m – tên NetBIOS của máy client, %Samba- tên dịch vụ hiện hành (nếu có), %u – tên người dùng hiện hành (nếu có)…Ví dụ: “path = /home/%u” sẽ được phiên dịch là “path=/ymp/foo” nếu tài khoản foo thực hiện truy nhập. Tài khoản người dùng Samba là một tài khoản được xây dựng dựa trên tài khoản hệ thống (tài khoản của Linux), do vậy, phải có tài khoản người dùng hệ thống người dùng mới có thể tạo được tài khoản samba.

Để thêm một cây thư mục vào danh sách các chia sẻ samba, bạn nhập vào tên mà bạn muốn dùng cho việc chia sẻ trên hệ thống mạng, bạn nhập vào tên chia sẻ ở hộp thoại Create share và nhấp vào nút Create share.  Nếu chia sẻ này có thể được truy cập cho người dùng khách (guest) nghĩa là người dùng windows sẽ không phải nhập vào thông tin tài khoản để truy cập chọn Yes từ danh sách guest sổ xuống nếu không chọn No.

Hình 19.2: Kiểm tra dịch vụ đã được cài đặt trên hệ thống.
Hình 19.2: Kiểm tra dịch vụ đã được cài đặt trên hệ thống.

Cài đặt và cấu hình dịch vụ webserver (3 tiết)

Bạn có thể truy cập vào trang web trên server từ xa thông qua địa chỉ IP của server (ví dụ như http://192.168.1.1/), hoặc nếu như dịch vụ DNS có hổ trợ thì bạn có thể truy cập thông qua hostname của server (ví dụ như http://linuxgroup.com/). KeepAliveTimeOut <time>: qui định thời gian để chờ cho một Request kế tiếp từ cùng một client trên cùng một kết nối (được tinh bằng giây). ServerName <name/IP> tên hoặc địa chỉ của Ví du: ServerName www.linuxgroup.com DocumentRoot <path>: nơi đặt dữ liệu web Ví dụ: DocumentRoot /var/www/html.

Trong trường hợp này, tất cả các sự truy cập vào thư mục root và các thư mục con, toàn bộ hệ thống ngăn cấm truy cập vào các đường dẫn. Cài đặt MySQL sử dụng làm Database server [root@www ~]# yum -y install mysql-server [root@www ~]# /etc/rc.d/init.d/mysqld start [root@www ~]# chkconfig mysqld on [root@www ~]# mysql -u root.

Hình 21.1: Kiểm tra hoạt động của apache.
Hình 21.1: Kiểm tra hoạt động của apache.