Tiếp nhận bảo trì hệ thống cũ không có tài liệu

  • Ngày đăng
  • 8 phút đọc
Ảnh minh họa: Tiếp nhận bảo trì hệ thống cũ không có tài liệu
Mục lục7

Những điểm chính

  • Mất liên lạc với bên phát triển, không có tài liệu, người phụ trách đã nghỉ: hệ thống vẫn có thể được tiếp nhận bảo trì.
  • Mã nguồn trên máy chủ là bản tài liệu chính xác nhất. Đọc nó là biết hệ thống hoạt động ra sao.
  • Ngay cả khi chưa chọn đơn vị mới, vẫn có những việc bạn kiểm tra được ngay hôm nay.
  • Nếu bỏ mặc, hệ thống sẽ không thể vá các lỗ hổng như PHP2shell tháng 10/2026.

"Công ty làm ra hệ thống đã không liên lạc được." "Không có tài liệu nào cả." "Người duy nhất hiểu hệ thống đã nghỉ việc." Ngay cả trong những trường hợp này, hệ thống vẫn có thể được bên khác tiếp nhận bảo trì.

Mã nguồn trên máy chủ chính là bản tài liệu chính xác nhất. Đọc mã nguồn, chúng ta biết hệ thống có những màn hình nào, tính toán và tuân theo quy tắc nghiệp vụ ra sao. Bài viết này trình bày những gì nên kiểm tra ngay hôm nay và quy trình tiếp nhận, dù nhà phát triển cũ đã biến mất hay bạn chỉ muốn đổi đơn vị bảo trì.

Bạn có đang gặp những tình huống này?

Mất liên lạc với bên phát triển

Đã giải thể, ngừng kinh doanh, hoặc người phụ trách không còn.

Không có tài liệu

Chưa từng có, hoặc tài liệu không còn khớp với hệ thống hiện tại.

Người nắm hệ thống đã nghỉ

Người duy nhất hiểu hệ thống rời công ty, hệ thống trở thành "hộp đen".

Không hài lòng với đơn vị bảo trì

Chậm, đắt, hoặc để hệ thống chạy mãi trên PHP cũ mà không đề xuất nâng cấp.

Không có gì bất thường cả. Hệ thống càng cũ thì càng dễ rơi vào tình trạng này.

Rủi ro khi bỏ mặc hệ thống cũ

  • Lỗ hổng không được vá: không có ai sửa được hệ thống thì các lỗ hổng mới cứ thế bị bỏ ngỏ.
  • Sự cố không ai sửa được: khi lỗi làm dừng công việc, không ai tìm ra nguyên nhân.
  • Quy định thay đổi, hệ thống thì không: thuế suất, luật hay hệ thống của đối tác thay đổi mà bạn không thể cập nhật.
  • Hợp đồng hết hạn: nếu không ai biết ai đứng tên máy chủ, tên miền, việc gia hạn có thể bị bỏ lỡ và website ngừng hoạt động.

Điều đã xảy ra vào tháng 10/2026

"Lỗ hổng" không phải chuyện xa vời. Tháng 10/2026, lỗ hổng PHP nghiêm trọng "PHP2shell" đã được công bố.

  • PHP phát hành bản vá

    Hai lỗ hổng cho phép chạy mã mà không cần đăng nhập được khắc phục.

  • Nhật Bản phát cảnh báo

    IPA và JPCERT/CC kêu gọi mọi đơn vị dùng PHP cập nhật.

  • Xác nhận đã bị khai thác

    Cơ quan CISA của Mỹ đưa cả hai vào danh sách lỗ hổng đã bị khai thác trên thực tế.

Hệ thống có người chăm lo sẽ được vá ngay. Hệ thống không có ai thì tiếp tục bị phơi nhiễm. Xem cần làm gì với PHP2shell.

Không ai chăm lo

  • Có lỗ hổng mới cũng không cài được bản vá
  • Hệ thống dừng thì không biết bao giờ chạy lại
  • Năm tháng trôi qua mà không ai hiểu hệ thống

Được tiếp nhận và bảo trì

  • Lỗ hổng được vá kịp thời
  • Sự cố được tìm nguyên nhân và khắc phục
  • Có tài liệu, người tiếp theo không bị bế tắc

Danh sách kiểm tra cho hôm nay

Dù chưa chọn được đơn vị tiếp nhận, kiểm tra trước những điểm sau sẽ giúp việc bàn giao suôn sẻ hơn nhiều.

  1. Xác định ai vào được hệ thống

    Ai đứng tên máy chủ, tên miền và ai đăng nhập được trang quản trị.

  2. Bảo vệ dữ liệu

    Kiểm tra có bản sao lưu không, và bản gần nhất là khi nào.

  3. Thu thập manh mối

    Ghi lại người dùng, tài liệu còn sót, dịch vụ kết nối và hợp đồng cũ.

Kiểm traVì sao quan trọngMức độ gấp
Ai đứng tên máy chủ, tên miền và ai đăng nhập đượcCó quyền truy cập là có thể khảo sát mã nguồn và dữ liệuƯu tiên nhất
Có bản sao lưu dữ liệu khôngLà "phao cứu sinh" khi có sự cốƯu tiên nhất
Ai dùng chức năng nào, cho việc gìCho biết phần nào quan trọng với hoạt động kinh doanhSớm
Tài liệu còn sót lại (báo giá, hóa đơn, email, ghi chú)Thường hé lộ mục đích ban đầu của hệ thốngSớm
Các dịch vụ kết nối (thanh toán, email, kế toán)Phải tiếp tục hoạt động trong lúc bàn giaoSớm
Hợp đồng phát triển, bảo trì cũCó thể quy định về quyền sở hữu mã nguồn và cách chấm dứt hợp đồngTrước khi bàn giao

Chia sẻ mật khẩu an toàn

Đừng gửi mật khẩu trực tiếp trong email. Chỉ chia sẻ cho người tin cậy, qua kênh an toàn.

Cách chúng tôi tiếp nhận hệ thống không có tài liệu

Dù không có tài liệu, chương trình vẫn nằm trên máy chủ. Chúng tôi đọc nó, chạy thử để xác nhận cách hoạt động, rồi biến những gì tìm được thành tài liệu rõ ràng.

HIỆN TẠIMã nguồn trên máy chủKhông tài liệu, như một "hộp đen"
PHÂN TÍCHĐọc mã và chạy thửXác nhận quy tắc nghiệp vụ trên môi trường thử nghiệm
SAU ĐÓTài liệu và bảo trìAi tiếp quản cũng nắm được
Hình 1: biến hệ thống "hộp đen" thành hệ thống nhìn rõ được

Tại Digi Dinos, việc tiếp nhận hệ thống không có tài liệu, không còn nhà phát triển gốc đi theo các bước sau:

  1. Trao đổi

    Cách bạn đang dùng hệ thống hằng ngày và vấn đề gặp phải.

  2. Khảo sát

    Máy chủ, phiên bản PHP và framework, cơ sở dữ liệu, các kết nối.

  3. Phân tích mã nguồn

    Chúng tôi tự đọc mã và chạy thử trên môi trường thử nghiệm để tìm lại quy tắc nghiệp vụ.

  4. Dựng lại tài liệu

    Danh sách màn hình, chức năng, trường dữ liệu và cấu hình máy chủ, trình bày dễ hiểu.

  5. Báo cáo rủi ro và đề xuất kế hoạch

    Việc cần sửa ngay, việc có thể để sau, chi phí dự kiến, cùng các phương án: tiếp tục bảo trì, sửa một phần hoặc làm mới.

  6. Bảo trì liên tục

    Vá lỗ hổng, xử lý sự cố và cải tiến nhỏ.

Những tài liệu chúng tôi dựng lại

Tài liệuCho biết điều gìHữu ích khi nào
Danh sách màn hìnhCó những màn hình nào, ai sử dụngXác định phạm vi sửa đổi
Danh sách chức năngCác phép tính và quy tắc hệ thống tuân theoSửa mã mà không làm hỏng phần quan trọng
Trường dữ liệuLưu những thông tin gì, ở đâuSao lưu và chuyển đổi dữ liệu
Cấu hình máy chủMáy chủ, phiên bản PHP và framework, các kết nốiLập kế hoạch vá lỗi và nâng cấp

Mục tiêu thực sự của việc tiếp nhận

Để lại tài liệu sao cho ai tiếp quản sau này cũng không gặp khó khăn. Bạn sẽ không còn phải phụ thuộc vào một công ty hay một người duy nhất để hệ thống chạy được.

Các bước đổi đơn vị bảo trì

  1. Kiểm tra hợp đồng hiện tại

    Thời hạn và thời gian báo trước khi chấm dứt.

  2. Trao đổi với đơn vị mới

    Đơn vị mới khảo sát hệ thống và lập kế hoạch bàn giao.

  3. Đề nghị đơn vị cũ bàn giao

    Mã nguồn, thông tin máy chủ và các tài liệu còn lại.

  4. Song song một thời gian

    Cả hai đơn vị cùng tham gia cho đến khi mọi thứ được xác nhận ổn định.

  5. Chuyển hẳn sang đơn vị mới

    Từ đây, đơn vị mới chịu trách nhiệm.

Nếu không liên lạc được đơn vị cũ

Bỏ qua bước 3 và 4, bắt đầu khảo sát từ mã nguồn trên máy chủ. Quyền vào trang quản trị máy chủ là điểm xuất phát quan trọng nhất.

Câu hỏi thường gặp

Có thể bàn giao mà không báo cho nhà phát triển cũ không?

Tùy hợp đồng, vì hợp đồng có thể quy định quyền sở hữu mã nguồn và bản quyền. Hãy kiểm tra trước, và hỏi chúng tôi nếu chưa chắc.

Hệ thống của tôi quá cũ thì sao?

Không sao. Chúng tôi làm việc với cả PHP 5 và mã tự viết không dùng framework. Hệ thống càng cũ, càng nên sớm có người xem xét bên trong.

Hệ thống nhỏ có nhận không?

Có. Công cụ nội bộ vài người dùng, hay chỉ một form liên hệ cũng được.

Có làm việc bằng tiếng Nhật được không?

Được. Đội ngũ nói tiếng Nhật của chúng tôi phụ trách, và chúng tôi cũng làm việc bằng tiếng Việt, tiếng Anh.

Sau khi tiếp nhận có nâng cấp được không?

Được. Dựa trên kết quả khảo sát, chúng tôi lên kế hoạch nâng cấp PHP, framework và máy chủ cùng lúc. Xem chi phí và quy trình nâng cấp PHP.

Giao hệ thống cũ cho Digi Dinos

Digi Dinos là công ty phần mềm có văn phòng tại Việt Nam và Nhật Bản (Yokohama), 8 năm kinh nghiệm và hơn 150 dự án.

Tự khảo sát, tự dựng tài liệu

Không tài liệu, không còn nhà phát triển gốc, không ai hiểu hệ thống: chúng tôi dựng lại đặc tả.

Vá lỗ hổng

Xử lý nhanh các lỗ hổng CVE mới công bố.

Nâng cấp toàn diện

PHP, Laravel, CakePHP hoặc mã tự viết, máy chủ và hệ điều hành.

Bảo hành vĩnh viễn

Trong suốt thời gian hợp đồng bảo trì còn hiệu lực.

Ngoài PHP, chúng tôi cũng tiếp nhận hệ thống cũ viết bằng Java, Node.js và các ngôn ngữ khác.

Tiếp nhận hệ thống cũ

Hệ thống không còn ai hiểu? Hãy trao đổi với chúng tôi

Chỉ cần còn đăng nhập được máy chủ, chúng tôi có thể bắt đầu từ đó và cùng bạn xác định hiện trạng.

Bài viết liên quan