1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk

72 11 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây Dựng Hệ Thống VoIP An Toàn, Bảo Mật Trên Nền Tảng Asterisk
Tác giả Cao Tuấn Kiệt
Người hướng dẫn ThS. Trương Quang Phúc
Trường học Trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh
Chuyên ngành Kỹ Thuật Điện Tử Truyền Thông
Thể loại Đồ Án Tốt Nghiệp
Năm xuất bản 2019
Thành phố Tp. Hồ Chí Minh
Định dạng
Số trang 72
Dung lượng 4,95 MB

Cấu trúc

  • Chương 1 (15)
    • 1.1 Đặt vấn đề (15)
    • 1.2 Thực trạng nghiên cứu (15)
      • 1.2.1 Tình hình nghiên cứu trong nước (15)
      • 1.2.2 Tình hình nghiên cứu trên thế giới (16)
    • 1.3 Mục tiêu của đề tài (16)
    • 1.4 Phạm vi nghiên cứu (16)
    • 1.5 Nhiệm vụ nghiên cứu (16)
    • 1.6 Phương pháp nghiên cứu (16)
    • 1.7 Bố cục của luận văn (16)
  • Chương 2 (18)
    • 2.1 Tổng quan về Asterisk (18)
      • 2.1.1 Giới thiệu (18)
      • 2.1.2 Cấu trúc hệ thống Asterisk (19)
      • 2.1.3 Các tính năng cơ bản của Asterisk (21)
      • 2.1.4 Ngữ cảnh ứng dụng (23)
        • 2.1.4.1 Tổng đài VoIP IP PBX (0)
        • 2.1.4.2 Kết nối IP PBX với PBX (24)
        • 2.1.4.3 Kết nối giữa các hệ thống Asterisk (24)
        • 2.1.4.4 Các ứng dụng IVR, VoiceMail, Conference Call (25)
        • 2.1.4.4 Chức năng phân phối cuộc gọi tự động ACD (25)
      • 2.1.5 Kết luận (26)
    • 2.2 Tổng quan về VoIP (26)
      • 2.2.1 Giới thiệu (26)
      • 2.2.2 Ưu nhược điểm của VoIP (26)
        • 2.2.2.1 Ưu điểm (26)
        • 2.2.2.2 Nhược điểm (28)
      • 2.2.3 Giao thức chuẩn trong VoIP (29)
        • 2.2.3.1 Giao thức H.323 (29)
        • 2.2.3.2 Giao thức khởi tạo phiên SIP (SECTION INITIAL PROTOCAL) (31)
      • 2.2.4 Các tập tin cấu hình (33)
        • 2.2.4.1 Các kiểu của file cấu hình (33)
        • 2.2.4.2 Simple Group (34)
        • 2.2.4.3 Inherited option object (34)
        • 2.2.4.4 Complex entity object (35)
        • 2.2.4.5 Channel interfaces (35)
      • 2.2.5 Cấu hình tệp tin SIP (36)
        • 2.2.5.1 Phần khai báo (36)
        • 2.2.5.2 Khai báo kênh sip (36)
    • 2.3 Bảo mật cho hệ thống Asterisk - Voip (40)
      • 2.3.1 SSH Keys (40)
        • 2.3.1.1 Tạo Private key (40)
        • 2.3.1.2 Pageant (Load private key) (42)
      • 2.3.2 Fail2ban (43)
        • 2.3.2.1 Filter /etc/fail2ban/filter.d (44)
        • 2.3.2.2 Filter /etc/fail2ban/action.d (44)
        • 2.3.2.3 Jail: /etc/fail2ban/jail.conf (44)
      • 2.3.3 Iptables (45)
      • 2.3.4 Backup script crontab (46)
    • 2.4 Một số phần mềm cơ bản (48)
      • 2.4.1 Putty (48)
      • 2.4.2 Navicat (49)
      • 2.4.3 Eyebeam (50)
      • 2.4.4 Linphone (51)
    • 2.5 Kết luận chương (52)
  • Chương 3 (53)
    • 3.1 Giới thiệu chung (53)
    • 3.3 Kết luận chương (58)
  • Chương 4 (59)
    • 4.1 Webserver (59)
    • 4.2 Đăng ký Sip user trên các soft phone (61)
  • Chương 5 (65)
    • 5.1 Đánh giá hệ thống (65)
    • 5.2 Hướng phát triển (65)
  • TÀI LIỆU THAM KHẢO (0)
  • PHỤ LỤC (67)

Nội dung

Đặt vấn đề

Trong những năm gần đây, kỹ thuật thông tin vô tuyến đã phát triển mạnh mẽ, với nhu cầu video thoại và ứng dụng đa phương tiện trên Internet và điện thoại di động ngày càng gia tăng Hầu hết các thiết bị hiện nay đều sử dụng mạng không dây như Wifi, 3G, 4G và 5G để truyền dữ liệu Hệ thống hạ tầng viễn thông và mạng Internet đã được cải thiện đáng kể, tạo điều kiện kết nối con người qua điện thoại, thiết bị thông minh và các ứng dụng internet Xu hướng này đã làm nổi bật tiềm năng của hệ thống thoại qua Internet, đặc biệt là công nghệ truyền giọng nói qua giao thức IP – Voice over Internet Protocol (VoIP) VoIP không chỉ là cơ hội để phát triển các hệ thống truyền thông đa phương tiện toàn cầu mà còn có khả năng thay thế mạng viễn thông hiện tại mà không ảnh hưởng đến các công nghệ cũ đã tồn tại từ lâu.

Asterisk là một mã nguồn mở nổi bật trong lĩnh vực xây dựng hệ thống tổng đài thoại và chăm sóc khách hàng Trong những năm gần đây, nhiều ứng dụng dựa trên nền tảng Asterisk đã được phát triển, nhờ vào các tính năng ưu việt và khả năng tích hợp hệ thống Công nghệ Asterisk hiện đang thu hút sự quan tâm lớn từ các doanh nghiệp.

Thực trạng nghiên cứu

1.2.1 Tình hình nghiên cứu trong nước

Trong quá trình thực hiện luận văn tác giả đã tham khảo các luận văn của các nghiên cứu sau :

Trong các nghiên cứu về hệ thống Asterisk, tác giả Nguyễn Thị Hằng đã kết hợp Asterisk với các phần mềm như Skype và Google Talk Đào Quang Minh đã phát triển hệ thống Asterisk kết hợp với voicemail để lưu trữ thông tin thoại vào năm 2008 Trần Hoàng Vinh đã cài đặt thành công hệ thống IP PBX cho doanh nghiệp vừa và nhỏ Nguyễn Thị Quỳnh Trang cũng đã xây dựng hệ thống VoIP trên nền tảng Asterisk Năm 2009, Lê Hồng Trường đã phát triển hệ thống tra cứu xổ số và quà tặng âm nhạc dựa trên Asterisk.

1.2.2 Tình hình nghiên cứu trên thế giới

Leif Madsen and Russell Bryant's "Asterisk Cookbook: Solutions to Everyday Telephony Problems," published by O'Reilly, has undergone three editions since its initial release in 2011 This comprehensive guide thoroughly analyzes the features of the Asterisk system, providing practical solutions for telephony challenges.

Tác giả nhận thấy rằng các nghiên cứu hiện có chủ yếu tập trung vào việc xây dựng hệ thống tổng đài và ứng dụng, nhưng chưa đề xuất các phương án bảo mật và quản trị dữ liệu từ xa cho hệ thống Do đó, tác giả quyết định tiến hành nghiên cứu để phát triển một hệ thống VoIP an toàn và bảo mật dựa trên nền tảng Asterisk.

Mục tiêu của đề tài

Xây dựng hệ thống VoIP trên nền tảng Asterisk sử dụng giao thức SIP kết hợp với các biện pháp bảo mật như fail2ban, firewalld, và backup script Ngoài ra, việc sử dụng SSH key cũng rất quan trọng để tăng cường an ninh cho hệ thống Để quản lý hiệu quả, các phần mềm như Navicat, WinSCP và PuTTY là những công cụ hữu ích cho việc quản trị hệ thống Asterisk trên Linux.

Phạm vi nghiên cứu

Trong nghiên cứu này, tác giả tập trung vào việc xây dựng hệ thống tổng đài VoIP, tìm hiểu các chức năng của nó, đồng thời đề xuất các phương án bảo mật hiệu quả và giới thiệu các phần mềm liên quan đến VoIP.

Nhiệm vụ nghiên cứu

- Nghiên cứu hệ thống VoIP

- Cài đặt hệ thống tổng đài asterisk

- Sử dụng các công cụ, phần mềm quản trị hệ thống

- Thực hiện các cuộc gọi trong hệ thống VoIp.

Phương pháp nghiên cứu

- Thu thập, tổng hợp các tài liệu lý thuyết cơ bản liên quan đến đề tài

- Từ đó phân tích lý thuyết, thiết kế xây dựng hệ thống VoIP trên hệ thống và tổng hợp viết báo cáo.

Bố cục của luận văn

Luận văn được chia thành 5 chương:

Chương 1: Tổng quan Tác giả trình bày mục tiêu, đối tượng cũng như phương pháp thực hiện Ngoài ra tác giả cũng trình bày vấn đề mà luận văn nghiên cứu

Chương 2: Tổng quan về Asterisk, VoIP và bảo mật Trong chương này tác giả trình bày cơ sở lý thuyết về Asterisk, ưu nhược điểm của VoIP, các giao thức giao tiếp hệ thống, phương án bảo mật và các phần mềm quản trị hệ thống

Chương 3: Thiết kế và xây dựng hệ thống: thiết kế, vẽ mô hình hệ thống và cài đặt tổng đài VoIP trên nền tảng Asterisk

Chương 4: Kết quả: chương này trình bày kết quả đã được so với mục tiêu đề ra Chương 5: Kết luận và hướng phát triển Đưa ra những vấn đề mà luận văn đã làm được và chưa làm được, định hướng phát triển

Tổng quan về Asterisk

Asterisk là phần mềm mã nguồn mở do Mark Spencer phát triển, nhằm xây dựng hệ thống tổng đài cá nhân (PBX) kết nối với nhiều mạng như IP và PSTN, đồng thời hỗ trợ các giao thức như SIP, MGCP, và H323 Ngoài ra, Asterisk còn sử dụng giao thức riêng IAX (Inter-Asterisk eXchange) để tối ưu hóa khả năng kết nối.

Asterisk, giống như các hệ thống PBX khác, cho phép các máy điện thoại kết nối và thực hiện cuộc gọi qua phần mềm, đồng thời kết nối với các dịch vụ điện thoại khác, bao gồm mạng điện thoại chuyển mạch công cộng (PSTN) Asterisk không chỉ cung cấp các tính năng tương tự như hệ thống tổng đài PBX mà còn mang đến nhiều tính năng vượt trội, như khả năng kết hợp giữa chuyển mạch VOIP và chuyển mạch TDM, giúp mở rộng khả năng đáp ứng nhu cầu cho từng ứng dụng cụ thể.

Asterisk là một giải pháp cách mạng, tin cậy và miễn phí, cho phép biến một PC chạy Linux thành hệ thống điện thoại doanh nghiệp mạnh mẽ trên nền tảng IP Là bộ công cụ mã nguồn mở cho các ứng dụng thoại, Asterisk cung cấp hệ thống xử lý cuộc gọi đầy đủ chức năng và tích hợp điện thoại vi tính hóa với kiến trúc mở Asterisk được phát hành theo giấy phép GPL, và tên gọi của nó xuất phát từ ký hiệu * trong Unix và Linux, biểu thị cho tùy chọn linh hoạt.

Hình 2.1: Sơ đồ giao tiếp tổng quát

Hiện nay, Asterisk đang phát triển nhanh chóng và được nhiều doanh nghiệp triển khai để tối ưu hóa việc liên lạc nội bộ Xu hướng này phản ánh nhu cầu của các công ty có mạng máy tính, giúp họ giao tiếp hiệu quả giữa các phòng ban và chi nhánh với chi phí thấp hoặc thậm chí miễn phí cho các cuộc gọi nội bộ Asterisk không chỉ giới hạn trong việc liên lạc nội bộ mà còn tương tác với mạng PSTN và VOIP, cho phép gọi đến bất kỳ số điện thoại nào Hơn nữa, việc tích hợp với các ứng dụng như CRM và hệ thống Outlook làm cho Asterisk trở nên linh hoạt hơn, đáp ứng tốt hơn nhu cầu của người dùng.

2.1.2 Cấu trúc hệ thống Asterisk

Asterisk là một thiết bị trung gian quan trọng, giúp kết nối công nghệ điện thoại với Internet Nó được sử dụng để kết nối điện thoại, đường dây điện thoại hoặc gói thoại với các dịch vụ khác Với độ tin cậy cao và khả năng triển khai dễ dàng cho các hệ thống từ nhỏ đến lớn, Asterisk hỗ trợ mật độ cao và đáp ứng các yêu cầu phức tạp trong việc quản lý hệ thống viễn thông.

Asterisk hỗ trợ nhiều loại điện thoại với các công nghệ khác nhau như VoIP, SIP, H.323, IAX và BGCP, phù hợp cho cả điện thoại quốc tế Ngoài ra, Asterisk có khả năng kết nối với hầu hết các điện thoại truyền thống qua mạng ISDN thông qua các luồng T1 và E1 Các ứng dụng nổi bật của Asterisk bao gồm chuyển mạch cuộc gọi, cuộc gọi hội nghị, voicemail và chuyển hướng cuộc gọi.

Hệ thống Asterisk được kết nối với mạng vùng nội hạt, cho phép điều khiển các điện thoại trong mạng thực hiện cuộc gọi và kết nối Internet Các điện thoại trong mạng có khả năng kết nối với mạng khác thông qua hệ thống Asterisk.

Cổng FXS trong hệ thống Asterisk cho phép điều khiển các điện thoại tương tự trong nội bộ, trong khi cổng FXO và kênh T kết nối hệ thống Asterisk với mạng PSTN Người dùng trong mạng PSTN có thể gọi đến các thuê bao do hệ thống Asterisk quản lý, và ngược lại, các thuê bao của Asterisk cũng có khả năng thực hiện cuộc gọi đến mạng PSTN.

Một số chức năng của Asterisk trong hệ thống chuyển mạch cuộc gọi:

Khi khởi động hệ thống Asterisk, Dynamic Module Loader sẽ nạp driver thiết bị, các kênh giao tiếp và định dạng file, đồng thời thu thập thông tin đầu cuối, codec và các ứng dụng liên quan Các hàm API cũng được liên kết và nạp vào hệ thống trong quá trình này.

Hệ thống Asterisk PBX Switching Core đã chuyển sang trạng thái sẵn sàng để thực hiện chuyển mạch cuộc gọi, với các cuộc gọi được thực hiện dựa trên kế hoạch quay số (Dialplan).

Chức năng Application Launchar để rung chuông thuê bao, kết nối với hộp thư thoại hoặc gọi ra đường trung kế…

Scheduler và I/O Manager đóng vai trò quan trọng trong việc lập thời biểu và quản lý các cuộc gọi đến và đi, với các chức năng này được phát triển bởi cộng đồng phát triển Asterisk.

Codec Translator xác nhận các kênh nén dữ liệu ứng với các chuẩn khác nhau có thể kết hợp liên lạc được với nhau

Tất cả các cuộc gọi định hướng trong hệ thống Asterisk đều sử dụng các giao thức như SIP, Zaptel hoặc IAX Mọi cuộc gọi vào và ra đều được thực hiện thông qua những giao thức này, do đó, Asterisk phải đảm nhiệm việc kết nối và xử lý các giao tiếp khác nhau để quản lý cuộc gọi hiệu quả.

Hình 2.2: Sơ đồ lõi Asterisk

Chức năng của các giao tiếp chương trình ứng dụng (API: Application Program Interface):

 Codec translator API: các hàm đảm nhiệm thực thi và giải nén các chuẩn khác nhau như: GMS, G723, Mu-Law…

API Asterisk Channel cho phép giao tiếp hiệu quả với nhiều kênh liên lạc khác nhau, đóng vai trò quan trọng trong việc kết nối các cuộc gọi tương thích với nhiều tiêu chuẩn như SIP, ISDN, H323 và Zaptel.

 Asterisk file format API : Asterisk tương thích với việc xử lý các loại file có định dạng khác nhau như: Mp3, WAV, GSM, AU…

 Asterisk Aplication API : Bao gồm tất cả các ứng dụng được thực thi trong hệ thống Asterisk như: cuộc gọi hội nghị, VoiceMail, CallerID…

Asterisk cung cấp thư viện Asterisk Gateway Interface (AGI), tương tự như CGI, cho phép kích hoạt các ứng dụng bên ngoài Điều này giúp người dùng có thể viết kịch bản phức tạp bằng nhiều ngôn ngữ lập trình, bao gồm PHP và Perl.

2.1.3 Các tính năng cơ bản của Asterisk

Là một hệ thống mã nguồn mở, Asterisk cho thấy khả năng tích hợp và vượt trội với các tính năng :

Thực hiện chuyển máy của điện thoại viên, nếu điện thoại đích đang busy thì cuộc gọi sẽ được trả về cho điện thoại viên

Hộp thư thoại là tính năng cho phép hệ thống Asterisk nhận các tin nhắn thoại Mỗi điện thoại được cấu hình trong hệ thống có thể sử dụng chức năng này Khi số điện thoại bận hoặc không trong vùng phủ sóng, Asterisk sẽ tự động chuyển hướng các cuộc gọi đến hộp thư thoại đã được thiết lập trước đó.

Tổng quan về VoIP

VoIP (Voice over Internet Protocol) là công nghệ cho phép truyền tải giọng nói qua mạng máy tính sử dụng giao thức TCP/IP Công nghệ này sử dụng các gói dữ liệu IP trên các mạng LAN, WAN và Internet, trong đó thông tin được truyền tải là âm thanh đã được mã hóa.

Công nghệ này dựa trên chuyển mạch gói, thay thế công nghệ truyền thoại cũ sử dụng chuyển mạch kênh Nó cho phép nén nhiều kênh thoại trên một đường truyền tín hiệu, truyền qua mạng Internet, từ đó giúp giảm chi phí.

2.2.2 Ưu nhược điểm của VoIP

Giảm chi phí truyền thông bằng cách sử dụng VoIP, cho phép bạn chuyển tiếp cuộc gọi qua kết nối WAN thay vì phải phụ thuộc vào phí cao từ các tuyến đường dây hoặc thuế cầu đường.

Triển khai VoIP giúp giảm chi phí hệ thống cáp bằng cách sử dụng một kết nối Ethernet duy nhất, thay vì phải sử dụng cả cáp thoại và cáp dữ liệu, từ đó tiết kiệm chi phí đáng kể, đặc biệt là trong các văn phòng mới xây dựng.

Quản lý băng thông là một yếu tố quan trọng trong hệ thống viễn thông Trong mạng PSTN, băng thông cho mỗi cuộc gọi là cố định, trong khi đó, VoIP cung cấp băng thông một cách linh hoạt và mềm dẻo, cho phép tối ưu hóa tài nguyên và cải thiện chất lượng cuộc gọi.

Chất lượng của VOIP chịu ảnh hưởng bởi nhiều yếu tố, trong đó băng thông là yếu tố quan trọng nhất Không có yêu cầu bắt buộc về thông lượng giữa các thiết bị đầu cuối; thay vào đó, các thiết bị này có thể tự điều chỉnh hệ số nén để phù hợp với khả năng băng thông của mình, từ đó ảnh hưởng đến chất lượng cuộc gọi.

Mạng thoại liền mạch cho phép kết nối hiệu quả giữa các văn phòng, công nhân di động và làm việc từ xa nhờ vào VoIP Lưu lượng thoại được truyền qua "mạng của bạn" thay vì ra ngoài mạng PSTN, giúp kiểm soát tập trung tất cả các thiết bị thoại trong mạng và tạo ra một phương án quay số thống nhất Ví dụ, người dùng có thể dễ dàng gọi cho nhau chỉ bằng bốn chữ số phần mở rộng, bất kể họ đang ở đâu trên thế giới.

Thống nhất trong mạng viễn thông là rất quan trọng vì con người là yếu tố dễ mắc sai lầm Việc hợp nhất các thao tác và loại bỏ sai sót sẽ mang lại lợi ích lớn Trong các tổ chức kinh doanh, quản lý dựa trên SNMP (Simple Network Management Protocol) có thể hỗ trợ cả dịch vụ thoại và dữ liệu qua VoIP, giúp nâng cao hiệu quả hoạt động.

IP cho phép đơn giản hóa quy trình và nâng cao tính linh hoạt cho các ứng dụng Việc chia sẻ các dịch vụ như danh bạ và an ninh mạng trở nên dễ dàng hơn, mang lại lợi ích lớn cho người dùng.

Chi phí di chuyển, thêm và thay đổi (MAC) cho hệ thống PBX truyền thống dao động từ $55 đến $295 mỗi lần, trong khi hệ thống điện thoại VoIP gần như loại bỏ chi phí này Điện thoại IP ngày càng trở nên dễ dàng cài đặt trong văn phòng, cho phép di chuyển mà không cần cấu hình lại mạng thoại Hơn nữa, khi kết hợp với cấu hình VPN, người dùng có thể mang điện thoại IP về nhà và vẫn duy trì kết nối công việc.

Softphone IP là một ví dụ điển hình về sự kết hợp giữa mạng thoại và dữ liệu, cho phép người dùng sử dụng tai nghe cắm vào máy tính xách tay hoặc máy tính để bàn như một chiếc điện thoại Ngày càng có nhiều tính năng tích hợp với các ứng dụng khác như danh bạ, email, tin nhắn nhanh và điện thoại video, giúp tăng cường trải nghiệm giao tiếp.

Hợp nhất e-mail, thư thoại và fax giúp người dùng nhận tất cả các tin nhắn tại một hộp thư e-mail duy nhất Tính năng này mang lại sự tiện lợi, cho phép người dùng dễ dàng trả lời, chuyển tiếp hoặc lưu trữ các tin nhắn một cách hiệu quả.

Nâng cao tính hiệu quả của hệ thống VoIP bằng cách cho phép chuyển tiếp cuộc gọi đến nhiều thiết bị trước khi vào hộp thư thoại, giúp loại bỏ sự phụ thuộc vào thẻ điện thoại.

Thông tin liên lạc đa chức năng: Mạng hiện nay tích hợp thoại, dữ liệu và video, cho phép người dùng khởi động cuộc gọi điện thoại hoặc truy cập các ứng dụng khác từ mạng thoại hoặc dữ liệu, mang lại nhiều lợi ích cho cuộc gọi VoIP.

VOIP, mặc dù hoạt động trên nền tảng Internet không an toàn, vẫn có khả năng bảo mật cao nhờ vào việc mã hóa và xác thực thông điệp thông qua các giao thức như SIP (Session Initiation Protocol) và RTP (Real Time Protocol) Các giao thức này giúp bảo vệ thông tin khỏi việc bị đánh cắp hoặc định tuyến sai địa chỉ khi truyền qua mạng, đảm bảo rằng truyền thông diễn ra một cách an toàn và bảo mật.

Bảo mật cho hệ thống Asterisk - Voip

SSH Keys là phương thức xác thực đăng nhập an toàn qua SSH, sử dụng cặp khóa gồm khóa riêng tư và khóa công khai Giao thức xác thực challenge-response cho phép một bên đưa ra câu hỏi và bên kia phải cung cấp câu trả lời hợp lệ để xác thực Thay vì đăng nhập bằng username root và mật khẩu, việc sử dụng SSH Keys giúp bảo mật hơn, giảm nguy cơ mất quyền truy cập VPS do lộ mật khẩu hoặc bị tấn công Brute Force.

Có thể hiểu, Private Key là chìa khóa còn Public Key là ổ khóa

Hình 2.10: SSH keys 2.3.1.1 Tạo Private key

Private Key là một tệp tin văn bản chứa dữ liệu mã hóa, được sử dụng thay cho mật khẩu và thường được lưu trữ cẩn thận trên máy tính Thông thường, Private Key có độ dài tối thiểu 2048 bit và có thể được mã hóa bằng cụm mật khẩu để ngăn chặn việc sử dụng trái phép Định dạng tệp phụ thuộc vào phần mềm tạo khóa, có thể là OpenSSH Key, PuTTY Private Key Files (.ppk) hoặc Bitvise Keypair Files (.bkp).

Vào thư mục cài đặt của putty C:\Program Files\PuTTY

Khởi chạy ứng dụng puttygen

Sau khi mở ứng dụng ta nhấn nút “Generate” rồi rê chuột trong khung bôi đỏ để tăng độ ngẫu nhiên và bảo mật cho private key

Hình 2.12: Generation key ngẫu nhiên

Hình 2.13: Key được khởi tạo

Ta có thể đặt mật khẩu cho private key ở phần key passphrase.(có thể bỏ qua)

Chọn “Save private key” để lưu key cá nhân (bảo mật không cung cấp cho người khác)

Chọn “Save public key” để lưu key public sử dụng để truy cập các hệ thống

Truy cập server và chép public key vào tệp ~/.ssh/authorized_keys

Sau khi đã có private key và public key Puclic key được quản trị viên thêm vào hệ thống

Click chuột phải chọn “view key”

Chọn “Add key” tìm đường dẫn của private key đã lưu

Hình 2.16: Key được load 2.3.2 Fail2ban

Fail2ban là một công cụ mạnh mẽ giúp bảo vệ hệ thống bằng cách quét các tệp nhật ký như /var/log/asterisk/full để phát hiện và cấm các địa chỉ IP có dấu hiệu độc hại, chẳng hạn như quá nhiều lỗi mật khẩu hoặc hành vi khai thác Công cụ này thường được sử dụng để tự động cập nhật quy tắc tường lửa nhằm từ chối truy cập từ các IP đáng ngờ trong một khoảng thời gian nhất định Ngoài ra, Fail2ban cũng cho phép cấu hình các hành động tùy ý như gửi email thông báo Nó đi kèm với các bộ lọc được thiết lập sẵn cho nhiều dịch vụ khác nhau như apache, asterisk, và ssh.

Fail2Ban giúp giảm thiểu các nỗ lực xác thực không chính xác, nhưng không thể loại bỏ hoàn toàn rủi ro từ việc sử dụng xác thực yếu Để bảo vệ dịch vụ một cách hiệu quả, hãy cấu hình dịch vụ của bạn để sử dụng xác thực hai yếu tố hoặc cơ chế xác thực công khai/riêng tư.

Hình 2.17: Hệ thống bị quét

2.3.2.1 Filter /etc/fail2ban/filter.d

Như đã nói ở trên filter là điều kiện để xác định 1 ip có vi phạm luật hay không

Each filter file contains a regex code designed to identify IP addresses that violate system log rules The regex pattern used is: `failregex = ^%( prefix_line)s(?:error: PAM: )?[aA]uthentication (?:failure|error) for * from ( via \S+)?\s*$`, with no ignored regex patterns For instance, the regex in the sshd.conf file filters out SSH IP addresses attempting invalid authentication in the system log file, auth.log.

Hình 2.18: Failregex asterisk 2.3.2.2 Filter /etc/fail2ban/action.d

Mỗi luật acction được cấu hình bao gồm những lệnh iptables sau:

Khi khởi chạy dịch vụ fail2ban, lệnh actionstart sẽ được gọi để tạo ra một bảng mới trong iptable, giúp quản lý dễ dàng các địa chỉ IP đã bị chặn theo từng luật jail.

 actionstop: Gọi ra khi kết thúc dịch vụ fail2ban nhằm xóa bỏ những luật iptables được thêm vào trong qua trình fail2ban chạy.

 actioncheck: kiểm tra xem 1 ip đã bị chặn với luât jail hay chưa Tức là kiểm tra trong bảng chain của luật jạil đã có ip đó hay chưa

 actionban: lệnh iptables để chặn 1 ip

 actionunban: lệnh iptables xóa bỏ luật chặn 1 ip sau khi hết thời gian chặn

2.3.2.3 Jail: /etc/fail2ban/jail.conf

File jail.conf là file cấu hình tất cả các luật jail trong fail2ban Thông số cấu hình cho

 Bantime: thời gian ip bị chặn nếu vi phạm luật jail

 Findtime: khoảng thời gian quét cho 1 luật jail

 Maxretry: ngưỡng vị phạm trong khoảng thời gian findtime

 Banaction: Luật action (tên file action.conf)

 Port: cổng chặn kết nối đến hệ thống

 Filter: tên file cấu hình luật filter

 Logpath: đường dẫn đến file log hệ thống,ứng dụng

 Action: lựa chọn 1 trong 3 chế độ: chỉ chặn ip, chặn ip và gửi mail thông báo, chăn ip, gửi mail thông báo và ghi ra log

Vi /etc/fail2ban/jail.conf

Thêm đoạn mã lệnh sau:

[asterisk-iptables] enabled = true filter = asterisk ignoreip = 127.0.0.1/8 125.253.0.0/16 124.158.0.0/16 113.161.0.0/16 118.0.0.0/8

171.240.0.0/16 1.54.0.0/16 14.161.0.0/16 action = iptables-allports[name=ASTERISK, protocol=all] sendmail- whois[name=ASTERISK,dest=root,senderl2ban@datn765107@gmail.com] logpath = /var/log/asterisk/full findtime = 5 maxretry = 30 bantime = 31536000

At this point, the fail2ban service will read the /var/log/asterisk/full file and filter out the lines identified as configuration errors from the /etc/fail2ban/filter.d/asterisk.conf file.

Kiểm tra service fail2ban-client status asterisk-iptables

Hình 2.19: Danh sách IP bị cấm 2.3.3 Iptables

Tất cả dữ liệu trên internet được gửi qua các gói tin, và kernel Linux cung cấp giao diện để lọc các gói tin này thông qua một bảng các bộ lọc Iptables là ứng dụng dòng lệnh hoạt động như một bức tường lửa trên Linux, cho phép người dùng thiết lập, duy trì và kiểm tra các bảng lọc Người dùng có thể tạo nhiều bảng khác nhau, mỗi bảng chứa nhiều chuỗi, và mỗi chuỗi là một bộ quy tắc riêng biệt.

Có 32 quy tắc xác định cách xử lý gói tin khi nó phù hợp Khi một gói tin được nhận diện, nó sẽ dẫn đến một mục tiêu (TARGET) Mục tiêu này có thể là một chuỗi khác để khớp với một trong các giá trị đặc biệt đã được quy định.

 ACCEPT: gói tin sẽ được phép đi qua

 DROP: gói tin sẽ không được phép đi qua

 RETURN: bỏ qua chuỗi hiện tại và quay trở lại quy tắc tiếp theo từ chuỗi mà nó được gọi

Trong bài hướng dẫn về iptables này, chúng ta sẽ khám phá bảng mặc định được gọi là bộ lọc, bao gồm ba chuỗi quy tắc chính.

INPUT được sử dụng để điều khiển lưu lượng gói tin đến máy chủ, cho phép người dùng chặn hoặc cho phép kết nối dựa trên cổng, giao thức hoặc địa chỉ IP nguồn.

 FORWARD – được sử dụng để lọc các gói dữ liệu đến máy chủ nhưng sẽ được chuyển tiếp ở một nơi khác

 OUTPUT – được sử dụng để lọc các gói tin đi ra từ máy chủ của bạn

Iptables kết hợp với fail2ban bảo vệ cho hệ thống

Hình 2.20: Iptables 2.3.4 Backup script crontab

Tạo script tự động sao lưu dữ liệu hàng ngày: now=`date +"%m_%d_%Y"` pass="TasQaz#1122" he thong="DATN"

############## Backup The Database DATN printf "All database: " mysqldump -uroot -p$pass asterisk > /backup/data/asterisk-$now.sql

The script performs several tasks related to database management and backup It starts by indicating that the database dump is complete Next, it compresses the SQL files in the /backup/data/ directory into a tar.gz archive, named with a timestamp After creating the archive, it deletes the original SQL files to free up space The script also includes a function to remove any tar.gz files older than three days, ensuring that the backup directory remains organized and does not accumulate unnecessary files Finally, it concludes by signaling that the zipping process is complete.

Ta chỉnh sửa file crontab để hệ thống thực hiện backup dữ liệu mỗi ngày: vi /etc/crontab

Hình 2.22: Tệp sao lưu tar.gz

Một số phần mềm cơ bản

Putty là phần mềm cho phép truy cập hệ thống Linux qua cổng SSH bằng SSH key Phần mềm này hỗ trợ nhiều giao thức mạng như SCP, SSH, Telnet, rlogin và các giao thức khác thông qua các cổng khác nhau Tên gọi "PuTTY" không có một định nghĩa cụ thể nào Để đăng nhập vào hệ thống Linux, người dùng cần sử dụng Putty.

 Public key phải được add vào hệ thống

 Private key phải được load vào pagent

Vào thư mục cài đặt của putty C:\Program Files\PuTTY

Nhập thông tin hệ thống

Hình 2.24: Nhập thông tin hệ thống

Nhập user “root” để login

Hình 2.25: Đăng nhập hệ thống 2.4.2 Navicat

Navicat là một công cụ quản lý cơ sở dữ liệu phổ biến, hỗ trợ cả nhà phát triển phần mềm và người mới bắt đầu Với giao diện thân thiện, Navicat giúp người dùng dễ dàng tạo, sắp xếp, truy cập và chia sẻ thông tin một cách an toàn và tiện lợi.

Navicat hỗ trợ đa kết nối như MySQL, PostgreSQL, Oracle, SQLite, SQL Server Navicat hỗ trợ kết nối cục bộ hay từ xa [6]

Sau khi cài đặt và khởi động phần mềm Navicat, ta thực hiện nhập thông tin hệ thống và mật khẩu mysql truy cập thông qua SSH Key

Hình 2.26: Truy cập mysql qua cổng SSH

Hình 2.27: Nhập thông tin mysql

Hình 2.28: Cơ sở dữ liệu 2.4.3 Eyebeam

EyeBeam là phần mềm VoIP cho Windows, cho phép thực hiện cuộc gọi thoại, hội nghị video và nhắn tin tức thời thông qua Giao thức khởi tạo phiên.

EyeBeam có khả năng cấu hình linh hoạt để tương thích với nhiều nhà cung cấp tổng đài IP như Asterisk và TalkSwitch, đồng thời hỗ trợ các giải pháp truyền thông hợp nhất từ các thương hiệu lớn như Avaya, Oracle và Cisco.

Sau khi cài đặt và khởi động phần mềm Eyebeam, ta nhập thông tin sip user đã được cấu hình sẵn

Hình 2.29: Đăng ký thông tin sip user

Hình 2.30: Đăng ký sip user thành công 2.4.4 Linphone

Linphone là ứng dụng mã nguồn mở cho phép thực hiện cuộc gọi video, âm thanh và gửi tin nhắn văn bản miễn phí Người dùng có thể truy cập Linphone mọi lúc, ngay cả khi ứng dụng không hoạt động, miễn là có kết nối internet qua WiFi hoặc 3G/4G/5G Ứng dụng này tương thích với cả hệ điều hành iOS và Android.

Hình 2.32: Linphone IOS Hình 2.31: Linphone Android

Sử dụng softphone trên di động giúp cho ràng buộc về cấu trúc vật lý và internet được giải quyết trong vấn đề trao đổi thông tin liên lạc.

Kết luận chương

Chương này đã giới thiệu các giao thức chuẩn trong VoIP và cấu hình hệ thống tổng đài Asterisk Đồng thời, nó cũng trình bày các phương án bảo mật như ssh key, fail2ban, iptables và backup script Ngoài ra, nội dung còn đề cập đến quản trị hệ thống trên nền tảng Asterisk – VoIP và các phần mềm kết nối với hệ thống.

Ngày đăng: 29/11/2021, 10:40

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] N. T. Hằng, "Đồ án công nghệ VoIP và ứng dụng," Đại Học Dân Lập Hải Phòng, Tp. Hải Phòng, 2010 Sách, tạp chí
Tiêu đề: Đồ án công nghệ VoIP và ứng dụng
[2] Đ. Q. Minh, "Hệ thống cung cấp và tích hợp dịch vụ thông tin," Trường Đại Học Sư Phạm Hà Nội, Tp.Hà Nội, 2008 Sách, tạp chí
Tiêu đề: Hệ thống cung cấp và tích hợp dịch vụ thông tin
[3] T. H. Vinh, "Nghiên cứu hoạt động và triển khải mạng IP PBX Asterisk," Trường Học Viện Bưu Chính Viễn Thông, Tp.HCM, 2008 Sách, tạp chí
Tiêu đề: Nghiên cứu hoạt động và triển khải mạng IP PBX Asterisk
[4] N. T. Q. Trang, "Tổng đài Asterisk và công nghệ VoIP," Trường Đại Học Bách Khoa Đà Nẵng, Tp.Đà Nẵng, 2009 Sách, tạp chí
Tiêu đề: Tổng đài Asterisk và công nghệ VoIP
[5] L. H. Trường, "Tìm hiểu công nghệ VoIP và xây dựng hệ thống Call Center trên nền Asterisk," Trường Đại Học Bách Khoa Hà Nội, Tp.Hà Nội, 2009 Sách, tạp chí
Tiêu đề: Tìm hiểu công nghệ VoIP và xây dựng hệ thống Call Center trên nền Asterisk
[6] R. B. Leif Madsen, "Asterisk CookBook: 1st Edition, 2st Edition, 3st Edition," in Solutions to Everyday Telephony Problems (Oreilly Cookbooks), Leif Madsen, Russell Bryant, 2011 Sách, tạp chí
Tiêu đề: Asterisk CookBook: 1st Edition, 2st Edition, 3st Edition
[8] "Kênh lập trình," [Online]. Available: https://kenhlaptrinh.net/su-dung-navicat-quan-ly-co-du-lieu/ Sách, tạp chí
Tiêu đề: Kênh lập trình
[9] H. VPS, "Đăng nhập server dùng SSH Keys, không cần Password," [Online]. Available: https://hocvps.com/ssh-keys-login/ Sách, tạp chí
Tiêu đề: Đăng nhập server dùng SSH Keys, không cần Password
[7] Quản trị mạng linux, Tp.HCM: Trung tâm đào tạo máy tính Nhất Nghệ, 2009 Khác

HÌNH ẢNH LIÊN QUAN

Hình 2.1: Sơ đồ giao tiếp tổng quát - Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk
Hình 2.1 Sơ đồ giao tiếp tổng quát (Trang 18)
Hình 2.2: Sơ đồ lõi Asterisk - Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk
Hình 2.2 Sơ đồ lõi Asterisk (Trang 20)
Hình 2.3 : IP PBX - Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk
Hình 2.3 IP PBX (Trang 23)
Hình 2.5: Kết nối giữa các hệ thống Asterisk - Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk
Hình 2.5 Kết nối giữa các hệ thống Asterisk (Trang 24)
Hình 2.4: Kết nối IP PBX với PBX - Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk
Hình 2.4 Kết nối IP PBX với PBX (Trang 24)
Hình 2.6: Triển khai hệ thống IVR, VoiceMail, Conference Call - Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk
Hình 2.6 Triển khai hệ thống IVR, VoiceMail, Conference Call (Trang 25)
Hình 2.7: Phân phối cuộc gọi với hàng đợi - Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk
Hình 2.7 Phân phối cuộc gọi với hàng đợi (Trang 25)
Hình 2.8: Đặc điểm kỹ thuật của H323 - Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk
Hình 2.8 Đặc điểm kỹ thuật của H323 (Trang 30)
Hình 2.9: SIP Protocol - Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk
Hình 2.9 SIP Protocol (Trang 32)
Hình 2.11: Phần mềm Puttygen - Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk
Hình 2.11 Phần mềm Puttygen (Trang 41)
Hình 2.14: Phần mềm Pageant - Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk
Hình 2.14 Phần mềm Pageant (Trang 42)
Hình 2.16: Key được load  2.3.2 Fail2ban - Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk
Hình 2.16 Key được load 2.3.2 Fail2ban (Trang 43)
Hình 2.20: Iptables  2.3.4 Backup script crontab - Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk
Hình 2.20 Iptables 2.3.4 Backup script crontab (Trang 46)
Hình 2.21: Crontab - Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk
Hình 2.21 Crontab (Trang 47)
Hình 2.23: Phần mềm Putty - Xây dựng hệ thống voip an toàn, bảo mật trên nền tảng asterisk
Hình 2.23 Phần mềm Putty (Trang 48)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w