thắc mắc Vấn đề bảo mật Home Server

  • Người tạo chủ đề Người tạo chủ đề truongvuha2
  • Ngày bắt đầu Ngày bắt đầu

truongvuha2

Junior Member
Chào các bác, em đang thử thiết lập một home server sử dụng một chiếc laptop cũ với Ubuntu Server 22.04 LTS. Các dịch vụ em đã cài đặt bao gồm:
  • Pi-hole để chặn quảng cáo trong mạng nội bộ.
  • Samba để chia sẻ tệp giữa các máy tính trong gia đình (em có tạo user và mật khẩu riêng).
  • Docker, Nginx, Cockpit, MySQL, SQL Server... tất cả đều chạy trên các cổng mặc định như 80, 1433, v.v.
Em đã cấu hình IP tĩnh cho laptop (192.168.1.150) và thiết lập DMZ trên router, để khi có kết nối từ bên ngoài, nó sẽ tự động chuyển tiếp về IP của server trong mạng nội bộ. Tuy nhiên, em không mở cổng nào trên router cả (Port Forwarding). Em cũng đã mua tên miền từ TenTen và sử dụng Cloudflare DDNS để trỏ tên miền về public IP,cron tự động cập nhật IP thông qua API khi router bị reset.

Mục đích ban đầu là dựng lên để có thể truy cập ssh từ xa thông qua tên miền đã trỏ về IP, trao đổi file từ xa, deploy vài trang web nhỏ lên nginx ( truy cập qua tên miền đã ddns)

Vấn đề là dù em không mở port trực tiếp trên router, nhưng khi kiểm tra, em vẫn có thể SSH vào server (cổng 22) và truy cập các dịch vụ cài đặt qua tên miền DDNS hoặc IP public của mạng nhà em. Ví dụ, dù không mở cổng, nhưng Docker với Portainer chạy trên cổng 9000 vẫn có thể truy cập được. Em đã thử kiểm tra trên trang canyouseeme.org và thấy cổng đó tự mở mà không cần cấu hình thêm. Chỉ khi em dừng container Docker đó, cổng mới bị đóng lại.

Câu hỏi của em là:
  1. Liệu IP public của em có thể bị hacker quét và truy cập vào các dịch vụ như SSH, Docker, Samba, nếu họ biết được các cổng mặc định không?
  2. Mặc dù SSH đã được bảo vệ bằng SSH key, nhưng liệu các dịch vụ khác (Docker, Samba) có nguy cơ bị tấn công không, đặc biệt khi chúng đang mở các cổng mặc định mà không có biện pháp bảo mật bổ sung?
  3. Liệu việc sử dụng DMZ có tiềm ẩn rủi ro bảo mật gì không, và liệu có cần phải tắt chế độ này để tăng cường bảo mật cho các dịch vụ không?
  4. Làm sao để kiểm soát các cổng mở trên server, và liệu có cách nào để tự động đóng các cổng không sử dụng nữa, nhằm giảm thiểu nguy cơ bị quét từ bên ngoài?
P/S: Em viết xong hồi đọc lại không hiểu gì hết nên nhờ chat gờ pê tê paraphrase lại cho dễ đọc =((, mong các bác thông cảm:adore:

Update tình trạng hiện tại:
Cảm ơn các bác đã góp ý cho em ạ!
Đầu tiên cái quang trọng nhất là tắt DMZ, tắt UPnP
Tiếp là mở các cổng cần thiết (trừ 80 với 443 ra thì các cổng còn lại em port ra ngoài cổng khác):
1733420243495.png

Dùng Zoxaro để reverse proxy mấy cái web linh tinh:
1733420396835.png

Dùng Wire Guard VPN về server:
1733420562411.png

Nói chung là có vẻ em giải quyết được vấn đề này rồi, một lần nữa xin cảm ơn các bác đã chia sẻ
 
Sửa lần cuối:
Chào các bác, em đang thử thiết lập một home server sử dụng một chiếc laptop cũ với Ubuntu Server 22.04 LTS. Các dịch vụ em đã cài đặt bao gồm:
  • Pi-hole để chặn quảng cáo trong mạng nội bộ.
  • Samba để chia sẻ tệp giữa các máy tính trong gia đình (em có tạo user và mật khẩu riêng).
  • Docker, Nginx, Cockpit, MySQL, SQL Server... tất cả đều chạy trên các cổng mặc định như 80, 1433, v.v.
Em đã cấu hình IP tĩnh cho laptop (192.168.1.150) và thiết lập DMZ trên router, để khi có kết nối từ bên ngoài, nó sẽ tự động chuyển tiếp về IP của server trong mạng nội bộ. Tuy nhiên, em không mở cổng nào trên router cả (Port Forwarding). Em cũng đã mua tên miền từ TenTen và sử dụng Cloudflare DDNS để trỏ tên miền về public IP,cron tự động cập nhật IP thông qua API khi router bị reset.

Mục đích ban đầu là dựng lên để có thể truy cập ssh từ xa thông qua tên miền đã trỏ về IP, trao đổi file từ xa, deploy vài trang web nhỏ lên nginx ( truy cập qua tên miền đã ddns)

Vấn đề là dù em không mở port trực tiếp trên router, nhưng khi kiểm tra, em vẫn có thể SSH vào server (cổng 22) và truy cập các dịch vụ cài đặt qua tên miền DDNS hoặc IP public của mạng nhà em. Ví dụ, dù không mở cổng, nhưng Docker với Portainer chạy trên cổng 9000 vẫn có thể truy cập được. Em đã thử kiểm tra trên trang canyouseeme.org và thấy cổng đó tự mở mà không cần cấu hình thêm. Chỉ khi em dừng container Docker đó, cổng mới bị đóng lại.

Câu hỏi của em là:
  1. Liệu IP public của em có thể bị hacker quét và truy cập vào các dịch vụ như SSH, Docker, Samba, nếu họ biết được các cổng mặc định không?
  2. Mặc dù SSH đã được bảo vệ bằng SSH key, nhưng liệu các dịch vụ khác (Docker, Samba) có nguy cơ bị tấn công không, đặc biệt khi chúng đang mở các cổng mặc định mà không có biện pháp bảo mật bổ sung?
  3. Liệu việc sử dụng DMZ có tiềm ẩn rủi ro bảo mật gì không, và liệu có cần phải tắt chế độ này để tăng cường bảo mật cho các dịch vụ không?
  4. Làm sao để kiểm soát các cổng mở trên server, và liệu có cách nào để tự động đóng các cổng không sử dụng nữa, nhằm giảm thiểu nguy cơ bị quét từ bên ngoài?
P/S: Em viết xong hồi đọc lại không hiểu gì hết nên nhờ chat gờ pê tê paraphrase lại cho dễ đọc =((, mong các bác thông cảm:adore:
  1. Có, thường xuyên luôn, nhớ ko nhầm hội Mikrotik ở VN bị tụi nó tấn công router riết, voz này lâu lâu cũng có vài vụ.
  2. Cứ mở port mà ko bảo vệ = mở cửa cho hacker vào (trừ khi nào 2 cái Docker với Samba kia chỉ chạy qua SSH = ma pháp nào đấy).
  3. DMZ dùng tách hẳn mạng nội bộ và server cần host ra nhưng nhược điểm là lộ hết tất cả các port của device nằm trong DMZ.
  4. Tự động mở đóng cổng chỉ có UPnP mới làm được, cho UPnP nó mở port cho device chính nó thôi, cấm mở port cho device khác là auto an toàn.
Edit: Hình như có host web thì ko xài được Zerotier, chứ chỉ host để điều khiển cái server thì Zerotier quá ngon.
Kiểu này fen phải tăng cường bảo mật cho port rồi, xài thêm quản lý mk nữa là ổn, chỉ cần nhớ mk chính.

Trường hợp 2 như của fen là tụi nó hack bay màu trong 1p nha, bên Mik nó hack bay màu router ngay khi vừa kết nối internet luôn vì cái tội mở port ko bảo mật.
 
Sửa lần cuối:
Chào các bác, em đang thử thiết lập một home server sử dụng một chiếc laptop cũ với Ubuntu Server 22.04 LTS. Các dịch vụ em đã cài đặt bao gồm:
  • Pi-hole để chặn quảng cáo trong mạng nội bộ.
  • Samba để chia sẻ tệp giữa các máy tính trong gia đình (em có tạo user và mật khẩu riêng).
  • Docker, Nginx, Cockpit, MySQL, SQL Server... tất cả đều chạy trên các cổng mặc định như 80, 1433, v.v.
Em đã cấu hình IP tĩnh cho laptop (192.168.1.150) và thiết lập DMZ trên router, để khi có kết nối từ bên ngoài, nó sẽ tự động chuyển tiếp về IP của server trong mạng nội bộ. Tuy nhiên, em không mở cổng nào trên router cả (Port Forwarding). Em cũng đã mua tên miền từ TenTen và sử dụng Cloudflare DDNS để trỏ tên miền về public IP,cron tự động cập nhật IP thông qua API khi router bị reset.

Mục đích ban đầu là dựng lên để có thể truy cập ssh từ xa thông qua tên miền đã trỏ về IP, trao đổi file từ xa, deploy vài trang web nhỏ lên nginx ( truy cập qua tên miền đã ddns)

Vấn đề là dù em không mở port trực tiếp trên router, nhưng khi kiểm tra, em vẫn có thể SSH vào server (cổng 22) và truy cập các dịch vụ cài đặt qua tên miền DDNS hoặc IP public của mạng nhà em. Ví dụ, dù không mở cổng, nhưng Docker với Portainer chạy trên cổng 9000 vẫn có thể truy cập được. Em đã thử kiểm tra trên trang canyouseeme.org và thấy cổng đó tự mở mà không cần cấu hình thêm. Chỉ khi em dừng container Docker đó, cổng mới bị đóng lại.

Câu hỏi của em là:
  1. Liệu IP public của em có thể bị hacker quét và truy cập vào các dịch vụ như SSH, Docker, Samba, nếu họ biết được các cổng mặc định không?
  2. Mặc dù SSH đã được bảo vệ bằng SSH key, nhưng liệu các dịch vụ khác (Docker, Samba) có nguy cơ bị tấn công không, đặc biệt khi chúng đang mở các cổng mặc định mà không có biện pháp bảo mật bổ sung?
  3. Liệu việc sử dụng DMZ có tiềm ẩn rủi ro bảo mật gì không, và liệu có cần phải tắt chế độ này để tăng cường bảo mật cho các dịch vụ không?
  4. Làm sao để kiểm soát các cổng mở trên server, và liệu có cách nào để tự động đóng các cổng không sử dụng nữa, nhằm giảm thiểu nguy cơ bị quét từ bên ngoài?
P/S: Em viết xong hồi đọc lại không hiểu gì hết nên nhờ chat gờ pê tê paraphrase lại cho dễ đọc =((, mong các bác thông cảm:adore:
tắt dmz mở 2 port 80 + 443. rồi dùng revese proxy hoặc npm trỏ về app local. là đc rồi. fen. mở dmz khác nào làm bia cho bot quét đâu fen? ( dmz là bypass firewall. open hết cổng từ 1>65zxxzfczx nhé. có dịch vụ nào chạy cổng nào trong local là sẽ tự động open ra WAN).
cài VPN nếu muốn truy cập ngoài mạng vào local. là an toàn nhất.
ssh thì mở thêm port 22 cho ssh hoặc đổi port ssh sang port nào khù khoằm tí. dùng ssh key login là đc.
xin hết.
 
Dùng cá nhân thì đóng hết lại chỉ mở VPN server và ra ngoài internet phải VPN về local mới sử dụng các tính năng trên Hỏme Server dc.
 
Mấy trang web ktra mở port nó bán dữ liệu cho hacker nó quét port làm con mã hoá dữ liệu là đi lun dữ liệu đó.
 
Chào các bác, em đang thử thiết lập một home server sử dụng một chiếc laptop cũ với Ubuntu Server 22.04 LTS. Các dịch vụ em đã cài đặt bao gồm:
  • Pi-hole để chặn quảng cáo trong mạng nội bộ.
  • Samba để chia sẻ tệp giữa các máy tính trong gia đình (em có tạo user và mật khẩu riêng).
  • Docker, Nginx, Cockpit, MySQL, SQL Server... tất cả đều chạy trên các cổng mặc định như 80, 1433, v.v.
Em đã cấu hình IP tĩnh cho laptop (192.168.1.150) và thiết lập DMZ trên router, để khi có kết nối từ bên ngoài, nó sẽ tự động chuyển tiếp về IP của server trong mạng nội bộ. Tuy nhiên, em không mở cổng nào trên router cả (Port Forwarding). Em cũng đã mua tên miền từ TenTen và sử dụng Cloudflare DDNS để trỏ tên miền về public IP,cron tự động cập nhật IP thông qua API khi router bị reset.

Mục đích ban đầu là dựng lên để có thể truy cập ssh từ xa thông qua tên miền đã trỏ về IP, trao đổi file từ xa, deploy vài trang web nhỏ lên nginx ( truy cập qua tên miền đã ddns)

Vấn đề là dù em không mở port trực tiếp trên router, nhưng khi kiểm tra, em vẫn có thể SSH vào server (cổng 22) và truy cập các dịch vụ cài đặt qua tên miền DDNS hoặc IP public của mạng nhà em. Ví dụ, dù không mở cổng, nhưng Docker với Portainer chạy trên cổng 9000 vẫn có thể truy cập được. Em đã thử kiểm tra trên trang canyouseeme.org và thấy cổng đó tự mở mà không cần cấu hình thêm. Chỉ khi em dừng container Docker đó, cổng mới bị đóng lại.

Câu hỏi của em là:
  1. Liệu IP public của em có thể bị hacker quét và truy cập vào các dịch vụ như SSH, Docker, Samba, nếu họ biết được các cổng mặc định không?
  2. Mặc dù SSH đã được bảo vệ bằng SSH key, nhưng liệu các dịch vụ khác (Docker, Samba) có nguy cơ bị tấn công không, đặc biệt khi chúng đang mở các cổng mặc định mà không có biện pháp bảo mật bổ sung?
  3. Liệu việc sử dụng DMZ có tiềm ẩn rủi ro bảo mật gì không, và liệu có cần phải tắt chế độ này để tăng cường bảo mật cho các dịch vụ không?
  4. Làm sao để kiểm soát các cổng mở trên server, và liệu có cách nào để tự động đóng các cổng không sử dụng nữa, nhằm giảm thiểu nguy cơ bị quét từ bên ngoài?
P/S: Em viết xong hồi đọc lại không hiểu gì hết nên nhờ chat gờ pê tê paraphrase lại cho dễ đọc =((, mong các bác thông cảm:adore:
DMZ là nó đẩy tất cả traffic qua cái địa chỉ đấy. Tắt nó đi, bật port forwarding cho từng port thôi.
 
1. Có, dĩ nhiên rồi. Có điều bạn ko có static public ip nên cũng ko sợ lộ IP , chỉ sợ hack thôi
2. Có, thông qua lỗ hổng bảo mật của app/dịch vụ đấy, hoặc các tk mặc định mà có thể bạn ko biết
3. Bỏ DMZ. Nếu mạng nhà , nhu cầu đơn giản thì dùng zerotier, tailscale.
4. Tắt Upnp
 
Mở port 80, 443 và 1 port để VPN vào, thế là hết, chả ai mở SSH ra ngoài để bọn nó vào spam cả. Cần thì VPN vào rồi SSH
ZJqL4rW.png
 
Giải pháp hiện tại là tắt DMZ, chỉ mở 2 port 80 và 443 và thêm 1 port loằn ngoằn khó quét để ssh
Dùng Nginx để reverse proxy qua các app local là ổn đúng không các bác
 
Mở port 80, 443 và 1 port để VPN vào, thế là hết, chả ai mở SSH ra ngoài để bọn nó vào spam cả. Cần thì VPN vào rồi SSH
ZJqL4rW.png
chủ dùng vpn với port đã mở để ssh, còn các port 80443 có thể truy cập từ domain đã ddns không bác, vì em muốn deploy mấy web nhỏ, dùng nginx reverse proxy để chuyển về các app chạy local thì có ổn không bác
 
  1. Có, thường xuyên luôn, nhớ ko nhầm hội Mikrotik ở VN bị tụi nó tấn công router riết, voz này lâu lâu cũng có vài vụ.
  2. Cứ mở port mà ko bảo vệ = mở cửa cho hacker vào (trừ khi nào 2 cái Docker với Samba kia chỉ chạy qua SSH = ma pháp nào đấy).
  3. DMZ dùng tách hẳn mạng nội bộ và server cần host ra nhưng nhược điểm là lộ hết tất cả các port của device nằm trong DMZ.
  4. Tự động mở đóng cổng chỉ có UPnP mới làm được, cho UPnP nó mở port cho device chính nó thôi, cấm mở port cho device khác là auto an toàn.
Edit: Hình như có host web thì ko xài được Zerotier, chứ chỉ host để điều khiển cái server thì Zerotier quá ngon.
Kiểu này fen phải tăng cường bảo mật cho port rồi, xài thêm quản lý mk nữa là ổn, chỉ cần nhớ mk chính.

Trường hợp 2 như của fen là tụi nó hack bay màu trong 1p nha, bên Mik nó hack bay màu router ngay khi vừa kết nối internet luôn vì cái tội mở port ko bảo mật.
cảm ơn bác đã góp ý
quản lý mk, bác có thể nói cụ thể hơn được không ạ
 
tắt dmz mở 2 port 80 + 443. rồi dùng revese proxy hoặc npm trỏ về app local. là đc rồi. fen. mở dmz khác nào làm bia cho bot quét đâu fen? ( dmz là bypass firewall. open hết cổng từ 1>65zxxzfczx nhé. có dịch vụ nào chạy cổng nào trong local là sẽ tự động open ra WAN).
cài VPN nếu muốn truy cập ngoài mạng vào local. là an toàn nhất.
ssh thì mở thêm port 22 cho ssh hoặc đổi port ssh sang port nào khù khoằm tí. dùng ssh key login là đc.
xin hết.
như vậy vẫn truy cập qua domain em đã ddns được đúng không bác, ý em là dùng nginx để reverse proxy mấy app local rồi tuy cập qua bằng domain, nó an toàn hơn là trực tiếp truy cập domain + port của app bác nhỉ
với lại trên server em chỉ cho ssh xác thực bằng ssh key mà vẫn giữ port 22 thì có ổn không bác nhỉ
 
Sửa lần cuối:
  1. Có, thường xuyên luôn, nhớ ko nhầm hội Mikrotik ở VN bị tụi nó tấn công router riết, voz này lâu lâu cũng có vài vụ.
  2. Cứ mở port mà ko bảo vệ = mở cửa cho hacker vào (trừ khi nào 2 cái Docker với Samba kia chỉ chạy qua SSH = ma pháp nào đấy).
  3. DMZ dùng tách hẳn mạng nội bộ và server cần host ra nhưng nhược điểm là lộ hết tất cả các port của device nằm trong DMZ.
  4. Tự động mở đóng cổng chỉ có UPnP mới làm được, cho UPnP nó mở port cho device chính nó thôi, cấm mở port cho device khác là auto an toàn.
Edit: Hình như có host web thì ko xài được Zerotier, chứ chỉ host để điều khiển cái server thì Zerotier quá ngon.
Kiểu này fen phải tăng cường bảo mật cho port rồi, xài thêm quản lý mk nữa là ổn, chỉ cần nhớ mk chính.

Trường hợp 2 như của fen là tụi nó hack bay màu trong 1p nha, bên Mik nó hack bay màu router ngay khi vừa kết nối internet luôn vì cái tội mở port ko bảo mật.
nếu em xui bị hacker ghé thăm thì nó chỉ truy cập được th server em đã dmz thôi đúng không bác, còn các thiết bị khác trong nội bộ có bị ảnh hưởng không
 
như vậy vẫn truy cập qua domain em đã ddns được đúng không bác, ý em là dùng nginx để reverse proxy mấy app local rồi tuy cập qua bằng domain, nó an toàn hơn là trực tiếp truy cập domain + port của app bác nhỉ
với lại trên server em chỉ cho ssh xác thực bằng ssh key mà vẫn giữ port 22 thì có ổn không bác nhỉ
đúng r fen. reverse là phải dùng domain mà.
mình mở thẳng port ssh ra cả năm nay. thoải mái đi fen. đổi nó qua port khác.
 
Làm cái kế hoạch cứ 2-3h sáng nó tự khởi động lại để lấy ip mới. Sẽ hạn chế tụi hacker scan ip.
 
  • Tách pihole chạy riêng khỏi ubuntu server (cài trên router, hoặc trên pi, mà nên cài adguard home ngon hơn)
  • tạo vlan riêng cho server ubuntu, kết hợp vlan, vpn, firewall rules
 
sao ko thấy thanh niên nào xài firewall hết vậy, cài opnsense vô xong thiết lập chế độ đứa nào scan với login sai 3 lần ban IP ngày cũng block dc mấy vụ :v
 
sao ko thấy thanh niên nào xài firewall hết vậy, cài opnsense vô xong thiết lập chế độ đứa nào scan với login sai 3 lần ban IP ngày cũng block dc mấy vụ :v
Sao được? Nó có đăng nhập vào router đâu?
Chủ topic đang muốn rào cái server để khỏi bị hack.

Home server newbie mới tập làm mà ko quen rào là bọn hacker nó hack hết cái nhà.
 

Thống kê chủ đề

Ngày tạo
truongvuha2,
Người trả lời cuối
giacatvuhau2,
Trả lời
42
Lượt xem
5.347
Quay lại
Lên đầu trang