Làm cách nào để xóa quyền truy cập vào cổng bằng tường lửa trên Centos7?


12

Có một cổng được mở để sử dụng công cộng bằng tường lửa-cmd, tôi muốn giới hạn cổng này ở một IP cụ thể mà tôi đã tìm thấy câu trả lời cho TRANG WEB này .

Tôi đã sử dụng như sau để mở nó:

$ firewall-cmd --permanent --zone=public --add-port=10050/tcp
$ firewall-cmd --reload

Bây giờ bằng cách sử dụng thông tin từ thông tin tôi tìm thấy, tôi muốn hạn chế quyền truy cập vào cổng này đến một địa chỉ IP cụ thể. Trước tiên tôi có cần xóa cổng này khỏi truy cập công cộng không?

Hoặc tôi có thể chỉ cần thêm quy tắc mới như sau và điều đó sẽ giải quyết vấn đề cho tôi?

$ firewall-cmd --new-zone=special
$ firewall-cmd --permanent --zone=special --add-rich-rule='
  rule family="ipv4"
  source address=”123.1.1.1"
  port protocol="tcp" port="10050" accept'

Tôi đã thử như sau:

$ firewall-cmd --zone=public --remove-port=10050/tcp
$ firewall-cmd --reload

Nhưng khi tôi chạy như sau:

$ firewall-cmd --list-ports 

10050/tcp vẫn được hiển thị.

Xin hãy hiểu rằng tôi không quá quen thuộc với các cấu hình bên Sever.

Soultion: Đừng quên --racer-to-Permanent

$ firewall-cmd --zone=public --remove-port=10050/tcp
$ firewall-cmd --runtime-to-permanent
$ firewall-cmd --reload 

À tôi quên mất --permanent
mcv

1
Bạn nên đăng bài này như một câu trả lời (và chấp nhận nó). Hoàn toàn chấp nhận được để chấp nhận câu trả lời của riêng bạn, bằng cách này, câu hỏi được đánh dấu là đã giải quyết.
Gerald Schneider

1
Tốt hơn hết là không sử dụng --permanent, trong trường hợp bạn mắc lỗi với quy tắc tường lửa. Nếu bạn đã sử dụng --permanentvà tự nhốt mình, bạn sẽ thấy khá khó khăn để quay trở lại, vì bạn không có cách nào để phục hồi. Thay vào đó, không sử dụng --permanentvà khi bạn hài lòng với các quy tắc, hãy sử dụng firewall-cmd --runtime-to-permanentđể cam kết các quy tắc. Nếu bạn bị khóa, tải lại tường lửa hoặc khởi động lại sẽ quay trở lại.
Michael Hampton

Vì vậy, điều này có thể firewall-cmd --runtime-to-permanentđược áp dụng sau khi firewall-cmd --reloadhoặc nó thay thế hoàn toàn? Tôi chắc chắn sẽ thử điều này.
mcv

Câu trả lời:


27

Giải pháp: Đừng quên --racer-to-Permanent

$ firewall-cmd --zone=public --remove-port=10050/tcp
$ firewall-cmd --runtime-to-permanent 
$ firewall-cmd --reload 

1
Tôi vẫn phải làm theo systemctl restart firewalld.
JaKu

Điều này đã không làm việc cho tôi. systemctllà phiên bản 219firewall-cmdlà phiên bản 0.5.3trên CentOS 7.5 64bit.
Pred

4
# firewall-cmd --zone=public --remove-port=12345/tcp --permanent
# firewall-cmd --reload

Thay thế 12345 bằng cổng bạn muốn loại bỏ.


1
Tôi đã đọc ở đâu đó rằng trong tài liệu Fedora, nó gợi ý nên đặt --permanentlàm tùy chọn đầu tiên. Nhưng vâng, --permanentlà chìa khóa.
WesternGun

Tôi thường giữ nó như là tùy chọn cuối cùng để đảm bảo rằng nếu quy tắc không chính xác vì bất kỳ lý do gì, tôi chỉ có thể khởi động lại mà không làm cho quy tắc vĩnh viễn. Nếu nó làm những gì tôi muốn, tôi có thể mũi tên lên và thêm --permanentvào cuối.
Justin E

0

Thực hiện theo các bước sau, bạn sẽ ổn thôi:

  1. $ tường lửa-cmd --zone = công khai --remove-port = 10050 / tcp
  2. $ tường lửa-cmd --racer-to-Permanent
  3. $ tường lửa-cmd - tải lại
  4. $ systemctl khởi động lại tường lửa
  5. $ tường lửa-cmd --zone = công cộng - danh sách cổng

Tôi không nghĩ bạn cần khởi động lại tường lửa, firewalldthực sự được thiết kế để tránh khởi động lại tất cả các dịch vụ mỗi khi bạn thay đổi cấu hình.
vdegenne
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.