Cách thay đổi mật khẩu gốc trong hình ảnh Docker

0
22

        Nếu bạn triển khai các container Docker dựa trên một hình ảnh chính thức, bạn có thể muốn đặt mật khẩu gốc để bảo mật nâng cao.
    

        
                                                                                    
                        

 dockerhero.jpg "width =" 770

                                            Docker
                                        

Có lẽ bạn đã đọc rằng một số hình ảnh Docker đã được phát hành với mật khẩu null. Điều này có thể dễ dàng dẫn đến các vấn đề bảo mật nghiêm trọng trên bất kỳ container nào bạn có thể đã triển khai với hình ảnh được kéo đó.

    
        

Mặc dù điều này không phải là điển hình, bạn có thể muốn các container của mình triển khai với ý thức bảo mật cao hơn. Mặc dù đây có thể không phải là giải pháp tốt nhất cho mọi container bạn làm việc cùng, nhưng có thể thay đổi mật khẩu người dùng root trên một hình ảnh. Nó có thể khó, bởi vì một số hình ảnh phụ thuộc vào mật khẩu được đặt cho người dùng root. Tuy nhiên, nếu bạn có kế hoạch thực hiện nhiều hoạt động phát triển nội bộ, bạn chắc chắn không muốn căn cứ những container đó vào hình ảnh với độ bảo mật yếu.

XEM: Bảo mật Windows 10: Hướng dẫn dành cho lãnh đạo doanh nghiệp (TechRepublic Premium)

muốn chỉ cho bạn cách bạn có thể thay đổi mật khẩu gốc trên một container đang chạy và sau đó cam kết thay đổi hình ảnh đó.

Tôi sẽ trình diễn với hình ảnh CentOS chính thức. Bạn sẽ có thể làm điều này với bất kỳ hình ảnh phân phối Linux chính thức nào từ DockerHub (hoặc bất kỳ hình ảnh nào bạn tự tạo). Tôi sẽ giả sử bạn đã có Docker và chạy.

Triển khai container

Điều đầu tiên cần làm là triển khai container CentOS, dựa trên hình ảnh chính thức. Điều này được thực hiện với lệnh:

 docker run -it centos 

Khi lệnh đó hoàn thành (trước tiên có thể phải kéo xuống hình ảnh CentOS), bạn sẽ thấy chính mình tại dấu nhắc bash cho người dùng root. Ban hành lệnh:

 cat / etc / Shadow | grep root 

Bạn sẽ thấy người dùng root không bao gồm mật khẩu băm ( Hình A ).

 roota.jpg "data-original =" https://tr2.cbsistatic.com/hub/i/r/2019/05/23/6356e4ff-8d80-46ee-ac0d -d3b864f71ff2 / thay đổi kích thước : Người dùng root không mật khẩu của chúng tôi. </p>
</p></div>
</figcaption></figure>
<div class=

Hãy thay đổi điều đó. Ban hành lệnh:

 passwd 

Khi được nhắc, hãy nhập và xác minh mật khẩu mới cho người dùng root. Khi hoàn thành, bạn có thể phát hành cat / etc / Shadow | Lệnh grep root để xem người dùng root hiện có mật khẩu băm.

Cam kết thay đổi

Quay lại dấu nhắc bash thông thường của bạn (bên ngoài vùng chứa), bạn phải cam kết thay đổi hình ảnh (nếu không, bạn sẽ chỉ triển khai nhiều container hơn với cùng một thiếu mật khẩu). Để thực hiện thay đổi của chúng tôi, lệnh:

 docker cam kết CONTAINER_ID NEW_IMAGE_NAME 

Trong đó CONTAINER_ID là ID của vùng chứa mà bạn đã thay đổi mật khẩu gốc và NEW_IMAGE_NAME là tên duy nhất cho hình ảnh mới. . Nếu bạn không chắc chắn ID là gì, hãy ra lệnh docker ps -a . Bạn không phải sử dụng ID container đầy đủ, chỉ bốn ký tự đầu tiên sẽ đủ.

Kiểm tra hình ảnh mới

Để xem điều này có hiệu quả hay không, hãy triển khai một thùng chứa mới với hình ảnh mới, như vậy:

Trong đó NEW_IMAGE_NAME là tên mới cho hình ảnh.

Bạn sẽ thấy mình bên trong container mới được triển khai. Ban hành lệnh:

 cat / etc / Shadow | grep root 

Bạn sẽ thấy mật khẩu gốc được băm ( Hình B ).

 rootb.jpg "data-original =" https://tr2.cbsistatic.com/hub/i/2019/05/23/316b326f-3845-43e4-9c67-dff0e44d581b / rotb.jpg [19454551</p>
</p></div>
</figcaption></figure>
<div class=

Thoát khỏi container đó và bạn đã sẵn sàng bắt đầu tung ra các container khác, dựa trên hình ảnh CentOS mới thay đổi của bạn.

Thận trọng

Như tôi đã đề cập, phương pháp này có thể không hoạt động cho mọi trường hợp. Bạn có thể gặp trường hợp ai đó xây dựng hình ảnh rất cụ thể (cho mục đích cụ thể) và mật khẩu gốc phải không thay đổi. Nhưng đối với những container bạn muốn triển khai, dựa trên các hình ảnh cơ bản chính thức (như CentOS, Ubuntu, Debian, v.v.), bạn có thể thay đổi mật khẩu gốc đó thành một cái gì đó mạnh mẽ và dễ dàng hơn khi biết rằng mật khẩu gốc đã được thay đổi.

                                                                                

                                                

Cũng xem