You are on page 1of 20

3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

Học VPS Kiến thức quản trị VPS, Server


Bắt đầu / Series / Coupon / Tools / Dịch vụ / Liên hệ

Tìm kiếm bài viết hướng dẫn trên Học VPS  SEARCH

Thiết lập tường lửa FirewallD


trên CentOS 7
 Học VPS / Basics / Thiết lập tường lửa FirewallD trên CentOS 7

 19/12/2017  Việt Phương  Bảo mật/ Basics  4,699 Views  27


Comments

CHIA SẺ BÀI VIẾT: FACEBOOK GOOGLE+ EMAIL


ĐĂNG KÝ
BẢN TIN
FirewallD là giải pháp tường lửa mạnh mẽ, toàn diện được cài đặt mặc
định trên RHEL 7 và CentOS 7, nhằm thay thế Iptables với những khác
biệt cơ bản:
HỌC
FirewallD sử dụng “zones” và “services” thay vì “chain” và
VPS
“rules” trong Iptables. Nhận kiến thức mới,
thủ thuật hay trực tiếp
FirewallD quản lý các quy tắc được thiết lập tự động, có tác qua email.
dụng ngay lập tức mà không làm mất đi các kết nối và session
hiện có.
Địa chỉ email của bạn

Lưu ý: Nếu bạn ưa thích Iptables, tham khảo Hướng dẫn sử dụng
Iptables của HocVPS.
ĐĂNG KÝ NGA
Trong bài viết này, HocVPS sẽ hướng dẫn cách thiết lập và quản lý hệ
thống tường lửa cho VPS với công cụ quản trị FirewallD.

Forum hỏi đáp Học

VPS
HocVPS Script

https://hocvps.com/firewalld-centos-7/ 1/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

Categories

7 Apache

22 Bảo mật

6 Bash Shell Script

43 Basics

3 Blog

Nội dung bài viết 27 CentOS

19 Control Panels
1. Các khái niệm cơ bản trong FirewallD
8 Database
1.1. Zone
10 Đánh giá
1.2. Hiệu lực của các quy tắc Runtime/Permanent
3 LAMP
2. Cài đặt FirewallD
6 LEMP
3. Cấu hình FirewallD
4 Mail Server
3.1. Thiết lập các Zone
18 NGINX
3.2. Thiết lập các quy tắc
27 Providers
a. Thiết lập cho Service
7 Digital Ocean
b. Thiết lập cho Port
1 HostHatch
4. Cấu hình nâng cao
1 Linode
4.1. Tạo Zone riêng
1 OVH
4.2. Định nghĩa services riêng trên FirewallD
3 Ramnode
5. Kết luận
13 Vultr

1 Z.com

18 Thủ thuật
1. Các khái niệm cơ bản trong Tối ưu server
18
FirewallD 15 Ubuntu

1 Video
Trước khi thực sự dùng đến FirewallD để quản lý tường lửa, hãy cùng
làm quen với các khái niệm cơ bản: Zone và thời gian hiệu lực của quy 8 WordPress

tắc.

Bài nổi bật


1.1. Zone
 Cài đặt và Quản lý
server dễ dàng với
HocVPS Script
https://hocvps.com/firewalld-centos-7/ 2/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

Trong FirewallD, zone là một nhóm các quy tắc nhằm chỉ ra những  Cài đặt Windows trên

luồng dữ liệu được cho phép, dựa trên mức độ tin tưởng của điểm xuất VPS Vultr

phát luồng dữ liệu đó trong hệ thống mạng. Để sử dụng, bạn có thể lựa
chọn zone mặc đinh, thiết lập các quy tắc trong zone hay chỉ định giao
 Cấu hình tối ưu cho
VPS, 2GB RAM được
diện mạng(Network Interface) để quy định hành vi được cho phép 4.363 người Online

Các zone được xác định trước theo mức độ tin cậy, theo thứ tự từ “ít-
 Tổng hợp Windows ISO
tin-cậy-nhất” đến “đáng-tin-cậy-nhất”: cài trên Vultr

drop: ít tin cậy nhất – toàn bộ các kết nối đến sẽ bị từ chối mà  Cài đặt chứng chỉ Let’s
không phản hồi, chỉ cho phép duy nhất kết nối đi ra. Encrypt SSL trên server
HocVPS Script
block: tương tự như drop nhưng các kết nối đến bị từ chối và
phản hồi bằng tin nhắn từ icmp-host-prohibited (hoặc icmp6-  Hướng dẫn cài đặt

adm-prohibited). LEMP (Linux, Nginx,


MariaDB, PHP) trên
public: đại diện cho mạng công cộng, không đáng tin cậy. Các CentOS
máy tính/services khác không được tin tưởng trong hệ thống
nhưng vẫn cho phép các kết nối đến trên cơ sở chọn từng  Hướng dẫn tạo và kích
hoạt Swap
trường hợp cụ thể.

external: hệ thống mạng bên ngoài trong trường hợp bạn sử VPS chất lượng nên dùng
dụng tường lửa làm gateway, được cấu hình giả lập NAT để giữ
bảo mật mạng nội bộ mà vẫn có thể truy cập.

internal: đối lập với external zone, sử dụng cho phần nội bộ
của gateway. Các máy tính/services thuộc zone này thì khá
đáng tin cậy.

dmz: sử dụng cho các máy tính/service trong khu vực


DMZ(Demilitarized) – cách ly không cho phép truy cập vào
phần còn lại của hệ thống mạng, chỉ cho phép một số kết nối
đến nhất định.

work: sử dụng trong công việc, tin tưởng hầu hết các máy tính
và một vài services được cho phép hoạt động.

home: môi trường gia đình – tin tưởng hầu hết các máy tính
khác và thêm một vài services được cho phép hoạt động.

trusted: đáng tin cậy nhất – tin tưởng toàn bộ thiết bị trong hệ
thống.

1.2. Hiệu lực của các quy tắc


Runtime/Permanent

Trong FirewallD, các quy tắc được cấu hình thời gian hiệu lực Runtime
hoặc Permanent.

https://hocvps.com/firewalld-centos-7/ 3/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

Runtime(mặc định): có tác dụng ngay lập tức, mất hiệu lực khi
reboot hệ thống.

Permanent: không áp dụng cho hệ thống đang chạy, cần


reload mới có hiệu lực, tác dụng vĩnh viễn cả khi reboot hệ
thống.

Ví dụ, thêm quy tắc cho cả thiết lập Runtime và Permanent:

# firewall-cmd --zone=public --add-service=http


# firewall-cmd --zone=public --add-service=http --permanent
# firewall-cmd --reload

Việc Restart/Reload sẽ hủy bộ các thiết lập Runtime đồng thời áp dụng
thiết lập Permanent mà không hề phá vỡ các kết nối và session hiện tại.
Điều này giúp kiểm tra hoạt động của các quy tắc trên tường lửa và dễ
dàng khởi động lại nếu có vấn đề xảy ra.

Lưu ý: Các ví dụ thiết lập trong bài sử dụng cả Runtime và Permanent.

2. Cài đặt FirewallD


– FirewallD được cài đặt mặc định trên CentOS 7. Cài đặt nếu chưa có:

# yum install firewalld

– Khởi động FirewallD:

# systemctl start firewalld

– Kiểm tra tình trạng hoạt động

# systemctl status firewalld


● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disable
d; vendor preset: enabled)
Active: active (running) since Wed 2017-12-13 16:43:20 +07; 30s ago
Docs: man:firewalld(1)
Main PID: 12696 (firewalld)
CGroup: /system.slice/firewalld.service
└─12696 /usr/bin/python -Es /usr/sbin/firewalld --nofork --
nopid

# systemctl is-active firewalld


active

# firewall-cmd --state
running

– Thiết lập FirewallD khởi động cùng hệ thống


https://hocvps.com/firewalld-centos-7/ 4/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

# systemctl enable firewalld

Kiểm tra lại :

# systemctl is-enabled firewalld


enabled

Ban đầu, bạn không nên cho phép FirewallD khởi động cùng hệ thống
cũng như thiết lập Permanent, tránh bị khóa khỏi hệ thống nếu thiết lập
sai. Chỉ thiết lập như vậy khi bạn đã hoàn thành các quy tắc tường lửa
cũng như test cẩn thận.
– Khởi động lại

# systemctl restart firewalld


# firewall-cmd --reload

– Dừng và vô hiệu hóa FirewallD

# systemctl stop firewalld


# systemctl disable firewalld

3. Cấu hình FirewallD

3.1. Thiết lập các Zone

– Liệt kê tất cả các zone trong hệ thống

# firewall-cmd --get-zones
block dmz drop external home internal public trusted work

– Kiểm tra zone mặc định

# firewall-cmd --get-default-zone
public

– Kiểm tra zone active (được sử dụng bởi giao diện mạng)
Vì FirewallD chưa được thiết lập bất kỳ quy tắc nào nên zone mặc định
cũng đồng thời là zone duy nhất được kích hoạt, điều khiển mọi luồng
dữ liệu.

# firewall-cmd --get-active-zones
public
interfaces: eth0

https://hocvps.com/firewalld-centos-7/ 5/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

– HocVPS sẽ hướng dẫn sử dụng duy nhất public zone – cho


phép những services/port được thiết lập và từ chối mọi thứ
khác

– Thay đổi zone mặc định, ví dụ thành home:

# firewall-cmd --set-default-zone=home
success

3.2. Thiết lập các quy tắc

Trước khi thiết lập các quy tắc mới, hãy cùng HocVPS kiểm tra các quy
tắc hiện tại:
– Liệt kê toàn bộ các quy tắc của các zones:

# firewall-cmd --list-all-zones

– Liệt kê toàn bộ các quy tắc trong zone mặc định và zone active

# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: eth0
sources:
services: ssh dhcpv6-client
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

Kết quả cho thấy public là zone mặc định đang được kích hoạt, liên kết
với card mạng eth0 và cho phép DHCP cùng SSH.
– Liệt kê toàn bộ các quy tắc trong một zone cụ thể, ví dụ home

# firewall-cmd --zone=home --list-all


home
target: default
icmp-block-inversion: no
interfaces:
sources:
services: ssh mdns samba-client dhcpv6-client
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

https://hocvps.com/firewalld-centos-7/ 6/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

– Liệt kê danh sách services/port được cho phép trong zone cụ thể:

# firewall-cmd --zone=public --list-services


# firewall-cmd --zone=public --list-ports

a. Thiết lập cho Service

Đây chính là điểm khác biệt của FirewallD so với Iptables – quản lý
thông qua các services. Việc thiết lập tường lửa đã trở nên dễ dàng
hơn bao giờ hết – chỉ việc thêm các services vào zone đang sử dụng.
– Đầu tiên, xác định các services trên hệ thống:

# firewall-cmd --get-services
RH-Satellite-6 amanda-client amanda-k5-client bacula bacula-client bit
coin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfe
ngine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns docker-regis
try dropbox-lansync elasticsearch freeipa-ldap freeipa-ldaps freeipa-r
eplication freeipa-trust ftp ganglia-client ganglia-master high-availa
bility http https imap imaps ipp ipp-client ipsec iscsi-target kadmin
kerberos kibana klogin kpasswd kshell ldap ldaps libvirt libvirt-tls m
anagesieve mdns mosh mountd ms-wbt mssql mysql nfs nrpe ntp openvpn ov
irt-imageio ovirt-storageconsole ovirt-vmconsole pmcd pmproxy pmwebapi
pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp pulseaudio pupp
etmaster quassel radius rpc-bind rsh rsyncd samba samba-client sane si
p sips smtp smtp-submission smtps snmp snmptrap spideroak-lansync squi
d ssh synergy syslog syslog-tls telnet tftp tftp-client tinc tor-socks
transmission-client vdsm vnc-server wbem-https xmpp-bosh xmpp-client x
mpp-local xmpp-server

Lưu ý: Biết thêm thông tin về service qua thông tin lưu tại
/usr/lib/firewalld/services/ .

Hệ thống thông thường cần cho phép các services sau:


ssh(22/TCP), http(80/TCP), https(443/TCP), smtp(25/TCP),
smtps(465/TCP) và smtp-submission(587/TCP)

– Thiết lập cho phép services trên FirewallD, sử dụng --add-service :

# firewall-cmd --zone=public --add-service=http


success
# firewall-cmd --zone=public --add-service=http --permanent
success

Ngay lập tức, zone “public” cho phép kết nối HTTP trên cổng 80. Kiểm
tra lại

# firewall-cmd --zone=public --list-services


ssh dhcpv6-client http

– Vô hiệu hóa services trên FirewallD, sử dụng --remove-service :

https://hocvps.com/firewalld-centos-7/ 7/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

# firewall-cmd --zone=public --remove-service=http


# firewall-cmd --zone=public --remove-service=http --permanent

b. Thiết lập cho Port

Trong trường hợp bạn thích quản lý theo cách truyền thống qua Port,
FirewallD cũng hỗ trợ bạn điều đó.
– Mở Port với tham số --add-port :

# firewall-cmd --zone=public --add-port=9999/tcp


# firewall-cmd --zone=public --add-port=9999/tcp --permanent

Mở 1 dải port

# firewall-cmd --zone=public --add-port=4990-5000/tcp


# firewall-cmd --zone=public --add-port=4990-5000/tcp --permanent

Kiểm tra lại

# firewall-cmd --zone=public --list-ports


9999/tcp 4990-5000/tcp

– Đóng Port với tham số --remove-port :

# firewall-cmd --zone=public --remove-port=9999/tcp


# firewall-cmd --zone=public --remove-port=9999/tcp --permanent

4. Cấu hình nâng cao

4.1. Tạo Zone riêng

Mặc dù, các zone có sẵn là quá đủ với nhu cầu sử dụng, bạn vẫn có thể
tạo lập zone của riêng mình để mô tả rõ ràng hơn về các chức năng
của chúng. Ví dụ, bạn có thể tạo riêng một zone cho
webserver publicweb hay một zone cấu hình riêng cho DNS trong
mạng nội bộ privateDNS. Bạn cần thiết lập Permanent khi thêm một
zone.

# firewall-cmd --permanent --new-zone=publicweb


success
# firewall-cmd --permanent --new-zone=privateDNS
success
# firewall-cmd --reload
success

Kiểm tra lại

https://hocvps.com/firewalld-centos-7/ 8/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

# firewall-cmd --get-zones
block dmz drop external home internal privateDNS public publicweb trus
ted work

Khi đã có zone thiết lập riêng, bạn có thể cấu hình như các zone thông
thường: thiết lập mặc định, thêm quy tắc… Ví dụ:

# firewall-cmd --zone=publicweb --add-service=ssh --permanent


# firewall-cmd --zone=publicweb --add-service=http --permanent
# firewall-cmd --zone=publicweb --add-service=https --permanent

4.2. Định nghĩa services riêng trên


FirewallD

Việc mở port trên tường lửa rất dễ dàng nhưng lại khiến bạn gặp khó
khăn khi ghi nhớ các port và các services tương ứng. Vì vậy, khi có một
services mới thêm vào hệ thống, bạn sẽ có 2 phương án:

Mở Port của services đó trên FirewallD

Tự định nghĩa services đó trên FirewallD

Ví dụ, HocVPS Admin Port có thể là 2017, 9999 hay 4 chữ số bất kì nào
đó. Bạn sẽ tự định nghĩa servies hocvps-admin với port 9999.
– Tạo file định nghĩa riêng từ file chuẩn ban đầu

# cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/hocvp
s-admin.xml

– Chỉnh sửa để định nghĩa servies trên FirewallD

# nano /etc/firewalld/services/hocvps-admin.xml

<?xml version="1.0" encoding="utf-8"?>


<service>
<short>HocVPS-Admin</short>
<description>Control HocVPS Admin Web Tool</description>
<port protocol="tcp" port="9999"/>
</service>

– Lưu lại và khởi động lại FirewallD

# firewall-cmd --reload

– Kiểm tra lại danh sách services:

# firewall-cmd --get-services
RH-Satellite-6 amanda-client amanda-k5-client bacula bacula-client bit
coin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfe
ngine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns docker-regis

https://hocvps.com/firewalld-centos-7/ 9/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS
try dropbox-lansync elasticsearch freeipa-ldap freeipa-ldaps freeipa-r
eplication freeipa-trust ftp ganglia-client ganglia-master high-availa
bility hocvps-admin http https imap imaps ipp ipp-client ipsec iscsi-t
arget kadmin kerberos kibana klogin kpasswd kshell ldap ldaps libvirt
libvirt-tls managesieve mdns mosh mountd ms-wbt mssql mysql nfs nrpe
ntp openvpn ovirt-imageio ovirt-storageconsole ovirt-vmconsole pmcd p
mproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp
pulseaudio puppetmaster quassel radius rpc-bind rsh rsyncd samba samb
a-client sane sip sips smtp smtp-submission smtps snmp snmptrap spider
oak-lansync squid ssh synergy syslog syslog-tls telnet tftp tftp-clien
t tinc tor-socks transmission-client vdsm vnc-server wbem-https xmpp-b
osh xmpp-client xmpp-local xmpp-server

Như vậy, hocvps-admin đã được thêm vào danh sách services của
FirewallD. Bạn có thể thiết lập như các servies thông thường, bao gồm
cả cho phép/chặn trong zone. Ví dụ:

# firewall-cmd --zone=public --add-service=hocvps-admin


# firewall-cmd --zone=public --add-service=hocvps-admin --permanent

5. Kết luận
Có thể thấy, sử dụng tường lửa FirewallD trên CentOS 7 là không quá
khó. Bạn đã có lượng kiến thức và kinh nghiệm đủ để thiết lập và quản
trị hệ thống FirewallD trong nhu cầu sử dụng thông thường. Trong thời
gian tới, HocVPS sẽ cập nhật thêm các cấu hình nâng cao trên
FirewallD, các bạn cùng đón đọc nhé.

Bài Viết Liên Quan:

1. Hướng dẫn cài đặt VNC Server trên CentOS

2. Hướng dẫn sử dụng Iptables

3. Cài đặt FTP Server đơn giản trên CentOS với ProFTPD

4. Các bước thay đổi SSH Port của server

5. Cài đặt 7zip trên CentOS 6.4

6. Thay đổi Timezone trên CentOS

Comment của bạn

https://hocvps.com/firewalld-centos-7/ 10/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

Name *

Email *

Website

Post Comment

27 Comments

Tung 23 comment  Reply


19/08/2018 at 4:56 pm

Các bác quản trị cho em hỏi chút với ạ


Em setup Centos 7 và Direct Admin.
Em đang dùng FirewallD.
Nay em muốn dùng FirewallD để chặn Brute Force Attack
Mong các bác giúp đỡ ạ

Việt Phương Moderator  Reply



20/08/2018 at 9:25 am

Với Brute Force Attack thì bạn có thể áp dụng các


phương pháp sau. Ví dụ đang tấn công cổng SSH
22 để dò pass nhé
1. Chuyển cổng 22 sang 1 cổng khác không thông
dụng, ví dụ 2222
2. Không sử dụng password, có thể dùng SSH
Keys.
3. Giới hạn truy cập khi nhập sai, ví dụ 3 lần sai là
chặn 1 giờ với Fail2Ban. Đặc biệt, Fail2Ban hoạt
động trên rule của FirewallD nên bạn hoàn toàn
yên tâm. Bạn có thể tham khảo bài viết này
https://hocvps.com/firewalld-centos-7/ 11/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

https://serverfault.com/questions/683671/is-there-
a-way-to-rate-limit-connection-attempts-with-
firewalld

Còn bạn cần chặn truy cập cổng Admin của DA thì
có thể áp dụng đồng thời phương án 1 và 3

Tung 23 comment  Reply



20/08/2018 at 9:37 am

Chào bác Việt Phương,


Cảm ơn bác đã hồi âm hỗ trợ câu hỏi của
mình.
Do sự tiện lợi, mình không dùng SSH
Keys mà dùng pass nên mình đã đổi cổng
DA thành cổng khác.
Tuy nhiên vào DA thì thấy vẫn có thông
báo có Brute Force Attack
Nay mình đang dùng FirewallD và muốn
sử dụng Fail2Ban
Mình xem cái link bạn gửi nhưng ko hiểu
lắm, với lại thấy họ nói đến iptables (Mình
không thích dùng iptables mà thích dùng
FirewallD hơn vì mình đang dùng Centos
7 ạ)
Bạn có thể chỉ cho mình thêm được
không ạ

Việt Phương  Reply



Moderator
20/08/2018 at 10:05 am

Ngay comment đầu tiên đó bạn


https://www.certdepot.net/rhel7-
mitigate-http-attacks/
Nếu có hơn 30 lần truy cập trong
60s thì IP đó sẽ bị chặn truy cập
và phải đợi 60s tiếp theo mới
được phép truy cập lại

Tung 23 comment  Reply

https://hocvps.com/firewalld-centos-7/ 12/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

02/08/2018 at 3:25 pm

Các bác cho em hỏi


Nếu mình open service đó thì ko cần open port nữa đúng
không ạ?
Ví dụ em đổi port ssh 22==>2233
Lúc đó em chạy lệnh
firewall-cmd –zone=publicweb –add-service=ssh –
permanent
Lúc này có cần mở port 2233 nữa không ạ

Việt Phương Moderator  Reply



02/08/2018 at 4:01 pm

Uhm, không cần nữa bạn nhé

Ngô Văn Cương 110 comment  Reply


04/07/2018 at 11:58 am

150.95.110.224 – – [04/Jul/2018:11:53:03 +0700] “GET


/zz1.php HTTP/1.0” 403 162 “-” “Wget/1.12 (linux-gnu)”

VPS của em liên tục chạy lệnh này. Ban đầu em không để ý
ip, nhưng bây giờ em mới kiểm tra là ip vps.
Bác Phương tư vấn giúp em với, có khi nào vps em bị tấn
công chiếm quyền luôn rồi không ?

mrduc 14 comment  Reply


01/07/2018 at 7:13 pm

#systemctl status firewalld


firewalld.service
Loaded: masked (/dev/null; bad)
Active: inactive (dead)
Warning: firewalld.service changed on disk. Run ‘systemctl
daemon-reload’ to reload units.
#systemctl start firewalld
Failed to start firewalld.service: Unit is masked.
#systemctl is-enabled firewalld
masked

https://hocvps.com/firewalld-centos-7/ 13/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

Trạng thái nó như thế này là bị sao thế bác admin ơi

Việt Phương Moderator  Reply



02/07/2018 at 8:17 am

Là firewalld đã bị tắt và không khởi động cùng hệ


thống. Bạn cần sử dụng thì unmask rồi khởi động
nhé. Có thể hệ thống bạn đang dùng Iptables nên
FirewallD sẽ bị khóa

mrduc 14 comment  Reply



02/07/2018 at 4:01 pm

cảm ơn bạn mình unmask và enable lại


thì ok rồi

Thang 15 comment  Reply



25/09/2018 at 12:08 am

lệnh unmask như thấ nào bạn

Tung 23 comment  Reply


30/06/2018 at 2:18 pm

Bác Luân cho em hỏi,


Khách hàng của em có cái ip=xxx.xxxx.xxx.xxx và bị
FirewallD nó block
Em phải stop FirewallD thì họ mới vào được FTP (với http
web thì họ vào bình thường mà không cần stop FirewallD ạ)
Nay em muốn thêm cái ip của họ vào vùng an toàn
Nhờ bác chỉ giúp em cái lệnh với ạ

Mong hồi âm của bác

Việt Phương Moderator  Reply



01/07/2018 at 1:36 pm

https://hocvps.com/firewalld-centos-7/ 14/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

Bạn kiểm tra các rule của firewallD rồi remove nhé,
chứ không phải là thêm vào vùng an toàn. Vì nếu
có thiết lập như thế thì toàn bộ không vào được trừ
ip XYZ nào đó

Tung 23 comment  Reply



23/07/2018 at 4:35 pm

Chào bạn,
Cảm ơn bạn đã hồi âm.
Cái vps của mình như sau:
-Khách hàng của mình dùng IP tĩnh.
-Nếu stop firewalld thì khách hàng của
mình vào FTP por 21 mình thuwngfowngf
-Nếu mình cho chạy firewalld thì họ không
vào FTP được
– Web http://web thì họ vào được ko ảnh
hưởng gì
-Bên mình thì vào được FTP cho dù vẫn
bật firewalld

Như vậy việc họ không vào được FPT là


do firewalld liên quan đến firewalld và IP
tĩnh của họ.
Mong bạn chỉ giúp mình cách thêm Ip đó
vào trường acept để ko bị block cho FTP

Việt Phương  Reply



Moderator
23/07/2018 at 4:44 pm

Bạn mở FTP bằng port hay bằng


service? Bạn thử cả 2 chưa?
Cho mình trạng thái rule hiện tại

Tung 23 comment

24/07/2018 at 2:26 pm

Chào bạn,
Sau khi cài xong FTP

https://hocvps.com/firewalld-centos-7/ 15/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

thì mình mở bằng port


21 ạ (Nếu ko mở port
21 thì ko dùng FTP
được; sau khi mình mở
xong thì FPT mới dùng
được).
Mình mở bằng lệnh sau

# firewall-cmd –
zone=public –add-
port=21/tcp
# firewall-cmd –
zone=public –add-
port=21/tcp –permanent

Các trạng thái rule hiện


tại của mình là:

#firewall-cmd –
zone=public –list-
services
dhcpv6-client ssh
# firewall-cmd –
zone=public –list-ports
80/tcp 21/tcp

Tung 23 comment
24/07/2018 at 2:26 pm

Mong bạn chỉ giúp cho


mình với nhé. Mình cần
cho Ip=123.xxx vào
danh sách white ạ

Việt Phương
Moderator
24/07/2018 at 2:53 pm

Không giải quyết vấn


đề vì white list thì các
IP khác bị chặn mất.
Mà rõ ràng như bạn
thấy, port 80 cấu hình

https://hocvps.com/firewalld-centos-7/ 16/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

như port 21 mà khách


bạn vẫn truy cập được
qua port 80 (web).Bạn
đã mở bằng service
chưa, tức mở cho ftp
Còn thêm whitelist là
source
https://unix.stackexchan
ge.com/questions/1598
73/whitelist-source-ip-
addresses-in-centos-7
firewall-cmd –
permanent –
zone=public –add-
source=192.168.100.0/
24
firewall-cmd –
permanent –
zone=public –add-
source=192.168.222.12
3/32

…..

Nên, vấn đề mình nghi


ngờ: Khách bạn đăng
nhập FTP dùng phần
mềm gì, cấu hình có
giống thiết lập của bạn
không. Mình nghi ngờ
vấn đề này do có thể
FileZilla ở PassiveMode

Tung 23 comment
24/07/2018 at 10:09 pm

Chào bạn

Đúng là họ đang dùng


FileZilla bạn à
Nhờ bạn chỉ cho mình
cái fix lỗi này trên
FileZilla với nhé

Cảm ơn bạn

https://hocvps.com/firewalld-centos-7/ 17/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

Việt Phương
Moderator
25/07/2018 at 9:17 am

Bạn đọc phần 3 nhé


Cài đặt FTP Server đơn
giản trên CentOS với
ProFTPD
Và bạn cho họ đăng
nhập FTP bằng user
dạng nào? Hay user
root luôn

Tung 23 comment
25/07/2018 at 11:13 am

VPS mình không dùng


IPTABLES mà dùng
firewalld
Vậy cấu hình đoạn này
thì sửa tương ứng như
thế nào vậy bạn

Nếu đã thiết lập tường


lửa Iptables và chuyển
ActiveMode mà vẫn
không thể kết nối thì
bạn thêm giá trị
ip_conntrack_ftp vào
/etc/sysconfig/iptables-
config
Cụ thể là
IPTABLES_MODULES
=”ip_conntrack_ftp”.
Sau đó tiến hành restart
Iptables
Chỉ áp dụng CentOS 6
và nếu VPS không có
module
ip_conntrack_ftp trong
hệ thống thì cần yêu
cầu support thêm thủ
công
https://hocvps.com/firewalld-centos-7/ 18/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

Việt Phương
Moderator
25/07/2018 at 11:42 am

Đoạn ý không cần thiết.


Bạn thiết lập bên kết
nối FileZilla thôi. Và
User bạn tạo là Virtual
User hay Linux User?

Lộc 52 comment  Reply


24/02/2018 at 10:38 pm

Mod có dự kiến khi nào update cho hocvps script không?

Việt Phương Moderator  Reply



24/02/2018 at 11:54 pm

Hiện tại HocVPS dùng FirewallD cho bản CentOs7


rồi bạn nhé

Lộc 52 comment  Reply



28/02/2018 at 7:47 pm

Iptables đã bị loại bỏ rồi à Mod?

Việt Phương  Reply



Moderator
01/03/2018 at 9:15 am

Uhm bạn, sử dụng Iptables cho


CentOS 6 và FirewallD cho
CentOS 7

NguyenTung 43 comment  Reply

https://hocvps.com/firewalld-centos-7/ 19/20
3/10/2018 Thiết lập tường lửa FirewallD trên CentOS 7 - Học VPS

25/01/2018 at 4:44 pm

Bài viết hay quá. Đúng là cái mình cần. Bác Luân luôn luôn
viết bài 1 cách khoa học, ngắn gọn và dễ hiểu.
Cảm ơn bác Luân nhiều nhé

Comment mới Bài mới Liên kết bạn bè

Việt Phương on Cài đặt  Cài đặt ServerPilot trên Ubuntu Payoneer Việt Nam
chứng chỉ Let’s Encrypt
 Hướng dẫn cài đặt Outline VPN Blog Quản Trị Hệ Thống
SSL trên server HocVPS
miễn phí từ Google
Script Test Tốc Độ server về Việt Nam
 Hướng dẫn cài đặt WordPress
Việt Phương on Script tự
trên VPS Vultr
động cài đặt HocVPS
Script và WordPress  Cài đặt chứng chỉ Let’s Encrypt
SSL trên server HocVPS Script
Dat Nguyen on Script tự
động cài đặt HocVPS  Hướng dẫn compile NGINX trên
Script và WordPress CentOS

sơn on Cài đặt chứng chỉ  VestaCP dính lỗi bảo mật nghiêm
Let’s Encrypt SSL trên trọng – Cập nhật ngay
server HocVPS Script
 Hướng dẫn cài đặt SSL “xanh
Việt Phương on Script tự hoàn hảo”
động cài đặt HocVPS
Script và WordPress

Giới thiệu / Liên hệ


©2018 Học VPS, một sản phẩm của Canh Me. Hosted by Vultr.

https://hocvps.com/firewalld-centos-7/ 20/20

You might also like