Tăng cường bảo mật hệ thống máy chủ Linux

Hướng dẫn tăng cường bảo mật hệ thống máy chủ Linux



Hệ điều hành Linux được biết đến là hệ điều hành có tính bảo mật cao tuy nhiên cần có thêm một số cấu hình nhằm tăng độ an toàn cho hệ thống. Dưới đây là một số lời khuyên hữu ích dành cho hệ thống của bạn:
  

       1. Bảo vệ an toàn từ phần cứng (BIOS)
Khi khởi động hệ thống máy tính thành phần đầu tiên được chạy chính là BIOS. Để đảm bảo an toàn cho hệ thống, người quản trị nên tắt chế độ boot từ các thiết bị như ổ đĩa CD/DVD, các thiết bị ngoại vi, đĩa mềm.. trong cấu hình BIOS. Sau đó cần tạo mật khẩu cho BIOS và GRUB nhằm hạn chế các truy cập trái phép từ chính hệ thống của bạn.
      
      2. Phân vùng ổ cứng
Một cách thức để đảm bảo an toàn dữ liệu trước rủi ro là nên phân vùng ổ cứng cho hệ thống của mình. Bằng cách tạo ra các phân vùng khác nhau, dữ liệu được chia nhỏ và nhóm lại. Khi có sự cố xảy ra tại một phân vùng nào đó, chỉ có những dữ liệu ở cùng phân vùng đó bị hỏng còn tại các phân vùng khác dữ liệu an toàn. Hệ thống của bạn cần có các phân vùng như sau và chắc chắn các ứng dụng của bên thứ 3 cần được cài đặt tại phân vùng /opt
  • /
  • /boot
  • /usr
  • /var
  • /home
  • /tmp
  • /opt
       3. Hạn chế các dịch vụ không cần thiết 
Một hệ thống máy tính khi cài đặt quá nhiều các gói không cần thiết, không những làm giảm hiệu năng của hệ thống khi tranh giành tài nguyên với các dịch vụ khác mà còn làm cho hệ thống xuất hiện các lỗ hổng từ chính các gói không cần thiết đó. Một cách giảm thiểu rủi ro là xoá hay tắt các dịch vụ khi không cần thiết. Ví dụ trên hệ điều hành CentOS bạn có thể thực hiện như sau:
  •  Kiểm tra các dịch vụ trong hệ thống đang chạy ở mức độ 3
    # /sbin/chkconfig –list | grep ‘3:on’
  • Khi tìm thấy các dịch vụ không cần thiết đang chạy bạn thực hiện lệnh sau để tắt dịch vụ này:
    # chkconfig ten_dich_vu off
  • Và có thể xoá dịch vụ khỏi hệ thống của bạn sử dụng lệnh:
    # yum -y remove ten_goi
      4. Kiểm tra các cổng dịch vụ đang chờ kết nối
Cũng như khi hạn chế các dịch vụ không cần thiết, bạn cũng nên tối thiểu các cổng dịch vụ không cần thiết để tăng hiệu năng cũng như giảm thiểu các lỗ hổng trong hệ thống của bạn. Bạn có thể sử dụng câu lệnh ‘netstat’ để xem tất cả các cổng được mở và các chương trình sử dụng kết nối mạng. Khi kiểm tra và phát hiện các dịch vụ mạng không cần thiết bạn có thể sử dụng ‘chkconfig’ để tắt các dịch vụ đó.
  • Sử dụng lệnh sau để xem thông tin tất cả các cổng:
    # netstat –tulpn
        5. Đảm bảo an toàn dịch vụ SSH
Trở về trước, khi kết nối điều khiển máy chủ từ xa sử dụng các giao thức telnet và rlogin, đây là các giao thức kết nối không an toàn khi chỉ kết nối sử dụng bản rõ mà không được mã hoá khi gửi dữ liệu. Tuy nhiên hiện Secure Shell (SSH) là giao thức được sử dụng rộng rãi bởi nó sử dụng công nghệ mã hoá khi giao tiếp với máy chủ. Tuy nhiên để đảm bảo an toàn cần cấu hình cho dịch vụ này như sau :
  • Mở file cấu hình dịch vụ SSH và thay đổi một số cấu hình:
    # vi /etc/ssh/sshd_config
  • Tìm tới dòng cấu hình cổng và thay đổi cổng mặc định từ cổng 22 sang cổng khác ví dụ chuyển sang cổng 22000
    Port 22000
  • Không cho phép đăng nhập bằng tài khoản root:
    PermitRootLogin no
  • Chỉ cho phép đăng nhập mởi một số người dùng:
    AllowUsers tennguoidung
  • Sử dụng giao thức SSH phiên bản 2:
    Protocol 2
        6. Thường xuyên cập nhật các bản vá lỗi của nhà phát hành
Luôn luôn để hệ thống của bạn được cập nhật bản mới nhất và các bản vá bảo mật. Ví dụ trên hệ điều hành CentOS:
    # yum updates
   
# yum check-update

       
     7. Vô hiệu hoá các Cronjob

Cron là một tiện ích mà người dùng có thể cho phép hoặc không cho phép các tác vụ (tasks) tự động chạy nền trên hệ thống theo định kỳ bằng cách sử dụng các cron daemon. Nó được điều khiển bởi các file /etc/cron.allow và /etc/cron.deny. Để khoá người dùng sử dụng cron, thêm tên người dùng đó vào cron.deny ; cho phép người dùng sử dụng cron, thêm tên người dùng vào file cron.allow. Để vô hiệu hoá tất người dùng sử dụng cron, thêm từ khoá ‘ALL’ vào dòng cuối cùng của file cron.deny. Sử dụng câu lệnh:
          # echo ALL >> /etc/cron.deny

      8. Tắt chức năng tự động phát hiện các thiết bị cắm vào cổng USB
Các thiết bị USB trở nên rất nguy hiểm đối với hệ thống khi tin tặc có thể thêm chương trình chạy tự động vào thiết bị. Khi chúng được cắm vào hệ thống sẽ có khả năng đánh cắp dữ liệu. Vì vậy cần tắt các chức năng tự động phát hiện USB đảm bảo hệ thống thoát khỏi nguy cơ trên. Tạo tệp tin /etc/modprobe.d/no-usb và thêm dòng dưới đây:
           install usb-storage /bin/true

      9. Luôn luôn bật cơ chế SELinux
Security-Enhanced Linux (SELinux) là một cơ chế bảo mật điều khiển truy cập bắt buộc quy định trong nhân. Nhiều hệ thống vì ưu tiên hiệu năng hệ thống nên đã tắt cơ chế này. Vô hiệu hoá SELinux có nghĩa là tự loại bỏ cơ chế bảo mật của hệ thống. Vì vậy cần suy nghĩ khi lựa chọn hiện năng và mức độ bảo mật của hệ thông khi đưa vào hoạt động

SELinux cung cấp 3 chế độ cơ bản:

  • Enforcing: Đây là chế độ mặc định cho phép thực hiện tất cả các chính sách bảo mật trên hệ thống
  • Permissive: Ở chế độ này SELinux không thực thi các chính sách bảo mật mà nó cung cấp các cảnh báo về các hoạt động. Chế độ này rất hưu ích để hạn chế các vấn đề của SELinux
  • Disable: Tắt cơ chế SELinux
Để xem trạng thái hiện tại của cơ chế này sử dụng câu lệnh :
         # sestatus

Nếu nó đang tắt cần bật bởi câu lệnh:
         # setenforce enforcing

Trong hệ điều hành CentOS các cấu hình của SELinux được quản lý bởi file ‘/etc/selinux/config’

      10. Loại bỏ giao diện KDE/GNOME
Khi hệ thống có mục đích sử dụng chính là hệ thống web (LAMP server) không cần sử dụng tới các giao diện X Window như KDE hay GNOME. Vì vậy nên tắt hoặc loại bỏ chúng để cải thiện an toàn cũng như hiệu năng của hệ thống. Một cách đơn giản tắt chúng là mở tệp tin ‘/etc/inittab’ và đặt chúng chạy ở mức độ 3. Xoá chúng khỏi hệ thống sử dụng câu lệnh
          # yum groupremove "X Window System"

      11. Tắt giao thức Ipv6
Giao thức IPv6 là giao thực ưu việt để thay thế IPv4 khi giao thức đang dần cạn kiện IP, tuy nhiên hiện nay hầu hết các hệ thống đều sử dụng IPv4 nên giao thức IPv6 là không cần thiết và nên tắt giao thực này. Mở tập tin cấu hình mạng và thêm các dòng cấu hình sau để tắt.
  •  Mở file:
    # vi /etc/sysconfig/network
  • Thêm các dòng cấu hình:
    NETWORKING_IPV6=no
    IPV6INIT=no
        12. Hạn chế người dùng sử dụng các mật khẩu cũ
Trong hệ thống sẽ là rất hữu ích nếu không cho phép các người dùng sử dụng các mật khẩu cũ giống nhau để hạn chế các nguy cơ mất an toàn cho hệ thống. Trong các hệ điều hành RHEL / CentOS / Fedora passwork cũ được lưu lại trong tệp tin “/etc/security/opasswd” và được quản lý bởi module PAM. Để cấu hình người dùng không được dùng một mật khẩu cũ quá 5 lần bạn làm theo hướng dẫn sau :
  • Mở tệp tin /etc/pam.d/system-auth
    # vi /etc/pam.d/system-auth
  • Thêm dòng sau vào dòng có từ khoá “auth”
    auth sufficient pam_unix.so likeauth nullok
  • Sửa dòng có từ khoá “password” để không cho phép người dùng sử dụng lại mật khẩu quá 5 lần:
    password sufficient pam_unix.so nullok use_authtok md5 shadow remember=5
       13. Cấu hình sử dụng mật khẩu mạnh
Có rất nhiều người thường sử dụng các mật khẩu yếu và các mật khẩu của họ thường bị các tin tặc dễ dàng lấy đi thông tin từ các phương thức tấn công băng các phương pháp tấn công từ điển hoặc tấn công dò quét mật khẩu. Vì vậy cần có một cơ chế ép các ngươi dùng sử dụng các mật khẩu mạnh. Để thực hiến điều này cần thêm cấu hình trong modun ‘pam_cracklib’ như sau:
  • Mở tập tin cấu hình
    # vi /etc/pam.d/system-auth
  • Và thêm dòng có cấu hình yêu cầu các thông số độ dài tối thiểu của mật khẩu, sử dụng cả chữ in thường, chữ in hoa, chữ số, kí hiệu đặc biệt có trong mật khẩu như sau :
    /lib/security/$ISA/pam_cracklib.so retry=3 minlen=8 lcredit=-1 ucredit=-2 dcredit=-2 ocredit=-1
       14. Bật chế độ tường lửa
Sẽ là rất tốt khi bật chế độ tường lửa trong hệ thống, đảm bảo an toàn trước các truy cập trái phép đối với hệ thống. Hệ thống cần được thêm các luật trong iptables để lọc các gói tin đến, gói tin đi và gói tin chuyển tiếp tới hệ thống. Và có thể chỉ định rõ các địa chỉ đích, địa chỉ nguồn cho phép hoặc không cho phép sử dụng các cổng và giao thức được chỉ định.
  • Đề xem các luật có trong hệ thống sử dụng lệnh sau:
    # iptables -L -n -v
       15. Kiểm tra các tài khoản không có mật khẩu
Trong hệ thốn mỗi tài khoản có mật khẩu rỗng có nghĩa là đã để lộ các phương thức xác thực trái phép mà tất cả mọi người có thể thực hiện, đó là một mối nguy hiểm lớn đối với hệ thống. Vì vậy cần chắc chắn rằng tất cả các tài khoản cần có mật khẩu mạnh và không ai khác được cho phép truy cập. Vì vây cần kiểm tra các tài khoản không có mật khẩu như câu lệnh dưới đây và cần xem xet khoá các tài khoản này lại.
          # cat /etc/shadow | awk -F: '($2==""){print $1}'

       16. Tập trung log của các máy chủ về máy chủ chuyên dụng
Di chuyển các log ghi lại hoạt động của hệ thống về các máy chủ chuyên dụng là cách để phòng ngừa các tin tặc thay đổi dữ liệu khi chúng có quyền tryu cập trái phép vào hệ thống. Vì vậy có thể chắc chắn hệ thống đang an toàn. Dưới đây là hông tin về các tập tin log mặc định và cách sử dụng của chúng.
  • /var/log/message– Ghi lại các hoạt động của toàn hệ thống
  • /var/log/auth.log– Log xác thực hệ thống
  • /var/log/kern.log– Log của nhân
  • /var/log/cron.log– Log các tiến trình được tự động chạy
  • /var/log/maillog– Log dịch vụ mail
  • /var/log/mysqld.log– Log dịch vụ hệ quản trị dữ liệu mysql
  • /var/log/utmpor /var/log/wtmp : Lịch sử đăng nhập
  • /var/log/yum.log: Log dịch vụ YUM
    17. Sao lưu dữ liệu quan trọng
Trong một hệ thống sản xuất, thực sự cần thiết khi sao lưu và giữ các giữ liệu quan trọng một cách cẩn thận. Khi có rủi ro trong hệ thống có thể dễ dàng phục hồi bởi các dữ liệu đã được sao lưu.

    18. Không cho phép thay đổi thư mục /boot
Nhân hệ thống và các tập tin liên quan được đặt ở thư mục /boot, nó được đặt mặc địch cho phép đọc và sửa. Cần thay đổi để chỉ cho phép đọc thư mục này là thực sự cần thiết để đảm bảo cho hệ thống được hoạt động ổn định. Để thực hiện điều này cần thực hiện theo các bước sau:
  • Mở tệp tin “/etc/fstab”:
    # vi /etc/fstab
  • Và cần thêm dòng sau vào cuối của tệp tin:
    LABEL=/boot /boot ext2 defaults,ro 1 2
Cần ghi lại điều này mà thay đổi quyền của thư mục khi cập nhật nhân trong tương lai.

    19. Chặn các gói tin ICPM và các yêu cầu Broadcast
Nhiều tin tặc sử dụng các gói tin ICMP để xác định các địa chỉ IP và tấn công các máy chủ có IP này. Để ngăn chặn điều này cần ngăn chặn các gói tin theo cách thay đổi tập tin “/etc/sysctl.conf” để chặn ping hoặc các yêu cầu broadcast.
  • Chặn các gói tin ICMP:
    net.ipv4.icmp_echo_ignore_all = 1
  • Chặn các yêu cầu broadcast:
    net.ipv4.icmp_echo_ignore_broadcasts = 1
  • Để cập nhật các thay đổi cần chạy câu lệnh :
    # sysctl –p
Trên đây là một số mẹo để cải thiện an toàn cho hệ thống Linux hãy kiểm tra và bổ sung để hệ thống trách gặp các rủi do đáng tiếc

                                                                                                                                               tecmint.com

0 nhận xét

Chứng chỉ SSL/TLS miễn phí đã được chấp nhận trong các trình duyệt web lớn



Chứng chỉ SSL/TLS miễn phí đã được chấp nhận trong các trình duyệt Web lớn


SSL và SSL Certificate là gì?

SSL là viết tắt của từ Secure Sockets Layer. Đây là một tiêu chuẩn an ninh công nghệ toàn cầu tạo ra một liên kết được mã hóa giữa máy chủ web và trình duyệt. Liên kết này đảm bảo tất cả các dữ liệu trao đổi giữa máy chủ web và trình duyệt luôn được bảo mật và an toàn.
SSL đảm bảo rằng tất cả các dữ liệu được truyền giữa các máy chủ web và các trình duyệt được mang tính riêng tư, tách rời. SSL là một chuẩn công nghiệp được sử dụng bởi hàng triệu trang web trong việc bảo vệ các giao dịch trực tuyến với khách hàng của họ

Let’s Encrypt vừa có một bước tiến gần hơn đến mục tiêu cung cấp chứng chỉ HTTPS miễn phí dành cho bất cứ ai. Let’s Encrypt – cơ quan chứng thực (Certificate authority) chứng chỉ mã nguồn mở miễn phí, tự động – vừa mới thông báo rằng, chứng chỉ của họ đã được tin cậy và hỗ trợ bởi tất cả các trình duyệt Web lớn.

  • Let’s Encrypt cho phép bất kì website nào cũng có thể bảo vệ người dùng với chứng chỉ SSL/TLS (Secure Socket Layer/Transport Layer Security), mã hóa toàn bộ lưu lượng giữa người dùng và website. Không chỉ miễn phí, sáng kiến mới có giúp thực thi HTTPS được dễ dàng hơn. Người dùng có thể hoạt động trực tuyến, thanh toán mua hàng một cách an toàn.
  • Trang chứa bản chứng minh của chứng chỉ miễn phí https://helloworld.letsencrypt.org/ nay đã hoạt động bình thường trên các trình duyệt Mozilla, IE, Safari, Chrome …  mà không đưa ra cảnh báo lỗi. Dự kiến Let’s Encrypt sẽ đi vào hoạt động chính thức vào thấng 11 sắp tới.
  • Let’s Encrypt thử nghiệm phát hành chứng chỉ miễn phí đầu tiên vào cuối tháng trước và tích cực hợp tác và các nhà cung cấp trình duyệt nhằm ghi nhận chứng chỉ của họ. Cơ quan chứng thực mã nguồn mở được điều hành bởi nternet Security Research Group (ISRG) , hỗ trợ bởi tổ chức Electronic Frontier Foundation (EFF), Mozilla, Cisco, Akamai, và nhiều đơn vị khác.

0 nhận xét

About me

 
Họ cười tôi vì tôi không giống họ, tôi cười họ vì họ quá giống nhau.

0 nhận xét

Thay đổi hình nền đăng nhập trong Kali linux 2.0 Sana


0 nhận xét