Chuyển đến nội dung chính

Bài đăng

Đang hiển thị bài đăng từ Tháng 2, 2017

HTTPS hoạt động như thế nào?

Chữ ký điện tử là cơ chế bao gồm 3 thuật toán: Thuật toán chọn một khóa bí mật (private key) từ 1 tập các khóa một cách  ngẫu nhiên Thuật toán ký. Đầu vào là 1 thông điệp và khóa bí mật. Đầu ra là một chữ ký. Thuật toán kiểm tra chữ ký. Đầu vào là một thông điệp, khóa công khai, và chữ ký. Đầu ra là đồng ý hay từ chối tính thẩm quyền của thông điệp Do vậy để có chữ ký điện tử, ta cần có thuật toán cho phép  ký  và  kiểm tra chữ ký . Chuyện gì sẽ xảy ra khi browser truy cập 1 site có https Quá trình browser truy cập 1 site https có thể được mô tả bằng hình ảnh dưới đây (copy từ  http://stackoverflow.com/questions/470523/how-does-ssl-really-work ) Browser sẽ truy cập 1 trang web https. Ở đây là  https://payment.com Server hay Load Balancer (LB) của payment.com sẽ trả về certificate để chứng thực rằng website user đang truy cập là website chính thức. Trong certificate là một public key PK, dùng để mã hóa K ở bước 4. Browser sẽ kiểm chứng certificate (bằng cách chạy thuậ

Re-learning Linux - Permission

Có lẽ hầu hết những người sử dụng Linux đều biết quyền hạn của 1 file hay folder được đại diện bởi r (read), w (write), x (execute) như hình dưới đây: Và ta có thể biểu diễn 9 kí tự cuối trong hình trên bằng số theo luật Read = 4 Write = 2 Execute = 1 No Permission = 0 Vậy như hình trên, giá trị số sẽ là: 744 (r + w + x = 7, r = 4, r = 4) Chúng ta cùng thử kiểm tra quyền của file  /usr/bin/passwd  : ls -l /usr/bin/passwd Và đây là kết quả: -rwsr-xr-x. 1 root root 27832 Jun 10 2014 /usr/bin/passwd Điều tôi chú ý là phần permission của file  rws .  's'  là gì? Xét thêm một lệnh nữa: ls - l - d /tmp # option - d l à để hi ể n th ị th ông tin quyề n h ạ n c ủ a m ộ t th ư m ụ c Kết quả drwxrwxrwt. 8 root root 4096 Apr 15 04:44 /tmp Cũng trong phần permission của thư mục tmp,  't'  là gì Vậy 2 kí tự 's' và 't' là gì? SUID Ta cùng quay lại với kết quả của đoạn lệnh  ls -l /usr/bin/passwd Kết quả là  -rwsr-xr-

Vài note về việc set permission với SELinux (st)

I. SELinux là gì? Theo wiki thì: Security-Enhanced Linux (SELinux) is a Linux kernel security module that provides a mechanism for supporting access control security policies, including United States Department of Defense–style mandatory access controls (MAC). Nghĩa là nó sẽ được tăng cường thêm 1 module security nữa để hỗ trợ việc quản lý quyền truy cập, bao gồm cái MAC của tụi mẽo như ở trên. Thế nên mới nảy sinh thêm vấn đề là: File thuộc về owner là tôi, permission 755, mà tôi vẫn chẳng thể write content vào file này được. II. Hoàn cảnh Khi thuê 1 con AWS EC2, thì ở bước 1, ta phải chọn Amazon Machine Image (AMI) cho instance sắp chào đời. Ở đây tôi chọn Centos7 tại AWS Marketplace cho instance của mình. Trong phần mô tả về AMI này có đoạn: All official CentOS Linux images are built with SELINUX set to enforcing mode. However, we test the images with both Selinux enabled as well as permissive -  nghĩa là AMI này tích hợp sẵn SELINUX rồi, và đang được bật. Với