it-swarm-vi.com

Sự khác biệt giữa SSL và SSH là gì? Cái nào an toàn hơn?

Sự khác biệt giữa SSH và SSL là gì? Cái nào an toàn hơn, nếu bạn có thể so sánh chúng với nhau?
[.___.] Cái nào có nhiều lỗ hổng tiềm năng hơn?

212
Am1rr3zA

Cả SSL và SSH đều cung cấp các yếu tố mật mã để xây dựng một đường hầm để vận chuyển dữ liệu bí mật với tính toàn vẹn được kiểm tra. Về phần đó, họ sử dụng các kỹ thuật tương tự và có thể bị các loại tấn công tương tự, vì vậy họ nên cung cấp bảo mật tương tự (nghĩa là bảo mật tốt) cho rằng cả hai đều được thực hiện đúng. Cả hai tồn tại là một loại NIH hội chứng: các nhà phát triển SSH nên sử dụng lại SSL cho phần đường hầm (giao thức SSL đủ linh hoạt để phù hợp với nhiều biến thể, bao gồm cả việc không sử dụng chứng chỉ).

Họ khác nhau về những thứ xung quanh đường hầm. Theo truyền thống, SSL sử dụng chứng chỉ X.509 để thông báo khóa công khai của máy chủ và máy khách; SSH có định dạng riêng. Ngoài ra, SSH đi kèm với một bộ giao thức cho những gì đi bên trong đường hầm (ghép nhiều lần chuyển, thực hiện xác thực dựa trên mật khẩu trong đường hầm, quản lý thiết bị đầu cuối. ..) trong khi không có điều đó trong SSL, hoặc chính xác hơn, khi những thứ đó được sử dụng trong SSL, chúng không được coi là một phần của SSL (ví dụ: khi thực hiện xác thực HTTP dựa trên mật khẩu trong đường hầm SSL, chúng tôi nói rằng nó là một phần của "HTTPS", nhưng nó thực sự hoạt động theo cách tương tự như những gì xảy ra với SSH).

Về mặt khái niệm, bạn có thể lấy SSH và thay thế phần đường hầm bằng phần từ SSL. Bạn cũng có thể lấy HTTPS và thay thế điều SSL bằng SSH-with-data-Transport và hook để trích xuất khóa công khai của máy chủ từ chứng chỉ của nó. Không có sự bất khả thi về mặt khoa học và nếu được thực hiện đúng cách, bảo mật sẽ vẫn như cũ. Tuy nhiên, không có bộ quy ước rộng rãi hoặc các công cụ hiện có cho điều đó.

Vì vậy, chúng tôi không sử dụng SSL và SSH cho cùng một thứ, nhưng đó là do những công cụ nào trong lịch sử đi kèm với việc triển khai các giao thức đó, không phải do một sự khác biệt liên quan đến an ninh. Và bất cứ ai thực hiện SSL hoặc SSH sẽ được khuyên nên xem loại tấn công nào đã được thử trên cả hai giao thức.

199
Thomas Pornin

Đây không phải là một so sánh hợp lý để thực hiện. SSL là một phương pháp chung để bảo vệ dữ liệu được vận chuyển qua mạng, trong khi SSH là một ứng dụng mạng để đăng nhập và chia sẻ dữ liệu với một máy tính từ xa.

Khả năng bảo vệ lớp vận chuyển trong SSH tương tự như khả năng của SSL, do đó, "an toàn hơn" phụ thuộc vào mô hình mối đe dọa cụ thể của bạn yêu cầu và việc triển khai từng địa chỉ mà bạn đang cố gắng giải quyết.

SSH sau đó có một lớp xác thực người dùng mà SSL thiếu (vì nó không cần đến nó - SSL chỉ cần xác thực hai giao diện kết nối mà SSH cũng có thể làm được). Trong nghệ thuật UTF-8:

      SSL              SSH
+-------------+ +-----------------+
| Nothing     | | RFC4254         | Connection multiplexing
+-------------+ +-----------------+
| Nothing     | | RFC4252         | User authentication
+-------------+ +-----------------+
| RFC5246     | | RFC4253         | Encrypted data transport
+-------------+ +-----------------+

Liên quan đến vấn đề có nhiều cuộc tấn công tiềm năng chống lại, có vẻ như rõ ràng SSH có bề mặt tấn công lớn hơn. Nhưng đó chỉ là do SSH có toàn bộ ứng dụng được tích hợp trong đó: bề mặt tấn công của SSL + bất kỳ ứng dụng nào bạn cần cung cấp không thể so sánh được vì chúng tôi không có đủ thông tin.

87
user185

Từ quan điểm mật mã nghiêm ngặt, cả hai đều cung cấp mã hóa xác thực, nhưng theo hai cách khác nhau.

SSH sử dụng cái gọi là Encrypt-and-MAC, đó là tin nhắn được mã hóa được nối với mã xác thực tin nhắn (MAC) của tin nhắn rõ ràng để thêm tính toàn vẹn. Điều này không được chứng minh là luôn luôn an toàn (ngay cả trong trường hợp thực tế thì nó cũng đủ).

SSL sử dụng MAC-then-Encrypt: một MAC được nối liền với văn bản rõ ràng, sau đó cả hai đều được mã hóa. Đây cũng không phải là tốt nhất, vì với một số chế độ mật mã khối, các phần của MAC có thể đoán được và tiết lộ điều gì đó trên mật mã. Điều này dẫn đến các lỗ hổng trong TLS 1.0 (tấn công BEAST).

Vì vậy, họ có cả những điểm yếu về lý thuyết. Phương thức mạnh nhất là Encrypt-then-MAC (thêm MAC của tin nhắn được mã hóa), được triển khai, ví dụ, trong IPsec ESP.

12
Halberdier

Tôi nghĩ rằng có một khía cạnh của sự so sánh này đã bị bỏ qua. user185 đã đến gần nhưng không hoàn toàn đến đó. Tôi đồng ý rằng đây là táo và cam và cảm thấy táo tốt hơn so với táo là HTTPS và SSH. HTTPS và SSH sử dụng các lớp khác nhau của mô hình OSI và do đó mã hóa dữ liệu tại các thời điểm khác nhau trong quá trình truyền. Sau đó, những câu hỏi thực sự mà người ta nên đặt ra sẽ nằm dọc theo dòng khi dữ liệu này được mã hóa và không được mã hóa trong quá trình truyền. Điều này sẽ tiết lộ các bề mặt tấn công tiềm năng của bạn. Với HTTPS, một khi gói tin được nhận bởi một thiết bị trong mạng đích (Máy chủ Web, Bộ định tuyến viền, bộ cân bằng tải, v.v.), nó không được mã hóa và dành phần còn lại của hành trình trong văn bản thuần túy. Nhiều người sẽ cho rằng đây không phải là vấn đề lớn vì lưu lượng truy cập là nội bộ vào thời điểm này, nhưng nếu tải trọng chứa dữ liệu nhạy cảm, nó sẽ được lưu trữ không được mã hóa trong các tệp nhật ký của mọi thiết bị mạng mà nó đi qua cho đến khi nó đến điểm đến cuối cùng. Thông thường, với SSH, thiết bị đích được chỉ định và truyền được mã hóa cho đến khi đến thiết bị này. Có nhiều cách để mã hóa lại dữ liệu HTTPS nhưng đây là những bước bổ sung mà hầu hết quên mất khi thực hiện giải pháp HTTPS trong môi trường của họ.

3
Sam Moore

ssh giống như một khóa (riêng tư) và khóa (công khai)

ssl giống như cánh cửa và những viên gạch.

ssl cung cấp một liên kết an toàn giữa hai máy chủ. ví dụ: Bạn và người bạn kết nối với.

ssh là cách máy tính kết nối có thể tự xác minh và có quyền truy cập.

2
datsusarachris

Vấn đề là hai lần, nó không chỉ là điểm mạnh và điểm yếu của mã hóa. Nhưng đó là sự dễ dàng và thuận tiện của việc giao hàng. Vì vậy, từ góc độ kinh doanh, SSL/TLS thuận tiện và dễ dàng hơn vì nó chỉ cần một trình duyệt và Chứng chỉ công khai hoặc riêng tư.

Và SSH yêu cầu ứng dụng hoặc ứng dụng khách mỏng được cài đặt để sử dụng nó. Đó là nhiều hơn một vấn đề từ quan điểm và hỗ trợ khách hàng Internet người dùng.

Không phải tất cả người dùng đều thông minh, đặc biệt là những người thách thức công nghệ.

2 xu của tôi.

0
Stanley Hutchinson

SSL là một lớp giao thức được trừu tượng hóa từ nội dung đang được tạo đường hầm. SSH là phiên bản bảo mật của Shell (SH), nó không được thiết kế để chứa một lớp trừu tượng bên dưới nó, nó được thiết kế đặc biệt để mang lưu lượng Shell. Vì vậy, mặc dù các hoạt động tiền điện tử được sử dụng trong cả hai và các hoạt động tiền điện tử đó thậm chí có thể giống nhau, mục đích và do đó thiết kế tổng thể khá khác nhau.

Hãy nhớ rằng có những khác biệt cụ thể (như đã được trích dẫn ở trên), nhưng hầu hết nếu không phải tất cả những khác biệt đó đều bắt nguồn từ mục đích của các giao thức khác nhau.

0
Gobbly