Chuyển tới nội dung chính
Version: 4.1

3.9.3

Thư hoàn toàn không hoạt động trên AlmaLinux, Rocky hay bất kỳ máy chủ thuộc họ RHEL nào. Bản phát hành này sửa chữa nó tại chỗ. Hãy cập nhật.

Mail could not be sent or received​

Cấu hình Postfix mà sản phẩm này tạo ra yêu cầu bốn bảng tra cứu của nó dưới dạng hash: — Berkeley DB. Đó là một plugin Postfix tuỳ chọn và họ RHEL phát hành mà không có nó: trên AlmaLinux postconf -m liệt kê lmdb và không có hash, và default_database_type là lmdb. postmap không có tiền tố dựng loại mặc định, nên các bản đồ đã biên dịch trên đĩa là các tệp .lmdb trong khi main.cf yêu cầu các tệp hash:. Postfix ghi nhật ký, cho mọi thư:

warning: hash:/etc/hitechcloud/mail/valias is unavailable.
unsupported dictionary type: hash
warning: virtual_alias_maps map lookup problem for … -- message not accepted

và trả lời mọi RCPT TO đã xác thực bằng 451 4.3.0 …: Temporary lookup failure. Không một thư nào gửi hay nhận được. Bản đồ đăng nhập người gửi còn tệ hơn: nó được biên dịch rõ ràng dưới dạng hash:, điều này gây lỗi chí mạng, nên nó hoàn toàn không được dựng và kiểm tra ngăn một hộp thư gửi với danh nghĩa hộp thư khác không có gì để tham khảo.

Loại giờ đến từ chính Postfix. Trên Debian và Ubuntu, nơi hash là mặc định, không có gì thay đổi.

Bản phát hành này sửa chữa các máy chủ đang chạy. Một tệp nhị phân mới không ghi lại một tệp cấu hình đã có trên đĩa, nên bản cập nhật ghi lại bốn cài đặt, dựng lại các bản đồ đã biên dịch và nạp lại Postfix — và nói ra nếu nó không làm được.

Security​

  • Một lần đăng nhập SSH không bao giờ vào jail của tài khoản. Shell đăng nhập quyết định có vào jail hay không bằng cách kiểm tra một tệp trong /etc/sudoers.d, thư mục drwxr-x--- thuộc root — và nó chạy phép kiểm tra đó với tư cách tài khoản. Câu trả lời vì thế là sai với mọi tài khoản, kể cả mọi tài khoản có quy tắc đó. Một tài khoản được cấp quyền SSH đứng trên hệ thống tệp dùng chung với một shell không bị hạn chế: nó có thể liệt kê /home, đọc /etc/passwd và các nhật ký riêng của panel, và rời khỏi shell bị hạn chế chỉ bằng một bước. Nó không đọc được tệp của tài khoản khác hay bất kỳ thông tin xác thực nào, đó là lý do duy nhất khiến việc này không tệ hơn. Kiểm tra giờ hỏi sudo, thứ sở hữu câu trả lời và là setuid.

  • Xác thực hai yếu tố có thể bị tắt mà không cần thông tin xác thực. Biểu mẫu tắt chỉ gửi token CSRF của nó, và trình xử lý chấp nhận điều đó rồi xoá bí mật đã lưu. OTP email trên cùng trang luôn đòi mật khẩu. Giờ nó cũng đòi — nhưng chỉ khi 2FA thực sự đang bật, nên việc bỏ dở một lần thiết lập chưa xong vẫn hoạt động.

  • Một lần tải lên chứng chỉ tuỳ chỉnh ghi khoá riêng vào thư mục gốc web. Panel ghi cặp PEM vào thư mục gốc tài liệu của chính tài khoản trước khi đưa các đường dẫn cho CLI, nên trong suốt lệnh gọi đó khoá có thể tải về qua HTTPS tại một URL có thể đoán. Giờ nó đi vào một thư mục tạm riêng tư bên ngoài mọi thư mục gốc tài liệu. Cùng đoạn mã đó nêu một đường dẫn container không tồn tại trên một máy chủ native, nên lần tải lên cũng không cài gì trong khi báo thành công.

Fixed​

  • memcached theo tài khoản chưa bao giờ khởi động. Mẫu unit đi kèm sản phẩm và trình cài đặt sao chép nó vào thư mục mẫu, nhưng không gì từng cài nó vào systemd — nên việc bật memcached cho một tài khoản chạy trên một unit không tồn tại và khách hàng được báo Unit hitechcloud-memcached@<account>.service could not be found. Bản cập nhật cài mẫu đó và khởi động memcached cho mọi tài khoản đã yêu cầu nó.

  • Mọi thao tác tường lửa theo tên miền là một lệnh không làm gì mà báo thành công. Panel đưa cho CLI một lệnh con trần — hitechcloudcli mode example.com detect — không phải một lệnh. CLI trả lời Command 'mode' not found, thoát 127, và panel hiển thị điều đó như kết quả của việc đổi tường lửa. Chế độ, ngoại lệ quy tắc, cả hai danh sách IP và cả hai điều khiển thử thách. Hai trong các điều khiển đó cũng đọc một tên trường mà biểu mẫu không gửi, nên công tắc thử thách lưu ngược với điều được chọn và chế độ under-attack hoàn toàn không bật được.

  • Trình chặn IP không chặn ai. Nó lưu danh sách đúng và ghi bằng cú pháp của Caddy, trên một máy chủ có front end là nginx.

  • DNS ngược được báo từ sai nơi. Trang Deliverability nói bản ghi ngược của máy chủ này đúng trên một máy chủ mà địa chỉ không có bản ghi PTR nào: trình phân giải của Go trả lời một tra cứu ngược từ /etc/hosts, và tệp hosts của một máy chủ hosting nêu tên chính nó. Trang giờ hỏi DNS công khai, và nói "could not be checked" thay vì đoán khi không làm được.

  • /emails/log không bao giờ trả lời. Nó đọc 64 MiB cuối của nhật ký thư và hỏi hệ điều hành múi giờ một lần mỗi dòng — nửa triệu tiến trình cho một trang, mười bốn phút fork trước khi bất kỳ phân tích nào. Câu trả lời giờ được giữ một phút.

  • /account/activity trả lời 500. Bộ kết xuất tính kích thước trang rồi bỏ nó, và mẫu nhân với nó.

  • "Back up now" của website không bao giờ chạy được. Nó gọi podman exec trên một máy chủ không có container.

  • Các trang MongoDB chạy ba shell mongosh mỗi yêu cầu, một cơ sở dữ liệu MongoDB được tạo ra sau đó không tồn tại, và mọi kích thước MongoDB đọc là 0 B.

  • Các quyền PostgreSQL thất bại trong im lặng. Ba câu lệnh được gửi qua một câu lệnh chuẩn bị sẵn, mà PostgreSQL chỉ cho phép một.

  • Hai trang SSL không liệt kê tên miền nào cho bất kỳ ai, vì truy vấn nêu tên các cột mà bảng không có.

  • Tìm kiếm không thấy gì. Mười ba trong mười bốn loại tìm kiếm trả lời 503: engine giao chúng lại cho Go, và Go đã đăng ký một chỗ giữ chỗ trả lời 503 thay vì trình xử lý còn nguyên đó.

  • Trình quản lý tệp không có menu chuột phải. Nó chưa bao giờ được viết; mọi thao tác là một nút trên thanh công cụ. Giờ đã có một menu, dựng từ chính các nút đó.

  • Dấu thời gian mức sử dụng đọc cũ bảy tiếng. Các mẫu được đóng dấu theo UTC và in nguyên văn.

  • bandwidth của một gói giờ chỉ có một nghĩa: hạn mức truyền tải hằng tháng tính theo GB. Hai lệnh đã ghi nó là tốc độ cổng tính theo Mbit/s trong khi bộ đọc mức sử dụng coi nó là gigabyte mỗi tháng. Không gì đặt tốc độ cổng từ nó trên bất kỳ máy chủ nào, nên hành vi của không tài khoản nào thay đổi.

Added​

  • Edge Side Includes theo website, tắt theo mặc định (hitechcloudcli native-varnish esi <domain> on).
  • Quản lý bot trên tường lửa: các trình thu thập được xác minh theo dải địa chỉ do chính các nhà vận hành công bố hoặc DNS ngược được xác nhận xuôi, một trình thu thập giả mạo bị thử thách, và một dấu vân tay hình dạng yêu cầu cho phần còn lại. JA3/JA4 thật không được bao gồm và không thể có trên nginx của bản phân phối — lý do được ghi trong kế hoạch.
  • Phát hiện bất thường, diệt tiến trình chạy mất kiểm soát và đề xuất gói (hitechcloudcli native-limits anomaly|runaway|recommend). Việc diệt bị tắt cho đến khi một người vận hành bật.
  • Các truy vấn cơ sở dữ liệu chậm được xếp thẳng hàng với các yêu cầu PHP chậm trên trang X-Ray, với điều mà việc khớp theo cửa sổ thời gian chứng minh và không chứng minh được nêu ngay trên trang.
  • Một liên kết dùng một lần vào panel quản trị viên (hitechcloudcli admin login <username>), năm phút và chỉ dùng một lần. 2083 đã có bản tương đương phía khách hàng nhiều năm; 2087 không có gì, đó là lý do nó chưa bao giờ được kiểm thử từ đầu đến cuối.

Backups​

Với giấy phép Enterprise, đích, lịch và thời hạn lưu giữ giờ thuộc về quản trị viên trên 2087, và 2083 vẫn thực hiện tạo, tải xuống và khôi phục sao lưu. Giấy phép Community giữ tất cả, vì không có panel nào ở trên nó. Các trang bị giữ lại từ chối kèm một lý do thay vì lặng lẽ biến mất khỏi menu.

Trang này có hữu ích không?