Điều kiện tiên quyết
Trước buổi học, giảng viên cần kiểm tra sự phù hợp của điều kiện thực tế của phòng thực hành với yêu cầu của bài thực hành Đồng thời, giảng viên cũng nên nghiên cứu kỹ các nội dung liên quan đến bài thực hành để đảm bảo quá trình giảng dạy hiệu quả.
Đối với sinh viên: Xem lại lý thuyết đã học, chuẩn bị sẵn các công cụ, máy ảo đã chỉ ra trong phần Yêu cầu thực hành.
Giới thiệu
Bài thực hành "Thiết lập sử dụng SSL để mã hóa cho dịch vụ web và mail" nhằm triển khai các giải pháp đảm bảo an toàn cho quá trình sử dụng Web và Mail Server.
Kịch bản thực hành
Bài thực hành cơ bản được chia thành hai phần: Phần 1 hướng dẫn sinh viên cài đặt và cấu hình dịch vụ phân giải tên miền DNS, cùng với việc thiết lập dịch vụ Web IIS 8 Ngoài ra, bài thực hành còn bao gồm cài đặt dịch vụ cung cấp chứng thư số Certification Authority (CA) và xin chứng thư SSL để bảo mật dữ liệu trên đường truyền giữa máy trạm client và máy chủ web.
Trong phần 2 của bài thực hành, sinh viên sẽ được hướng dẫn cài đặt và cấu hình máy chủ dịch vụ mail MDaemon V10, cũng như phần mềm mail client Thunderbird Bài thực hành này bao gồm việc xin và cấp chứng thư số cho các tài khoản mail client sử dụng CA, cùng với việc cấu hình các chứng thư số để người dùng có thể mã hóa và ký số email Mục đích là đảm bảo tính bí mật và toàn vẹn nội dung email khi gửi từ người dùng này đến người dùng khác qua đường truyền.
Mục tiêu bài thực hành
Triển khai, cài đặt, cấu hình DNS Server, Web Server, CA Server, Mail Server
Thực hiện xin, cấp phát chứng thư số cho Web Server và người dùng trong hệ thống
Thiết lập Web Server sử dụng SSL
Thiết lập gửi mail có mã hóa và ký số.
Tổ chức thực hành
Yêu cầu thực hành: Thực hành độc lập
Yêu cầu thực hành
Phần cứng, phần mềm
Mỗi sinh viên được bố trí 01 máy tính với cấu hình tối thiểu: CPU 3.0 GHz, RAM 8GB, HDD 50GB
Yêu cầu phần mềm trên máy:
Hệ điều hành Windows Server 2012 R2, Windows 7x64
Phần mềm cần thiết: VMware Worstation 15.0 trở lên, MDaemon V10, Thunderbird Setup 31.5.0, Wireshark
Yêu cầu kết nối mạng LAN: Không
Yêu cầu kết nối mạng Internet: Không
Yêu cầu khác: máy chiếu, bảng viết, bút/phấn viết bảng
Máy ảo và công cụ
Nội dung thực hành
Thiết lập môi trường
Trên Windows Server 2012: Sinh viên thực hiện đổi tên máy có dạng Hoten
Tắt tường lửa trên tất cả các máy
Sau khi cấu hình xong địa chỉ IP, tiến hành kiểm tra hoạt động giữa các máy.
Triển khai SSL cho Web Server
7.3.1 Cài đặt DNS Server, Web Server (IIS), CA Server trên Windows 2012
Đăng nhập bằng tài khoản quản trị Adminstrator vào máy chủ Windows Server
Tại cửa sổ Server Manager→ Manage → Add Roles and Features
Tại cửa sổ Select server roles tích chọn thêm 03 dịch vụ:
Trong cửa sổ Select role service tích chọn 2 dịch vụ: Certification Authority và Certification Authority Web Enrollment
Các lựa chọn khác để mặc định Bấm Install để bắt đầu cài đặt các dịch vụ đã chọn 7.3.2 Cấu hình dịch vụ Certification Authority
Sau khi cài đặt thành công dịch vụ CA, bước tiếp theo là cấu hình cho CA Để thực hiện điều này, hãy nhấp vào biểu tượng hình lá cờ trong giao diện Server Manager và chọn "Configure Active Directory Certificate Services".
Trong giao diện Role Services tích chọn 2 tùy chọn Certification Authority và Certification Authority Web Enrollment
Trong giao diện Setup Type chọn Standalone CA → Next
Trong giao diện CA Type chọn Root CA → Next
Trong giao diện Private Key chọn Create a new private key → Next Các lựa chọn khác để mặc định
Tại cửa sổ Confirmation kiểm tra lại các thông tin cấu hình Chọn Configure để
Bấm Close để hoàn tất quá trình cấu hình dịch vụ CA
7.3.3 Cấu hình dịch vụ DNS
Tại Server Manager chọn DNS Nháy chuột phải vào máy chủ DNS → DNS Manager
Cửa sổ cấu hình DNS xuất hiện
Để tiến hành cấu hình phân giải xuôi (Forward Lookup Zones) thực hiện click chuột phải vào mục Forward Lookup Zones → New Zone Trong mục Zone Type
Trong mục Zone Name → điền tên miền có dạng: Hovaten.kma (yêu cầu bắt buộc)
Trong mục Zone File để mặc định → Next
Trong mục Dynamic Update → chọn Allow both nonsecure and secure dynamic update → Next → Finish
Tạo bản ghi Host A (www) Chuột phải vào Zone lmt.kma vừa tạo chọn New Host
Tại cửa sổ New Host, trường Name nhập www và trường IP address nhập địa chỉ
IP của DNS Server là 192.168.1.50 → Add Host
Để tiến hành cấu hình phân giải ngược (Reverse Lookup Zone), click chuột phải vào mục Reverse Lookup Zone →New Zone
Trong mục Zone Type → chọn Primary Zone
Trong mục Reverse Lookup Zone Name → chọn IPv4 Reverse Lookup Zone →
Trong mục Network ID nhập dải địa chỉ IP máy chủ sử dụng: 192.168.1 →Next
Trong mục Zone File để mặc định → Next
Trong mục Dynamic Update chọn Allow both nonsecure and secure dynamic updates → Next → Finish
Để tạo bản ghi phân giải ngược PTR, click chuột phải vào dải IP đã khai báo chọn
Tại cửa sổ New Resource Record điền địa chỉ của DNS Server (192.168.1.50)
Trỏ đến bản ghi Host A trong phân giải xuôi
Sau khi hoàn tất cấu hình, bước tiếp theo là kiểm tra việc phân giải tên miền Mở cửa sổ dòng lệnh CMD và sử dụng lệnh nslookup để thực hiện kiểm tra Kết quả trả về cho thấy đã có địa chỉ IP tương ứng với tên miền đã được tạo.
7.3.4 Kiểm tra hoạt động của Web Server (IIS)
Bật trình duyệt web IE và gõ địa chỉ tên miền đã tạo http://www.lmt.kma
Giao diện xuất hiện trang web mặc định của IIS 8
7.3.5 Cấu hình SSL cho dịch vụ Web
Bước 1: Web Server gửi yêu cầu xin cấp chứng thư số tới CA Server
Tại Server Manager → IIS Nháy chuột phải vào Web Server → Internet Information Services (IIS) Manager
Lựa chọn máy chủ Web LMT → Server Certificates → Open Feature
Tại cửa sổ Server Certificates, nháy chuột phải làm LMT-CA chọn Create Certificate Request để gửi yêu cầu xin cấp chứng thư số tới CA Server
Tại cửa sổ Request Certificate, hãy nhập đầy đủ và chính xác thông tin về máy chủ IIS, đặc biệt chú ý điền đúng tên miền của trang web trong mục Common name.
Tại giao diện "File Name", bạn cần chọn vị trí lưu trữ cho yêu cầu xin cấp chứng thư số, ví dụ như đặt tên là key1.txt Sau đó, chọn "Finish" để hoàn tất quá trình yêu cầu.
Bước 2: Xác thực việc gửi thông tin xin cấp chứng thư số
Bật trình duyệt Web IE lên và truy cập tới địa chỉ http://www.lmt.kma/certsrv
Chọn Request a Certificate → Advanced certificate request → Submit a certificate request by using…
Mở file key1.txt vừa tạo ở Bước 1, copy toàn bộ nội dung của file key1 vào ô
Yêu cầu cấp chứng thư số có ID là 2 cho Web Server đã được gửi tới CA Server
Bước 3: CA Server cấp phát chứng thư số cho Web Server
Tại Server Manager → AD CS chọn máy chủ CA Nháy chuột phải vào máy chủ
Cửa sổ dịch vụ CA được bật lên ta thấy có 4 thư mục con lần lượt là:
+ Revoked Certificates: chứa thông tin về các chứng thư số bị thu hồi
+ Issued Certificates: chứa thông tin về các chứng thư số đã được cấp
+ Pending Request: chứa thông tin về các yêu cầu cấp mới chứng thư số
+ Failed Request: chứa thông tin về các yêu cầu cấp mới chứng thư số bị lỗi
Truy cập vào mục Pending Requests, ta thấy có 1 yêu cầu cấp mới chứng thư có
Request ID là 2 đang chờ phê duyệt để cấp
Chuột phải vào Pending Request có ID là 2 và chọn All Tasks → Issue
Bây giờ trong mục Issued Certificates thấy có chứng thư ID 2 đã được cấp với các thông tin như đã khai báo lúc yêu cầu
Bước 4: Cài đặt chứng thư số cho Web Server
Tiếp tục thực hiện như ở bước 3, truy cập IE theo đường dẫn http://www.lmt.kma /certsrv
Chọn View the status of a pending certificate request Ta sẽ thấy chứng thư số mà chúng ta yêu cầu đã được cấp
Kích vào đường dẫn Saved-Request Certificate → chọn Download Certificate để lưu chứng thư được cấp.
Mở lại cửa sổ Server Certificates Click chuột phải và Web Server chọn Complete Certificate Request…
Chọn đường dẫn lưu trữ đến nơi lưu trữ chứng thư đã tải về ở bước trên Ở đây mục
Friendly name ta sẽ đặt một tên gợi nhớ có dạng hotenwebcert Ví dụ: lmtwebcert
Nhấn OK để hoàn tất quá trình cài đặt
Bước 5: Cấu hình để máy chủ Web Server chạy dịch vụ SSL
Từ giao diện quản trị của IIS truy cập tới Sites → Default Web Site → SSL setting → Bindings…
Trong cửa sổ Site Bindings chọn Add
Trong mục Type chọn https : Port 443
Trong mục SSL Certificate → Select → chọn chứng thư đã cài đặt lmtwebcert →
Trở lại giao diện Default Web Site → SSL setting → Open feature
Tích chọn vào Require SSL, mục Action chọn Apply
Kết thúc cài đặt và cấu hình SSL
Bật trình duyệt web IE và gõ tên miền https://www.lmt.kma/certsrv/
Trên máy client, thực hiện truy cập tên miền https://www.lmt.kma/certsrv/
Kết quả triển khai cài đặt và cấu hình SSL cho Web Server thành công.
Triển khai SSL cho Mail Server
7.4.1 Tạo bản ghi MX trong DNS
Chuột phải vào Zone lmt.kma chọn New Host (A or AAAA)…
Tại cửa sổ New Host điền các thông tin như sau:
Tiếp tục tạo bản ghi MX
Tại cửa sổ New Resource Record chọn tới tên miền của Mail server đã tạo
Nhấn OK để kết thúc quá trình tạo các bản ghi
7.4.2 Cài đặt và tạo tài khoản mail client
Bước 1: Cài đặt và cấu hình MDaemon V10
Copy phần mềm MDaemon V10 vào máy chủ Windows Server 2012 và tiến hành cài đặt theo mặc định
Sau khi cài đặt sau, thực hiện cấu hình Domain Truy cập tab Setup → Default Doamin/Servers…
Sau khi cài đặt sau, thực hiện cấu hình DNS
Sau khi cài đặt xong, giao diện MDaemon xuất hiện như hình dưới
Bước 2: Thiết lập tài khoản Mail cho người dùng
Truy cập giao diện quản trị mail server và theo đường dẫn như sau: Main menu →
Trong giao diện tạo tài khoản, nhập thông tin cho tài khoản, ví dụ user1@lmt.kma
Chọn OK để kết thúc
Tương tự thực hiện thiết lập tài khoản có địa chỉ là user2@lmt.kma
7.4.3 Thực hiện gửi thư không có mã hóa
Bước 1: Cài đặt tại máy chủ Windows Server 2012
Copy phần mềm Thunderbird Setup 24.5.0 vào máy chủ Windows Server và tiến hành cài đặt theo chỉ dẫn mặc định
Sau khi cài đặt và khởi động phần mềm Thunderbird sẻ hỏi người dùng thiết lập tài khoản Click vào tùy chọn Skip this and use my existing email
Nhập các thông tin về tài khoản của người dùng user1:
Chọn Continue để tiếp tục Thunderbird sẽ truy vấn đến tên miền tìm địa chỉ mail đã khai báo.Kết quả như sau:
Nhấn Done để kết thúc cấu hình Khi truy cập lần đầu sẽ xuất hiện cảnh báo tại vì mail server không sử dụng các biện pháp mã hóa
Chọn I understand the risks → Done để đăng nhập
Thực hiện tương tự trên máy Windows 7 với tài khoản user2@lmt.kma
Bước 2: Kiểm tra gửi và nhận mail giữa user1 và user2
Từ người dùng user2 soạn mail và gửi cho user1
Bên người dùng user1 đã nhận được mail:
Bước 3: Chặn bắt thông tin truyền
Trên máy Windows XP, bạn có thể cài đặt phần mềm WireShark để chặn bắt thông tin không được mã hóa giữa người dùng user1 và user2, với nội dung Email 2: LMT_AT140909.
Kết quả từ việc chặn bắt cho thấy kẻ tấn công có khả năng nắm bắt thông tin trong quá trình gửi và nhận email, bao gồm tiêu đề và đặc biệt là nội dung của email.
7.4.4 Thực hiện gửi thư có mã hóa
Bước 1: Cài đặt chứng thư số cho người dùng user1
Bật trình duyệt web IE và truy cập theo đường dẫn https://www.lmt.kma/certsrv/
Để yêu cầu cấp chứng thư số, trong giao diện web xuất hiện chọn Request a certificate:
Tiếp tục chọn Advanced certificate request → Create and submit a request to this CA
Trong mục Identifying Information: Nhập thông tin của user1
Trong mục Type of Certificate Needed → E-mail protection certificate
Trong mục Key options: tích chọn Mark keys as exportable
Nhấn Submit để gửi yêu cầu tới CA
Bước 2: Truy cập vào dịch vụ CA để cấp phát chứng thư cho người dùng user1
Truy cập vào mục Pending requests ta thấy có 1 chứng thư đang chờ đợi đồng ý
Chuột phải vào chứng thư chọn All Tasks → Issue
Như vậy chứng thư đã được cấp cho người dùng user1
Bước 3: Cài đặt chứng thư của user1 vào máy chủ Windows Server 2012
Truy cập vào trình duyệt web IE theo đường dẫn https://www.lmt.kma/certsrv
Trong mục Select a task chọn View the status of a pending certificate request
Tiếp tục chọn Install this certificate
Thông báo về việc cài đặt thành công Certificate
Bước 4: Trích xuất chứng thư của người dùng user1 thành 2 định dạng để import vào phần mềm Thunderbird
Bật công cụ MMC từ Run
Chọn File → Add/Remove Snap-in → Certificates → Add (My user account)
Trong giao diện MMC, truy cập Personal → Certificate Click chuột phải vào chứng thư của user1 chọn All Tasks → Export
Giao cửa sổ Certificate Export Wizard chọn Next để tiếp tục
Giao diện Export Private Key chọn No, do not export the private key
Chọn Next để tiếp tục
Trong giao diện Export File Format ta lựa chọn DER encoded binary X.509
Chọn Next để tiếp tục, chọn nơi lưu trữ và đặt tên cho chứng thư là user1.cer
Tiếp tục lại quá trình trích xuất chứng thư của user1 nhưng lần này trích xuất cả khóa bí mật của user1
Trong mục Security: nhập mật khẩu để bảo vệ khóa
Tiếp tục chọn nơi lưu và đặt tên cho chứng thư
Kết thúc quá trình trích xuất chứng thư với 2 định dạng là user1.cer và user1.pfx
Thực hiện tương tự đối với người dùng user2 trên máy Windows 7 Sau đấy sử dụng email để gửi cho user1 các chứng thư của user2
Bước 5: Trích xuất chứng thư của CA để Import vào Thunderbird
Trong giao diện MMC Console Root → Trusted Root Certification Authorities chọn chứng thư của CA → All Tasks → Export
Trong giao diện Export File Format ta lựa chọn DER encoded binary X.509 (.CER) Đặt tên cho chứng thư là LMTCA.cer và chọn nơi lưu trữ
Bước 6: Import chứng thư của người dùng user1 vào Thunderbird
Bật Thunderbird lên và thực hiện theo đường dẫn: chọn biểu tượng 3 dấu gạch ngang ở phía trên góc phải của Thunderbird → Chọn Options → Account Settings
Trong giao diện Account Setting chọn tab Security
Trong mục Certificates chọn View certificate
Trong giao diện Certificate Manager chọn Tab Authorities → Chọn Import và trỏ đến nơi lưu trữ chứng thư của CA đã trích xuất ở bước 5
Trong tab People, người dùng user1 cần nhập chứng thư số của user2 với định dạng user2.cer để có thể gửi thư mã hóa cho user2 Việc này là cần thiết vì public key của user2 được lưu trữ trong chứng thư số, giúp đảm bảo an toàn cho thông tin khi gửi đi.
Trong Tab Your Certificates thực hiện Import chứng thư của user1 với định dạng user1.pfx, nhập mật khẩu bảo vệ
Nhấn OK để kết thúc
Từ giao diện Account Setting trong mục Digital Signing trỏ đến chứng thư đã Import
Tại mục Mã hóa, hệ thống sẽ hỏi bạn có muốn sử dụng chứng thư đã được nhập trước đó để mã hóa và giải mã thư hay không Hãy chọn "Có" để xác nhận.
Nhấn OK để kết thúc cấu hình chứng thư cho người dùng user1
Bước 7: Cài đặt chứng thư số cho người dùng user2
Các bước thực hiện tương tự từ bước 1 đến bước 6 cho người dùng user1 trên máy chủ Windows Server 2012
Trong quá trình cài đặt chứng chỉ cho user2, cần lưu ý rằng máy Client có thể nhận thông báo "This CA is not trusted" do chưa được nhập chứng thư số của CA Để khắc phục vấn đề này, người dùng cần chọn "Install this CA certificate" để cài đặt chứng thư số của CA lên máy Client.
Chứng thư số của CA được tải xuống, chọn Install Certificate… để cài đặt
Tại cửa sổ Certificate Import Wizard chọn vị trí lưu trữ cho chứng thư của CA
Chọn Trusted Root Certification Authorities
Khi cài đặt chứng thư của CA Server, hệ thống sẽ hiển thị thông báo yêu cầu xác nhận tính tin cậy của chứng thư Để tiếp tục quá trình cài đặt, hãy chọn "Yes".
Sau khi hoàn tất việc cài đặt chứng thư số của CA, tiến hành cài đặt chứng thư số cho user2 theo các bước tương tự như user1, từ bước 1 đến bước 6.
Trong Certificate Manager của user2, tại tab People thực hiện Import thêm chứng thư của người dùng user1 với định dạng user1.cer
Bước 8: Gửi thư có mã hóa và có ký số
Từ người dùng user2 soạn thư có mã hóa và ký số gửi cho user1
Chuyển sang tài khoản của user1 để kiểm tra kết quả.
Kết quả người dùng user1 đã nhận được mail, trong mail có 2 biểu tượng ký số và mã hóa
Bước 9: Thử nghiệm chặn bắt thông tin trên đường truyền
Trong một thí nghiệm, một email được mã hóa đã được gửi giữa user1 và user2, trong khi máy Windows XP hoạt động như một kẻ tấn công để chặn bắt và phân tích thông tin Kết quả cho thấy kẻ tấn công có thể xác định được người gửi, người nhận và tiêu đề của email, nhưng không thể đọc được nội dung email do được mã hóa.