Khi bạn cần mở một thứ gì đó trên mạng gia đình của mình với internet lớn hơn, đường hầm SSH có phải là cách đủ an toàn để làm điều đó không?
Phiên Hỏi & Đáp hôm nay đến với chúng tôi với sự hỗ trợ của SuperUser — một phần của Stack Exchange, một nhóm các trang web Hỏi & Đáp do cộng đồng điều hành.
Câu hỏi
Người đọc SuperUser Alfred M. muốn biết liệu anh ấy có đang đi đúng hướng với bảo mật kết nối hay không:
Gần đây tôi đã thiết lập một máy chủ nhỏ với một máy tính cấp thấp chạy debian với mục đích sử dụng nó như một kho lưu trữ git cá nhân. Tôi đã kích hoạt ssh và khá ngạc nhiên về sự nhanh chóng mà nó phải chịu đựng các cuộc tấn công vũ phu và những thứ tương tự. Sau đó, tôi đọc rằng đây là khá phổ biến và tìm hiểu về các biện pháp bảo mật cơ bản để ngăn chặn các cuộc tấn công này (ví dụ: rất nhiều câu hỏi và bản sao trên serverfault giải quyết nó, hãy xem cái này hoặc là cái này ).
Nhưng bây giờ tôi đang tự hỏi liệu tất cả những điều này có đáng để nỗ lực không. Tôi quyết định thiết lập máy chủ của riêng mình chủ yếu là để giải trí: Tôi chỉ có thể dựa vào các giải pháp của bên thứ ba như những giải pháp được cung cấp bởi gitbucket.org, bettercodes.org, v.v. Trong khi một phần của niềm vui là tìm hiểu về bảo mật Internet, tôi đã không đủ thời gian để cống hiến cho nó để trở thành một chuyên gia và gần như chắc chắn rằng tôi đã thực hiện các biện pháp phòng ngừa chính xác.
Để quyết định xem tôi có tiếp tục chơi với dự án đồ chơi này hay không, tôi muốn biết những gì tôi thực sự mạo hiểm khi làm như vậy. Ví dụ, các máy tính khác được kết nối với mạng của tôi cũng bị đe dọa ở mức độ nào? Một số máy tính này được sử dụng bởi những người có kiến thức thậm chí còn kém hơn tôi đang chạy Windows.
Xác suất tôi gặp rắc rối thực sự là bao nhiêu nếu tôi tuân theo các nguyên tắc cơ bản như mật khẩu mạnh, vô hiệu hóa quyền truy cập root cho ssh, cổng không chuẩn cho ssh và có thể tắt đăng nhập bằng mật khẩu và sử dụng một trong các quy tắc fail2ban, từ chối hoặc iptables?
Nói cách khác, có một số con sói xấu lớn mà tôi nên sợ hãi hay chủ yếu là để xua đuổi những đứa trẻ viết kịch bản?
Alfred nên sử dụng các giải pháp của bên thứ ba hay giải pháp DIY của anh ấy có an toàn không?
Câu trả lời
Người đóng góp cho SuperUser TheFiddlerWins trấn an Alfred rằng nó khá an toàn:
IMO SSH là một trong những thứ an toàn nhất để nghe trên mạng internet mở. Nếu bạn thực sự lo lắng, hãy nghe nó trên một cổng cao cấp không tiêu chuẩn. Tôi vẫn có tường lửa (cấp thiết bị) giữa hộp của bạn và Internet thực và chỉ sử dụng chuyển tiếp cổng cho SSH nhưng đó là biện pháp phòng ngừa đối với các dịch vụ khác. Bản thân SSH khá chắc chắn.
Tôi có thỉnh thoảng có người truy cập vào máy chủ SSH tại nhà của tôi (mở cho Time Warner Cable). Chưa bao giờ có tác động thực tế.
Một cộng tác viên khác, Stephane, nhấn mạnh việc dễ dàng bảo mật hơn nữa SSH:
Thiết lập hệ thống xác thực khóa công khai với SSH thực sự là tầm thường và mất khoảng 5 phút để thiết lập .
Nếu bạn buộc tất cả kết nối SSH sử dụng nó, thì điều đó sẽ làm cho hệ thống của bạn trở nên linh hoạt như bạn có thể hy vọng mà không cần đầu tư RẤT NHIỀU vào cơ sở hạ tầng bảo mật. Thành thật mà nói, nó rất đơn giản và hiệu quả (miễn là bạn không có 200 tài khoản - sau đó nó sẽ lộn xộn) nên việc không sử dụng nó sẽ là một hành vi xúc phạm công khai.
Cuối cùng, Craig Watson đưa ra một mẹo khác để giảm thiểu nỗ lực xâm nhập:
Tôi cũng điều hành một máy chủ git cá nhân mở ra toàn thế giới trên SSH và tôi cũng gặp phải vấn đề vũ phu giống như bạn, vì vậy tôi có thể thông cảm cho hoàn cảnh của bạn.
TheFiddlerWins đã giải quyết các tác động bảo mật chính của việc mở SSH trên một IP có thể truy cập công khai, nhưng công cụ tốt nhất IMO để đáp lại các nỗ lực vũ phu là Fail2Ban - phần mềm giám sát các tệp nhật ký xác thực của bạn, phát hiện các nỗ lực xâm nhập và thêm các quy tắc tường lửa vào cục bộ của máy
iptablesbức tường lửa. Bạn có thể định cấu hình cả số lần thử trước khi có lệnh cấm và cả thời lượng của lệnh cấm (mặc định của tôi là 10 ngày).
Có điều gì đó để thêm vào lời giải thích? Tắt âm thanh trong các bình luận. Bạn muốn đọc thêm câu trả lời từ những người dùng Stack Exchange am hiểu công nghệ khác? Kiểm tra toàn bộ chuỗi thảo luận tại đây .