5 mẹo giúp khai thác tối đa tường lửa pfSense

Tác giả NetworkEngineer, T.Một 13, 2020, 11:25:15 SÁNG

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

5 mẹo giúp khai thác tối đa tường lửa pfSense


Kết nối Internet và mạng gia đình trở nên quan trọng hơn mỗi ngày. Các hoạt động như nối cáp, thêm thiết bị Internet of Things (IoT - ví dụ: loa thông minh, máy quay video, công tắc thông minh, v.v.) làm tăng sự phụ thuộc của chúng ta vào mạng gia đình đang sử dụng. Một bộ định tuyến gia đình cần có khả năng thiết lập một mạng hiệu quả, nhanh chóng và an toàn. Tôi đã chọn pfSense làm bộ định tuyến gia đình vì nhiều lý do bao gồm hỗ trợ bảo mật và VPN. Tôi cũng thích rằng tôi có thể ảo hóa nó. Nếu bạn đang sử dụng pfSense (cần trợ giúp chọn phần cứng?) Hoặc chỉ xem xét nó ở đây là 5 mẹo tôi đã thấy hữu ích trong nhà của mình.

Mẹo số 1: Nhận thông báo khi ai đó kết nối với máy chủ OpenVPN của bạn.

Như tôi đã đề cập trước đó, hỗ trợ VPN là một trong những lý do tôi chọn pfSense. Tôi sử dụng OpenVPN để cho phép các kết nối từ xa an toàn vào mạng gia đình của tôi và trong tình trạng khó khăn khi tôi muốn bảo mật điện thoại của mình trên các kết nối WiFi không đáng tin cậy. OpenVPN được hỗ trợ tốt triển khai VPN mã nguồn mở được sử dụng bởi nhiều cá nhân và tập đoàn và, tất nhiên, được hỗ trợ bởi pfSense.

Tôi cực kỳ lo lắng về việc thậm chí có cách kết nối với mạng gia đình của mình từ xa và tôi muốn có thông báo mỗi khi có ai kết nối thành công với máy chủ VPN của tôi. Thật không may, pfSense không cung cấp một cấu hình đơn giản cho việc này, nhưng việc thêm chức năng này không quá khó. Bạn chỉ cần sửa đổi tập lệnh kết nối OpenVPN để gửi email. Dưới đây là các bước:

1. Thiết lập thông báo email trong pfSense.

Bạn phải có quyền truy cập vào máy chủ SMTP (rất có thể thông qua ISP hoặc nhà cung cấp email của bạn) để pfSense gửi email. Thiết lập kết nối SMTP trong System-> Advanced và sau đó chọn tab Notifications.

2. Xác định vị trí và sao lưu openvpn.attribut.ssh.

Tệp tin openvpn.attribut.sshv được gọi bất cứ khi nào kết nối hoặc ngắt kết nối OpenVPN được thực hiện. Chúng tôi cần sửa đổi tập tin này để nhận thông báo. Khi cài đặt, tập tin này nằm ở / usr / local / sbin /. Trước khi thực hiện bất kỳ chỉnh sửa nào cho tập tin này, tôi khuyên bạn nên sao lưu nó. Bạn chỉ có thể sao chép tập tin với phần mở rộng .bak hoặc .orig nếu bạn thích.

3. Sửa đổi tệp openvpn.attribut.ssh.

Dưới đây là những gì các tập tin trông giống như trên cài đặt của tôi. Bạn chỉ cần thêm vào các phần in đậm.

Mã nguồn [Chọn]
#!/bin/sh
#
# openvpn.attributes.sh
#
# part of pfSense (httpss://www.pfsense.org)
# Copyright (c) 2004-2016 Rubicon Communications, LLC
# (Netgate)
# All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the # "License");
# you may not use this file except in compliance
# with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in
# writing, software
# distributed under the License is distributed on an
# "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
# express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

if [ "$script_type" = "client-connect" ]; then
#BEGIN EDIT
/bin/echo "Client $common_name from $trusted_ip connected @ `date`" \
| /usr/local/bin/mail.php -s"OpenVPN Connection Beginning"
#END EDIT

        if [ -f /tmp/$common_name ]; then
                /bin/cat /tmp/$common_name > $1
                /bin/rm /tmp/$common_name
        fi
elif [ "$script_type" = "client-disconnect" ]; then
        command="/sbin/pfctl -a 'openvpn/$common_name' -F rules"
        eval $command
        /sbin/pfctl -k $ifconfig_pool_remote_ip
        /sbin/pfctl -K $ifconfig_pool_remote_ip
#BEGIN EDIT
/bin/echo "Client $common_name from $trusted_ip disconnected @`date`" \
| /usr/local/bin/mail.php -s"OpenVPN Connection Ending"
#END EDIT
fi

exit 0


Phần in đậm đầu tiên gửi một email có địa chỉ IP khi kết nối thành công đến máy chủ OpenVPN và phần thứ hai thực hiện tương tự khi ngắt kết nối.

Lưu ý: Việc nâng cấp sẽ ghi đè lên tập tin này, vì vậy bạn sẽ phải áp dụng bản vá này sau mỗi lần nâng cấp.

Mẹo số 2: Tự động sao lưu tập tin cấu hình.

Nếu bạn giống như tôi, bạn liên tục chơi xung quanh với các cấu hình để thử những điều mới. Đôi khi để học. Đôi khi để thực hiện một cải tiến. Tuy nhiên, đôi khi những thay đổi không thể thực hiện được và bạn phá vỡ chức năng quan trọng. Điều này không bao giờ tốt cho một bộ định tuyến!

May mắn thay, pfSense giúp tải xuống các  tập tin cấu hình dễ dàng thông qua giao diện web. Nhưng tôi muốn sao lưu tự động trong đó các bản sao lưu khác của tôi. Điều này có thể được thực hiện bằng cách sử dụng một công việc định kỳ trên máy chủ pfSense cho các tập tin SCP đến một máy chủ từ xa hoặc bằng cách cho một máy chủ từ xa truy cập vào pfSense để sao chép các tập tin. Mặc dù kém an toàn hơn một chút (tôi chỉ cho phép truy cập ssh từ mạng LAN), tôi đã chọn tùy chọn thứ hai vì tôi muốn tập trung các công việc sao lưu của mình. Cách thực hiện như sau:

1.  Thiết lập SSH trên pfSense.

Điều này có thể được thực hiện thông qua GUI. Theo mặc định, nó chỉ kích hoạt ssh cho quản trị viên và tài khoản root, điều này tốt cho mục đích của tôi.

2. Thiết lập quyền truy cập khóa ssh vào pfSense.

Điều này sẽ giúp làm cho truy cập ssh của bạn an toàn hơn. Có rất nhiều hướng dẫn cho điều này trên web. Về cơ bản, bạn tạo khóa công khai của mình từ tài khoản bạn muốn nhập vào và sau đó sao chép khóa đó vào pfSense để nó cho phép kết nối.

3. Tạo cron job để sao chép các tập tin cấu hình có liên quan.

Tập tin cấu hình chuẩn (config.xml) có tất cả các cấu hình cho pfSense. Sau khi bạn thiết lập quyền truy cập ssh, bạn có thể sử dụng scp để sao lưu tập tin này từ xa với lệnh tương tự như sau:
root scp @ <pfSenseIP>: / cf / conf / config.xml / backup / pfSense /

Thay thế IP và đích sao lưu bằng một trong những lựa chọn của bạn. Hãy nhớ rằng, bạn phải thiết lập khóa ssh từ xa cho máy và người dùng bạn đang chạy lệnh này trong pfSense. Bạn có thể tạo một công việc định kỳ để sao chép tệp này bao nhiêu lần tùy thích và bạn có thể sao chép các tập tin khác. Ví dụ: tôi sao chép tệp / etc / hosts và các tập tin /var/dhcpd/etc/dhcpd.conf sang máy chủ dự phòng của mình. Tôi giữ bảy ngày để sao lưu các tập tin sao lưu trên mạng LAN của mình.

Mẹo số 3: Hạn chế quyền truy cập vào giao diện người dùng quản lý pfSense.

Có phải mọi máy trên mạng của bạn đều cần có quyền truy cập vào giao diện người dùng bộ định tuyến của bạn không? Tất nhiên là không rồi. Và mặc dù bạn có một tên người dùng và mật khẩu mạnh cho bộ định tuyến của mình, tôi khuyên bạn nên giảm thiểu số lượng máy có thể truy cập cài đặt bộ định tuyến của mình để bảo mật hơn nữa. Điều này có thể được thực hiện trực tiếp thông qua giao diện người dùng pfSense. Như mọi khi, tôi khuyên bạn nên sao lưu cài đặt của mình trước.

Mẹo số 4: Chặn quyền truy cập Internet đối với các thiết bị không cần thiết.

Sức mạnh của các quy tắc tường lửa pfSense cho phép bạn kiểm soát ở mức rất riêng biệt những thiết bị nào trong mạng LAN của bạn có thể và không có thể truy cập. Một cách sử dụng cho việc này là ngăn chặn một số thiết bị truy cập vào hoặc từ Internet.

Ví dụ, tôi có một vài camera giám sát được thiết lập xung quanh nhà tôi. Tôi chỉ muốn có thể xem các các hình ảnh camera trên mạng cục bộ của mình. Tôi không muốn một hacker có quyền truy cập vào các thiết bị bảo mật thấp nổi tiếng này, vì vậy tôi chặn chúng truy cập Internet.

Các máy ảnh vẫn có thể truy cập trên mạng LAN của tôi. Tôi cũng có thể xem những thứ này khi rời khỏi mạng LAN của tôi (hoặc sử dụng VPN của tôi). Chỉ cần tạo quy tắc LAN ở đầu quy tắc tường lửa LAN của bạn với các cài đặt sau:
    Hành động: chặn
    Giao diện: LAN (hoặc giao diện LAN thích hợp cho thiết lập của bạn)
    Địa chỉ gia đình: IPv4 + IPv6
    Giao thức: Bất kỳ
    Nguồn: Máy chủ, thiết bị hoặc bí danh, sau đó thêm vào nhóm IP hoặc bí danh cho một nhóm IP
    Điểm đến: Bất kỳ

Sau khi áp dụng quy tắc này, tất cả các thiết bị được liên kết với nhóm bị chặn sẽ không còn có thể gửi bất cứ thứ gì ra khỏi mạng LAN tới Internet.

Mẹo số 5: Thiết lập giám sát dịch vụ pfSense.

pfSense là tuyệt vời và cực kỳ ổn định, nhưng đôi khi một dịch vụ sẽ dừng lại. Để bảo vệ chống lại các dịch vụ chính dừng khi tôi không theo dõi bộ định tuyến của mình, tôi sử dụng Service Watchdog.

Dịch vụ này giám sát các dịch vụ pfSense mà bạn chỉ định và có thể thông báo cho bạn khi nào dừng đột ngột và thậm chí khởi động lại chúng. Sau khi cài đặt gói Service Watchdog, bạn có thể truy cập Services-> Service Watchdog và thêm các dịch vụ bạn muốn yên tâm:

Kết luận.

Tôi hy vọng bạn đã tìm thấy những lời khuyên hữu ích. Đó thực sự chỉ là người nổi tiếng trên đỉnh của tảng băng trôi khi nói đến những gì bạn có thể làm với pfSense. Ngoài ra còn có DHCP static DHCP, snort, diệt virus, pfBlocker, và nhiều hơn nữa bạn nên xem xét. Bạn có lời khuyên gì cho người khác? Chia sẻ chúng trong các bình luận bên dưới.