Dante thực hiện hai kiểm tra truy cập: quy tắc máy khách nhận nguồn kết nối đến, còn quy tắc SOCKS cho phép đích và lệnh được yêu cầu. Ví dụ Dante 1.4.4 này cho một máy khách đến một đích do bạn kiểm soát trên cổng 443.

Danh tính dịch vụ và địa chỉ

Tạo tài khoản riêng ít quyền nếu bản cài đặt chưa cung cấp:

sudo useradd --system --no-create-home --shell /usr/sbin/nologin danteproxy

Cả hai danh tính đều có thể dùng tài khoản này cho cấu hình dùng cổng cao và danh sách nguồn được phép bên dưới. Xác thực bằng mật khẩu hoặc chức năng đặc quyền đòi hỏi xem lại các thiết lập đó. Thay tất cả địa chỉ minh họa trước khi dùng.

logoutput: stderr
internal: 192.0.2.10 port = 1080
external: 192.0.2.10
clientmethod: none
socksmethod: none
user.privileged: danteproxy
user.unprivileged: danteproxy

client pass {
    from: 198.51.100.27/32 to: 192.0.2.10/32 port = 1080
    log: connect error
}

socks pass {
    from: 198.51.100.27/32 to: 203.0.113.20/32 port = 443
    command: connect
    log: connect error
}

internal chọn bộ lắng nghe phía máy khách; external chọn địa chỉ ra ngoài. Máy chủ có một giao diện có thể dùng cùng địa chỉ đã gán cho cả hai. Có thể dùng tên giao diện khi thích hợp; kiểm tra nó mở rộng thành những địa chỉ nào.

Chính sách này cho phép gì

Quy tắc đầu nhận nguồn được chỉ định vào bộ lắng nghe. Quy tắc thứ hai chỉ cho CONNECT tới đích được chỉ định. Yêu cầu không khớp vẫn bị chặn, kể cả BIND và UDP ASSOCIATE.

Thiết lập phương thức không cung cấp xác thực tên người dùng. Quyền truy cập phụ thuộc vào quy tắc nguồn hẹp và ranh giới mạng của nó. Cách bố trí này chỉ phù hợp khi nguồn đó nhận diện được máy khách được ủy quyền.

sockd -V -f /path/to/sockd.conf

Một số bản phân phối đặt tên tệp thực thi là danted. Kiểm tra cấu hình bằng lệnh đã cài trước khi khởi động dịch vụ. Áp dụng giới hạn nguồn tương ứng ở tường lửa, rồi thử cả đích được phép lẫn một đích do bạn kiểm soát cần bị từ chối.

Bài viết liên quan