Mục lục:

Raspberry Pi4 Firewall: 12 bước
Raspberry Pi4 Firewall: 12 bước

Video: Raspberry Pi4 Firewall: 12 bước

Video: Raspberry Pi4 Firewall: 12 bước
Video: Hướng dẫn cài Android 12 trên Raspberry Pi 4 mới nhất 2022 2024, Tháng sáu
Anonim
Raspberry Pi4 Firewall
Raspberry Pi4 Firewall

Với Raspbery Pi 4 (RPi4) mới vừa được phát hành, tôi quyết định tạo cho mình một bức tường lửa sử dụng tại nhà. Sau khi tình cờ tìm hiểu trên Internet, tôi tìm thấy một bài báo rất hay về chủ đề này của Guillaume Kaddouch (https://networkfilter.blogspot.com/2012/08/building-your-piwall-gateway-firewall.html). Bài báo thật tuyệt vời, và bạn nên đọc nó trước khi tiếp tục - nó sẽ làm cho quá trình được mô tả ở đây dễ dàng hơn. Vấn đề là, bài báo đó được viết vào năm 2012 và dựa trên bản phân phối ArchLinux. Không có gì chống lại ArchLinux, nhưng tôi muốn thực hiện điều này bằng cách sử dụng bản dựng Raspbian phổ biến hơn. RPi4 có thể xử lý các yêu cầu xử lý. Vì vậy, cảm ơn bạn, Guillaume, vì nguồn cảm hứng !! Hướng dẫn này sẽ tham chiếu trở lại bài đăng gốc của Guillaume (gọi tắt là "GK"), bạn có thể sẽ muốn mở cả hai trang trong trình duyệt của mình.

Một số điều quan trọng về tường lửa của tôi:

  • Tôi có giắc cắm ethernet tích hợp (eth0) đi đến mạng LAN
  • Bộ định tuyến ISP nằm trên bộ điều hợp TRENDnet (eth1)
  • Tôi đã chủ động tắt bộ điều hợp không dây (wlan0)
  • Điều này không được đảm bảo giúp bạn đạt được 100% ở đó… hy vọng ít nhất là 99%:) vì vậy vui lòng cung cấp phản hồi / nhận xét
  • Đây là hướng dẫn đầu tiên của tôi. Xin lỗi vì bất cứ điều gì không tuân theo các chỉ tiêu hướng dẫn thích hợp.

Bây giờ, chúng ta hãy vui chơi…

Quân nhu

  • Raspberry Pi 4

    • Tôi đã sử dụng phiên bản 4GB, vui lòng thử phiên bản khác
    • Trường hợp (Tôi thích FLIRC, nhưng đó là cuộc gọi của bạn)
    • Bộ chuyển đổi điện
  • Thẻ MicroSD, 32GB trở lên (tôi đã sử dụng thẻ 64GB)
  • TRENDnet USB3.0 Gigabit Ethernet Dongle (Mẫu: TU3-ETG)
  • Một vài cáp mạng RJ45
  • Bàn phím và chuột USB
  • Cáp Micro-HDMI to HDMI (được cắm vào màn hình HDMI)

Bàn phím, video và chuột đó có thể bị xóa khi bạn có thể thiết lập và chạy SSH và VNC.

Bước 1: Thiết lập RPi ban đầu

Thiết lập RPi ban đầu
Thiết lập RPi ban đầu

Điều đầu tiên cần làm là thiết lập và chạy RPi4 của bạn như một hệ thống mới. Tải xuống và cài đặt bản phân phối đầy đủ Raspbian (Raspbian Buster với máy tính để bàn và phần mềm được đề xuất). Bạn sẽ cần phải khởi động lại một vài lần để nó có thể mở rộng và tận dụng lợi thế của thẻ MicroSD đầy đủ.

Khi nó khởi động, bạn sẽ cần trả lời các câu hỏi về địa phương, mạng, bàn phím và chuột. Kết nối với mạng và cho phép nó cập nhật.

Cũng hãy xác nhận rằng mọi thứ được cập nhật đúng cách và nhận một vài tiện ích có thể giúp gỡ lỗi sau này:

$ sudo apt-get cập nhật

$ sudo apt-get dist-upgrade $ sudo apt-get install htop $ sudo apt-get install tcpdump

Tôi KHÔNG cài đặt vim, cũng như không thực hiện bất kỳ bước 8 nào của GK (cấu hình vim). Tôi vừa mới sử dụng trình soạn thảo vi vì nó có hầu hết các tính năng đó. Điều này cũng tiết kiệm một số thời gian và công sức.

Sau khi hoàn tất, hãy thiết lập RPi4 để chúng tôi có thể cắm nóng màn hình. Mục tiêu của tôi là làm cho nó chạy không cần đầu, nhưng nếu tôi cần cắm vào màn hình, nó sẽ được công nhận.

$ sudo vi /boot/config.txt

Trong tệp đó:

bỏ ghi chú (bỏ dấu # -symbol phía trước): hdmi_force_hotplug = 1

ghi chú: hdmi_drive = 2

tùy chọn, thêm: enable_hdmi_sound

Bước 2: Kết nối mạng

Kết nối mạng
Kết nối mạng
Kết nối mạng
Kết nối mạng

Nếu bạn đang theo dõi trên trang web của GK, đây là bước 3. Nhưng hãy nhớ rằng, tôi đã không theo dõi nhiều bước đầu tiên của anh ấy theo thứ tự chính xác.

Khi tôi lần đầu tiên bắt đầu điều này, tôi đã kết nối RPi trực tiếp với bộ định tuyến ISP của mình ("bên cạnh mạng hiện có của tôi"). Điều này cho phép tôi chơi với cấu hình mà không ảnh hưởng đến mạng. Kết nối RJ45 tích hợp RPi4 với bộ định tuyến của bạn (hoặc không dây, nếu bạn muốn). Với Raspbian, cách dễ nhất để làm điều này là sử dụng GUI. Từ màn hình nền, nhấp vào Biểu tượng Raspberry> Tùy chọn> Cấu hình Raspberry Pi. Đảm bảo bật SSH và VNC. Thao tác này sẽ cài đặt máy khách máy chủ Real-VNC. Tôi thấy rằng nếu bạn cố gắng kết nối với ứng dụng khách Tight VNC, nó sẽ phù hợp và yêu cầu một số cấu hình bổ sung. Vì vậy, tại thời điểm này, hãy cài đặt ứng dụng Real-VNC trên máy tính để bàn / máy tính xách tay chính của bạn (không phải RPi4 của bạn).

SSH sẽ không hoạt động ngoài hộp (bước 7 của GK). Chúng tôi cần sửa đổi một số cấu hình. Đầu tiên, cho phép sửa đổi tệp cấu hình ssh. Đây là những thay đổi tôi đã thực hiện. Hãy nhớ rằng tôi đã không nghiên cứu tác động của mọi thay đổi ở đây. Tôi đã làm những gì trang web của GK đề xuất. Một số thay đổi này có thể KHÔNG được yêu cầu.

$ sudo vi / etc / ssh / sshd_config

Trong tệp đó, bỏ ghi chú các dòng sau:

HostKey / etc / ssh / ssh_host_rsa_keyHostKey / etc / ssh / ssh_host_ecdsa_keySyslogFacility AUTHLogLevel INFOStrictModes yesPubkeyAuthentication yesHostBasedAuthentication no

Bỏ qua Rhosts có

PrintMotd noPrintLastLog yesTCPKeepAlive yes

Và thêm các dòng sau:

Giao thức 2UsePrivilegeSepraction yesKeyRegenerationInterval 3600ServerKeyBits 768RSAAuthentcation yesRhostsRSAAuthentication no

Và sửa đổi các dòng sau:

Port 15507LoginGraceTime 60PermitRootLogin no

Hãy nhanh chóng nói về sửa đổi đầu tiên đó… cổng 15507. SSH thường chạy trên cổng 22. GK đã chuyển nó sang 15507 - không biết tại sao. Bạn có thể thực hiện một trong hai cách sửa đổi nó hoặc không… Nếu bạn chọn sửa đổi nó, bạn sẽ cần thêm "-p 15507" vào bất kỳ lệnh SSH nào mà bạn cố gắng kết nối. Nếu bạn quyết định bỏ qua, hãy để ý những chỗ khác mà 15507 được đề cập trong các hướng dẫn này và bỏ qua chúng, đặc biệt là các quy tắc tường lửa!

Cuối cùng cho bước này, hãy lấy địa chỉ IP của RPi4 để chúng tôi biết những gì cần kết nối:

$ ipconfig -a

Tìm kết nối mạng đang hoạt động (có thể là trên eth0 hoặc wlan0) và ghi lại địa chỉ IP đó. Bây giờ bạn có những gì bạn cần để kết nối từ xa với RPi4. Hãy khởi động lại trước khi tiếp tục:

$ sudo khởi động lại

Bước 3: Người dùng khác

Người dùng khác
Người dùng khác

Tốt nhất là không sử dụng tên người dùng RPi mặc định (pi) và bạn chắc chắn nên thay đổi mật khẩu. Để an toàn, hãy thêm một tài khoản người dùng khác mà bạn có thể sử dụng để kết nối từ xa và tiếp tục (bước 6 của GK). Quay lại RPi, cho phép thêm người dùng mới và đặt quyền cho người dùng SSH và đưa ra lệnh sudo:

$ sudo useradd -m -g người dùng -G sudo, netdev -s / bin / bash [USERNAME]

$ sudo passwd [USERNAME]

Vui lòng đăng xuất hoặc khởi động lại và sử dụng tài khoản mới tạo đó về sau.

Bước 4: Tập tin Syctl

Tệp Syctl
Tệp Syctl

Bước tiếp theo là sửa đổi tệp /etc/sysctl.conf (bước 9 của GK). Tệp này được sử dụng để thay đổi một vài cài đặt hạt nhân. Chúng tôi sẽ làm chính xác những gì GK nói phải làm. Đây là một tập hợp các bước đơn giản hóa.

$ sudo vi /etc/sysctl.conf

Trong tệp đó, bỏ ghi chú các dòng sau:

net.ipv4.conf.default.rp_filter = 1net.ipv4.conf.all.rp_filter = 1net.ipv4.tcp_syncookies = 1

net.ipv4.ip_osystem = 1

net.ipv4.conf.all.accept_redirects = 0net.ipv4.conf.all.send_redirects = 0net.ipv4.conf.all.accept_source_route = 0net.ipv4.conf.all.log_martians = 1

Và thêm các dòng sau:

net.ipv4.icmp_echo_ignore_broadcasts = 1net.ipv4.icmp_ignore_bogus_error_responses = 1net.ipv4.conf.eth0.accept_redirects = 0vm.min_free_kbytes = 8192

Khởi động lại dịch vụ với các cài đặt mới này và khởi động lại:

$ sudo sysctl -p

$ sudo khởi động lại

Bước 5: DHCP & DNS (phần 1)

DHCP & DNS (phần 1)
DHCP & DNS (phần 1)

Đối với tôi, có hai phần khó khăn trong quá trình này… Thiết lập DHCP & DNS, và thiết lập các quy tắc tường lửa. Vì vậy, ở đây chúng ta đi với phần đầu tiên. Nếu bạn đang theo dõi trên trang web của GK, chúng tôi đang ở bước 10.

Để thực hiện việc này, bạn sẽ cần một vài thông tin từ bộ định tuyến ISP (hoặc tường lửa hiện tại):

  • Địa chỉ IP nội bộ của bộ định tuyến
  • Địa chỉ IP bạn có thể sử dụng cho giao diện của RPi4 với bộ định tuyến
  • IP cho một máy chủ định danh (hoặc hai)
  • Tên giao diện cho kết nối LAN (ví dụ: eth0 hoặc eth1)
  • Tên giao diện cho kết nối ISP (ví dụ: bất cứ thứ gì bạn không sử dụng cho mạng LAN)

Bạn cũng có thể cần sửa đổi cài đặt của bộ định tuyến để cấp cho RPi4 một địa chỉ IP tĩnh (dấu đầu dòng 2, ở trên). Ít nhất, đó là những gì tôi đã làm.

Đầu tiên, hãy sửa đổi tệp dhcpcd.conf…

$ sudo vi /etc/dhcpcd.conf

Bỏ ghi chú những dòng này:

kiên trì quick_commitoption domain_name_servers, domain_name, domain_search, host_nameoption interface_mtu

Đối với mỗi giao diện mạng, bạn cần thiết lập chi tiết mạng. Họ sẽ trông giống như thế này:

# Tĩnh cho giao diện với ISP

interface eth1 static ip_address = 192.168.1.static routers = 192.168.1.254 static domain_name_servers = 8.8.8.8 8.8.4.4 metric 100 # Static for interface to the LAN interface eth0 static ip_address = 10.210.212.static routers = 10.210.212.1 static domain_name_servers = 8.8.8.8 8.8.4.4 #interface wlan0 #static ip_address = 10.210.212. # static routers = 10.210.212.1 #static domain_name_servers = 8.8.8.8 # Uncomment phần này nếu bạn muốn buộc địa chỉ IP trên thiết bị. Tên sau 'máy chủ' # là vô nghĩa đối với hệ thống. Nhập địa chỉ MAC của thiết bị cũng như địa chỉ #IP mong muốn. Đảm bảo rằng nó nằm ngoài phạm vi dhcp. Lặp lại khi cần thiết. #host [ANYTHING] {# phần cứng ethernet xx: xx: xx: xx: xx: xx; # địa chỉ cố định 10.210.212.250; #}

Hãy chắc chắn sử dụng những con số phù hợp với bạn. Các IP ở trên là dành cho mạng của tôi, ngoại trừ các máy chủ định danh của Google. Lưu ý rằng tôi cũng đặt số liệu cho ISP thành 100 để buộc đó phải là lần thử đầu tiên mặc định cho lưu lượng mạng. Tôi cũng đặc biệt không làm gì với bộ điều hợp không dây của mình (wlan0). Tôi định tắt hoàn toàn giao diện đó, vì vậy nó có ý nghĩa đối với tôi.

Ngoài ra, nếu bạn muốn buộc địa chỉ IP trên một thiết bị (như NAS), hãy sử dụng phần dưới cùng đó. Đặt cho máy chủ một cái tên có ý nghĩa đối với bạn, nhưng biết rằng nó không bao giờ được sử dụng bởi bất cứ thứ gì. Đừng quên dấu chấm phẩy.

Bước 6: DHCP & DNS (phần 2)

DHCP & DNS (phần 2)
DHCP & DNS (phần 2)

Bước tiếp theo là sửa đổi tệp dnsmasq.conf…

$ sudo vi /etc/dnsmasq.conf

Chúng ta cần bỏ ghi chú một vài dòng và chỉnh sửa một vài dòng. Bạn cũng sẽ cần sao chép một vài cài đặt từ tệp dhcpcd.conf. Hai câu hỏi khác bạn cần tự trả lời là:

Mạng LAN nội bộ (ví dụ: eth0) có cần DHCP và DNS không? Bạn muốn phạm vi DHCP nào cho mạng LAN của mình và thời gian cho mỗi lần thuê là bao lâu?

Bắt đầu bằng cách bỏ ghi chú một vài dòng:

bogus-privno-dhcp-interface = wlan0bind-interfacedhcp-name-match = set: wpad-ignore, wpaddhcp-ignore-names = tag: wpad-ignore

Đặt máy chủ định danh của bạn. Tìm dòng bắt đầu 'server =' và làm cho nó giống như 'server = 8.8.8.8'.

Đặt phạm vi DHCP của bạn. Có rất nhiều cách để làm điều này. Tôi đã chọn cung cấp hai IP điểm cuối, mặt nạ và thời hạn của hợp đồng thuê. Phạm vi của tôi là 10.210.212.20-10.210.212.240, với mặt nạ mạng là 255.255.255.0 và thời gian thuê là 12 giờ. Tôi khuyên bạn nên để một số IP ở đầu và cuối phạm vi của bạn trong trường hợp bạn cần cung cấp cho một thứ gì đó IP tĩnh.

Đặt giao diện nhận DNS và DHCP (mạng LAN) bằng cách sửa đổi dòng 'interface =' thành 'interface = eth0). Lưu ý rằng tôi đã nói cụ thể rằng KHÔNG chỉ định địa chỉ IP DHCP cho mạng không dây của tôi. Một lần nữa, tôi có ý định tắt hoàn toàn giao diện đó, vì vậy nó có ý nghĩa đối với tôi.

Bước 7: DHCP & DNS (phần 3)

DHCP & DNS (phần 3)
DHCP & DNS (phần 3)

Chuyển hướng từ hướng dẫn của GK cho bước cuối cùng này…

Khi tôi khởi động lại RPi của mình tại thời điểm này, quy trình dnsmasq không hoạt động. Chọc dò một chút và tôi thấy rằng giao diện mạng eth0 và eth1 của tôi đều không hoạt động trước khi dnsmasq được khởi động, vì vậy dnsmasq sẽ không thành công khi khởi động. Tôi sẽ phải kết nối bàn phím và chuột với RPi và khởi động lại dnsmasq theo cách thủ công. Điều này không lý tưởng với một thiết lập không đầu. Tôi đã đọc một loạt các bài đăng cho biết thực hiện các thay đổi khác nhau đối với cài đặt (ví dụ: vô hiệu hóa giao diện liên kết) và những thứ khác. Không ai trong số nó hoạt động. Cuối cùng, tôi quyết định chỉ cần viết một kịch bản shell sẽ chạy 2 phút một lần và kiểm tra trạng thái của dnsmasq. Nếu nó không chạy, hãy khởi động nó. Tôi cho rằng tình huống này không phải là duy nhất đối với tôi. Vì vậy, đây là những gì bạn cần làm:

Tạo mã sau thành một tệp có tên 'dns_masq_keepalive.sh' trên RPi của bạn.

#! / bin / bash

# Tệp: dns_masq_keepalive.sh # Tháng 8 năm 2019 # Sử dụng tệp này với crontab -e (* / 2 * * * * /etc/dns_masq_keepalive.sh) để đảm bảo rằng dnsmasq chạy. Dịch vụ sẽ tự dừng nếu # tất cả các giao diện được đề cập trong dhcpcd.conf không được khởi động trước khi nó bắt đầu. Điều này khắc phục sự cố. # Dòng tiếp theo này sẽ trả về tất cả các công việc đang hoạt động có từ 'dnsmasq' trong đó. Vì vậy, không bao gồm 'dnsmasq' trong tên của # tệp này, nếu không nó sẽ trả về mọi lúc và bạn sẽ không bao giờ phải khởi động lại. dns_running = $ (ps -e | grep dnsmasq) echo $ dns_running if [-z "$ dns_running"] then #echo No DNSMasq sudo /etc/init.d/dnsmasq restart #else #echo DNSMasq Đang chạy fi

Cắt và dán nó nếu bạn cần. Dù bạn làm gì, đừng bao gồm 'dnsmasq' trong tên. Tập lệnh tìm kiếm từ 'dnsmasq' và nếu tập lệnh có từ này trong tên, nó sẽ giả định rằng dịch vụ đang chạy. Ngoài ra, hãy đổi tên tệp để nó kết thúc bằng '.sh'. Intructables sẽ không cho phép tôi tải lên tệp '.sh' - điều này tốt. Các hướng dẫn còn lại giả sử tệp tồn tại tại: /etc/dns_masq_keepalive.sh.

Thứ hai, đặt quyền trên tệp để tệp có thể được thực thi:

$ sudo chmod u + x /etc/dns_masq_keepalive.sh

Bây giờ chúng ta sẽ sử dụng hệ thống crontab để làm cho chương trình chạy cứ sau 2 phút mỗi ngày. Khởi động crontab:

$ sudo crontab -e

Nó sẽ nhắc bạn chỉnh sửa bằng vi hoặc thứ gì đó khác. Bất kỳ sẽ làm việc. Khi bạn có thể chỉnh sửa nó, hãy thêm phần sau vào cuối tệp:

* / 2 * * * * sudo /etc/dns_masq_keepalive.sh

Không có dấu cách trong '* / 2', nhưng không có dấu cách giữa các dấu hoa thị. Lưu và đóng. Nó sẽ cho bạn biết rằng công việc đã được lên lịch, hoặc đại loại như vậy.

Bước 8: Tường lửa

Tường lửa
Tường lửa

Quá trình đau đớn tiếp theo là tường lửa (bước 11 của GK). Raspbian sử dụng hệ thống iptables nổi tiếng. Blog của GK cung cấp ba tệp để giúp bạn đạt được điều đó… firewall.simple, firewall.advanced và firewall.flows. Tất cả đều tôn trọng GK, nhưng hãy tự mình làm điều đó một cách dễ dàng và chỉ cần sử dụng firewall.simple. Tôi đã dành rất nhiều thời gian để tìm ra hệ thống và quy tắc iptables. Tôi rất vui vì tôi đã làm, nhưng nó rất đau đớn. Vì vậy, tôi cung cấp cho bạn hai tệp đính kèm để giúp bạn… firewall.simple và firewall.clear. Sao chép cả hai tệp này vào thư mục / etc của bạn và thay đổi quyền để làm cho chúng có thể thực thi:

$ sudo chmod u + x /etc/firewall.simple

$ sudo chmod u + x /etc/firewall.clear

Trước khi bạn thiết lập bất kỳ quy tắc tường lửa nào, hãy cắm máy tính để bàn / máy tính xách tay vào cổng RPi eth0 của bạn và xác nhận rằng nó có địa chỉ IP và có DNS đang chạy. Cách dễ nhất để làm điều này là thử và ping một trang web chung và sau đó là một địa chỉ IP đã biết. Đồng thời ping bộ định tuyến RPi và ISP của bạn. Nếu bạn nhận được kết quả, thì tất cả đều tốt và bất kỳ sự cố mạng nào bạn gặp phải hiện nay có thể là do sự cố tường lửa.

Tệp đầu tiên được cung cấp ban đầu bắt đầu là tệp firewall.simple của GK (cảm ơn, một lần nữa, GK!). Tôi đã thực hiện một loạt các thay đổi để làm cho nó hoạt động cho hệ thống này. Nó phải cho phép ít nhất HTTP, HTTPS, DNS, DHCP, ping, SSH nội bộ, VNC nội bộ và plex. Plex có thể không có tất cả các cổng mở cho mọi thiết bị có thể, nhưng có rất nhiều bài viết trên mạng để khắc phục điều đó. Ở đầu tệp là các giá trị mà bạn sẽ cần thay đổi cho cấu hình mạng của mình.

Tệp thứ hai, firewall.clear, được sử dụng khi bạn kiểm tra các quy tắc tường lửa của mình. Khi bạn chạy 'sudo /etc/firewall.clear', tất cả các quy tắc tường lửa sẽ bị xóa và hệ thống phải được kết nối đầy đủ với Internet. Vì vậy, nếu bạn không thể làm cho một dịch vụ mạng (như dns) hoạt động với các quy tắc firewall.simple tại chỗ, nhưng nó bắt đầu hoạt động sau khi bạn chạy firewall.clear, bạn biết rằng bạn đang gặp vấn đề về quy tắc. Điều này sẽ chỉ thực sự quan trọng khi kiểm tra các quy tắc của bạn.

Vì vậy, chúng tôi có các quy tắc tường lửa ở đó, chúng tôi cần phải bắt đầu chúng khi RPi bắt đầu. Để làm điều đó, chúng tôi sẽ chỉnh sửa tệp /etc/rc.local:

$ sudo vi /etc/rc.local

Khi bên trong, hãy thêm phần sau vào cuối tệp:

echo “Đang tải quy tắc iptables” /etc/firewall.simple >> / dev / null

Nếu bạn chọn thêm hệ thống phát hiện xâm nhập snort, bạn sẽ cần phải chỉnh sửa lại tệp này. Bây giờ chỉ cần lưu nó và khởi động lại.

$ sudo khởi động lại

Bước 9: Syslog

Syslog
Syslog

Còn hai bước…

Đây là một điều dễ dàng. Nếu bạn vẫn ở đó và đang theo dõi blog của GK, thì đây là bước 12. Bạn cần thực hiện chính xác những gì anh ấy nói liên quan đến tệp nhật ký hệ thống. Dưới đây là các bước viết tắt:

Lưu giữ dữ liệu nhật ký hệ thống trị giá 2 tháng…

$ sudo vi /etc/logrotate.conf

Chúng ta cần yêu cầu nó sử dụng 'một tuần' làm phép đo và sau đó giữ lại 12 trong số đó. Bạn cần hai dòng sau trong tệp này. Tôi tin rằng bạn sẽ cần phải thay đổi các dòng hiện có.

tuần 12

Lưu nó.

Bước 10: Phát hiện xâm nhập bằng Snort

Phát hiện xâm nhập với Snort
Phát hiện xâm nhập với Snort

Điều cuối cùng GK cấu hình là hệ thống snort. Tôi khuyên bạn nên điều này là tốt. Bạn có thể tuân theo các quy tắc của anh ấy, và tôi sẽ không sao chép tất cả chúng ở đây, với một vài sửa đổi nhỏ. Hướng dẫn của anh ấy dành cho bản phân phối ArchLinux. Dưới đây là một số thay đổi đối với bản phân phối Raspbian mà chúng tôi đang sử dụng ở đây. Phần còn lại của các hướng dẫn hoạt động tốt.

Đầu tiên, không sử dụng sudo pacman -S snort để tải xuống và cài đặt snort. Làm như sau:

$ sudo apt-get install snort

Thứ hai, bạn không thể xác minh snort với sudo snort -version. Xác minh cài đặt với:

$ sudo snort -V

Cuối cùng, để nó chạy khi khởi động, không sửa đổi tệp rc.conf, hãy chỉnh sửa tệp rc.local (một lần nữa)…

$ sudo vi /etc/rc.local

Thêm các dòng sau vào cuối tệp:

echo "Đang tải snort"

# / usr / sbin / snort -D -u snort -g snort -c /etc/snort/snort.conf -i eth0 -l / var / log / snort

Bây giờ, khởi động lại và tất cả sẽ hoạt động một cách kỳ diệu.

$ sudo khởi động lại

Bước 11: Thưởng thức

Thưởng thức
Thưởng thức

Đó phải là nó!

Trước hết, tôi không thể cảm ơn Guillaume Kaddouch đủ! Anh ấy đã truyền cảm hứng cho điều này.

Thứ hai, nếu bạn chưa ngắt kết nối bàn phím, video và chuột, bạn có thể. Sử dụng SSH và VNC để đăng nhập lại khi cần thiết.

Để kết thúc, điều này có thể không hoàn hảo 100%. Vui lòng đăng lại với các thay đổi / đề xuất / khuyến nghị. Mục tiêu của tôi là làm cho điều này bắt đầu cuộc thảo luận và nhiều người thích thú!

Cảm ơn!!

Tái bút… Hình ảnh là một RPi4 bên trong một vỏ nhôm FLIRC với một quạt Intel cũ được sửa đổi một chút và được gắn zip ở phía trên. Bên dưới quạt cũng có miếng dán tản nhiệt, đề phòng trường hợp bạn băn khoăn. Tôi đã tìm thấy thứ tương tự trên Internet (https://www.reddit.com/r/raspberry_pi/comments/9bdgrr/it_turns_out_putting_a_heatsink_on_the_flirc_case/) và quyết định tự mình thử.

Bước 12: Changelog

Khi các thay đổi được thực hiện đối với hướng dẫn này, tôi sẽ ghi lại chúng ở đây. Trong trường hợp bạn gặp sự cố, hãy kiểm tra tại đây để xem bạn có lấy các hướng dẫn hoặc tệp cũ hay không.

Ngày 25 tháng 9 năm 2019:

  • Đã sửa lỗi quy tắc DHCP trong firewall.simple
  • Đã sửa phạm vi DHCP trong hướng dẫn (tệp chính xác)
  • Đã thêm các nhiệm vụ IP cố định vào hướng dẫn DHCP

13 tháng 10, 2019

  • Đã sửa nhiều lỗi chính tả
  • Đã tạo số pi thứ hai để tôi sẽ có một thẻ SDcard thử nghiệm để hoán đổi, nếu cần

Đề xuất: