Posted by : Admin Chủ Nhật, 20 tháng 10, 2013

Bàn về IP


Để làm cho một máy chủ an toàn hơn sau khi các thiết lập ban đầu, tàu Ubuntu với iptables đó là bức tường lửa mặc định của phân phối. Ngay từ đầu, mặc dù các bức tường lửa Ubuntu được cấu hình, nó được thiết lập để cho phép tất cả lưu lượng đến và đi trên một máy chủ riêng ảo. Để kích hoạt một số bảo vệ mạnh mẽ hơn trên máy chủ, chúng ta có thể thêm một số quy tắc cơ bản để bảng IP. Các quy định bảng IP đến từ một loạt các tùy chọn có thể được kết hợp để tạo ra từng quy trình cụ thể. Mỗi gói tin qua các bức tường lửa được kiểm tra bởi từng quy tắc theo thứ tự. Ngay sau khi nó phù hợp với quy định, các gói tin sau các hành động liên quan, nếu không nó đi xuống dòng. 


Lệnh Bảng IP


Mặc dù hướng dẫn này sẽ đi qua một số lượng hạn chế các lệnh sẽ cung cấp một máy chủ với một số bảo mật cơ bản, có nhiều trường hợp nhiều sắc thái và cụ thể mà có thể được phát triển cho Bảng IP. Dưới đây là một số lệnh hữu ích nhất cho việc xây dựng một bức tường lửa cho VPS của bạn, nhưng hãy nhớ rằng đây là một danh sách ngắn và có nhiều tùy chọn khác.
-A: (Nối), cho biết thêm một quy tắc để các bảng IP
-L: (danh sách), cho thấy các quy định hiện hành
-M conntrack: cho phép các nguyên tắc được dựa trên trạng thái kết nối hiện tại, xây dựng trong các - lệnh cstate.
- Cstate: giải thích nói rằng các kết nối có thể được, có 4: mới, liên quan, Thành lập, và không hợp lệ
-P: (port), đề cập đến các cổng thông qua đó máy kết nối
-J: (nhảy), lệnh này dùng để chỉ hành động mà cần phải được thực hiện nếu một cái gì đó phù hợp với một quy tắc hoàn toàn. Nó dịch vào một trong bốn khả năng:
 -CHẤP NHẬN: các gói dữ liệu được chấp nhận, và không có quy tắc khác được xử lý
 -REJECT: các gói tin bị từ chối, và người gửi được thông báo, và không có quy tắc khác được xử lý
 -Thả: các gói tin bị từ chối, nhưng người gửi không được thông báo, và không có quy tắc khác được xử lý
 -Đăng nhập: các gói tin được chấp nhận nhưng đăng nhập, và các quy tắc sau đây được xử lý 
-Tôi: (Insert), cho biết thêm một quy tắc giữa hai người trước đó
-I INPUT 3: chèn một quy tắc vào bảng IP để làm cho nó thứ ba trong danh sách
-V: (verbose), cung cấp thêm chi tiết về một quy tắc

Tạo ra các bảng IP:


Nếu bạn gõ như sau, bạn có thể thấy các quy định hiện hành trong bảng IP của máy chủ ảo:
sudo iptables-L

Họ sẽ giống như thế này:
VÀO chuỗi (chính sách ACCEPT)
Prot mục tiêu lựa chọn điểm đến nguồn

FORWARD chain (chính sách ACCEPT)
Prot mục tiêu lựa chọn điểm đến nguồn

Sản lượng dây chuyền (chính sách ACCEPT)
Prot mục tiêu lựa chọn điểm đến nguồn

Nếu bạn có một bộ quy tắc tại chỗ hoặc muốn bắt đầu tươi, bạn luôn luôn có thể thiết lập các quy tắc trở về mặc định bằng cách rửa và xóa tất cả trong số họ:
sudo iptables-F

Ngoài ra, nếu bạn muốn tăng tốc độ công việc của bạn với IP bảng, bạn có thể bao gồm-n trong lệnh. Tùy chọn này sẽ vô hiệu hóa các tra cứu DNS và ngăn ngừa các lệnh từ cố gắng để tìm thấy sự đảo ngược của mỗi IP trong các nguyên tắc. Bạn có thể sử dụng để quy định danh sách, như một ví dụ:
iptables-L-n

Một bức tường lửa cơ bản


Khi đứng các quy định hiện hành cho phép tất cả các kết nối, cả hai vào và ra. Không có biện pháp an ninh nào. Như chúng ta đã xây dựng bảng xếp hạng, hãy nhớ rằng ngay sau khi một gói tin được chấp nhận, bị từ chối, hoặc bị bỏ rơi, không có quy tắc tiếp tục được xử lý. Do đó các quy tắc đến trước được ưu tiên hơn những cái sau này. Trong khi việc tạo ra các quy tắc, chúng ta phải chắc chắn để ngăn chặn chính mình từ vô tình chặn SSH (phương pháp thông qua đó chúng tôi kết nối với máy chủ). Để bắt đầu, chúng ta hãy chắc chắn để cho phép tất cả các kết nối hiện tại, tất cả các kết nối tại thời điểm lập quy tắc, sẽ ở lại trực tuyến:





iptables-A sudo conntrack INPUT-m - state ESTABLISHED, RELATED-j ACCEPT

Chúng ta có thể đi trước và phá vỡ này:
  1. -A cho bảng IP để nối thêm một quy tắc để bàn.

  2. VÀO chỉ định quy tắc này như là một phần của chuỗi đầu vào.

  3. m conntrack tiếp theo - cstate thành lập, LIÊN QUAN đảm bảo rằng các kết quả của quy tắc này sẽ chỉ áp dụng cho các kết nối hiện tại và những người liên quan đến họ được phép

  4. -J ACCEPT cho các gói tin đến JUMP để chấp nhận và các kết nối vẫn còn tại chỗ.

Sau khi chúng tôi được đảm bảo rằng tất cả các kết nối hiện tại với máy chủ riêng ảo có thể ở lại không bị gián đoạn, chúng tôi có thể tiến hành để bắt đầu chặn tắt các kết nối không an toàn khác. Chúng ta hãy giả sử rằng chúng ta muốn chặn tất cả lưu lượng truy cập, ngoại trừ những người đến ở trên 2 cổng chung : 22 cho SSH và 80 cho lưu lượng truy cập web. Chúng tôi tiến hành bằng cách cho phép tất cả lưu lượng trên các cổng được chỉ định với các lệnh sau: 


iptables-A sudo INPUT-p tcp - dport ssh-j ACCEPT
iptables-A sudo INPUT-p tcp - dport 80-j ACCEPT

Trong cả hai lệnh, -p tùy chọn là viết tắt của giao thức mà các kết nối đang được thực hiện, trong trường hợp này TCP , trong khi - dport . xác định thông qua đó các gói tin đang được truyền Sau khi chúng tôi đã đảm bảo rằng những mong muốn giao thông sẽ làm cho nó thông qua các bức tường lửa, chúng ta có thể kết thúc bằng cách ngăn chặn tất cả lưu lượng remaing truy cập máy chủ ảo của chúng tôi. Bởi vì đây là nguyên tắc cuối cùng trong danh sách, tất cả các giao thông phù hợp với các quy tắc trước đó trong bảng IP sẽ không bị ảnh hưởng, và sẽ được xử lý như chúng tôi thiết lập trước đó. Hãy thực hiện một quy tắc để chặn tất cả lưu lượng còn lại: 




iptables-A sudo thả INPUT-j

Cùng với đó, chúng ta có thể xem những gì quy tắc cập nhật của chúng tôi như sau:
sudo iptables-L
VÀO chuỗi (chính sách ACCEPT)
Prot mục tiêu lựa chọn điểm đến nguồn         
CHẤP NHẬN tất cả - bất cứ nơi nào bất cứ nơi nào state LIÊN QUAN, thành lập 
ACCEPT tcp - bất cứ nơi nào bất cứ nơi nào tcp dpt: ssh 
ACCEPT tcp - bất cứ nơi nào bất cứ nơi nào tcp dpt: http 
Thả tất cả - bất cứ nơi nào bất cứ nơi nào

Chúng tôi gần như hoàn tất. Tuy nhiên, chúng ta đang thiếu một quy tắc hơn. Chúng ta cần phải cung cấp VPS của chúng tôi với truy cập loopback. Nếu chúng tôi đã bổ sung các quy định tại vòng loại mà không cần thêm, nó sẽ đi đến cuối danh sách và, vì nó sẽ thực hiện theo các quy tắc để chặn tất cả lưu lượng truy cập, sẽ không bao giờ được đưa vào hiệu lực. Để đối phó với vấn đề này, chúng ta cần để làm cho quy tắc này đầu tiên trong danh sách, sử dụng tùy chọn VÀO: 


sudo iptables-I INPUT 1-i lo-j ACCEPT

  1. -I INPUT 1 nơi quy tắc này ở đầu của bảng

  2. lo đề cập đến giao diện loopback

  3. -J ACCEPT sau đó đảm bảo rằng các giao thông loopback sẽ được chấp nhận
Bây giờ chúng tôi đã hoàn thành việc tạo một bức tường lửa cơ bản. Quy tắc của bạn sẽ giống như thế này (chúng ta có thể nhìn thấy các chi tiết của iptable bằng cách gõ-v):
sudo iptables-L-v

VÀO chuỗi (chính sách ACCEPT 0 gói tin, 0 byte)
 pkts bytes Prot mục tiêu lựa chọn trong ra đến nguồn         
    0 0 ACCEPT tất cả - lo bất kỳ bất cứ nơi nào bất cứ nơi nào            
 1289 93442 ACCEPT tất cả - bất kỳ bất kỳ bất cứ nơi nào bất cứ nơi nào state LIÊN QUAN, thành lập
    2 212 ACCEPT tcp - bất kỳ bất kỳ bất cứ nơi nào bất cứ nơi nào tcp dpt: ssh
    0 0 ACCEPT tcp - bất kỳ bất kỳ bất cứ nơi nào bất cứ nơi nào tcp dpt: http
   47 2422 Thả tất cả - bất kỳ bất kỳ bất cứ nơi nào bất cứ nơi nào            

FORWARD chain (chính sách ACCEPT 0 gói tin, 0 byte)
 pkts bytes Prot mục tiêu lựa chọn trong ra đến nguồn         

Chuỗi OUTPUT (chính sách ACCEPT 157 gói, 25.300 bytes)
 pkts bytes Prot mục tiêu lựa chọn trong ra đến nguồn       

Tuy nhiên, ngay sau khi khởi động lại máy chủ ảo, các bảng IP sẽ bị xóa sổ. Bước tiếp theo sẽ đi qua lưu và khôi phục các bảng IP.

Tiết kiệm IP Bàn


Mặc dù các bảng IP có hiệu quả, chúng sẽ tự động bị xóa nếu khởi động lại máy chủ. Để đảm bảo rằng họ vẫn có hiệu lực, chúng tôi có thể sử dụng một gói gọi là IP-Bàn dai dẳng.Chúng ta có thể cài đặt nó sử dụng apt-get: 


sudo apt-get install iptables-dai dẳng

Trong khi cài đặt, bạn sẽ được hỏi nếu bạn muốn lưu các quy tắc iptable cả các quy tắc IPv4 và các quy tắc IPv6. Nói có cho cả hai. quy tắc của bạn sau đó sẽ được lưu trong / etc/iptables/rules.v4 và / etc/iptables/rules.v6. Sau khi cài đặt hoàn tất, bắt đầu chạy iptables-liên tục: 




sudo bắt đầu dịch vụ iptables-dai dẳng

Sau khi khởi động lại bất kỳ máy chủ, bạn sẽ thấy rằng các quy định vẫn được giữ nguyên.

Leave a Reply

Subscribe to Posts | Subscribe to Comments

Welcome to My Blog

Tổng số lượt xem trang

Social Icons

Social Icons

List Post

Message From Admin

các bạn có thể tham gia bình luận,góp ý...những bình luận nào mang tính thô tục,chửi bậy..không tốt,admin sẽ xóa không báo trước Thân!

- Copyright © Hệ thống mạng unix/Linix -Robotic Notes- Powered by Blogger - Designed by Johanes Djogan -