OpenSSH là gì?

Bài viết được sự cho phép của tác giả Lê Chí Dũng

OpenSSH là một chương trình mã nguồn mở (Open Source) được sử dụng để mã hoá (encrypt) các giao dịch giữa các host với nhau bằng cách sử dụng Secure Shell (SSH). Nó là một sự thay thế an toàn cho những chương trình được sử dụng để kết nối như: Telnet, rlogin, rsh…Bởi nó luôn luôn mã hoá (encrypt) tất cả các giao dịch, ẩn đi, che dấu username và password được sử dụng cho những phiên đăng nhập từ xa. Sau khi phiên đăng nhập được thực hiện, nó sẽ tiếp tục mã hoá (encrypt) tất cả những dữ liệu giao dịch giữa 2 host.

Dự án OpenSSH được phát triển dựa trên nền tảng của dự án Open BSD (một OS thuộc họ Unix). Nó được thiết kế để sử dụng những thuật toán mã hoá mạnh để nâng cao tính an toàn và ngăn chặn sự phá hoại của các hacker. Mặc dù được xây dựng và phát triển bởi nền tảng OpenBSD, nó cũng có khả năng tương thích và có thể hoạt động trên hầu hết các OS thuộc dòng họ Unix: Linux, HP-UX, AIX, Irix, SCO, MacOS X, Cygwin, Digital Unix/Tru64/OSF, SNI/Reliant Unix, NeXT, Solaris…

OpenSSH không phải là một chương trình. Nó là một bộ các chương trình kết nối an toàn:

– OpenSSH Client (ssh): Chương trình được sử dụng cho các đăng nhập từ xa. Với sự an toàn và mã hoá (encrypt) trong mỗi phiên đăng nhập ở mức độ cao. Nó là sự thay thế an toàn cho: rlogin và telnet đã tỏ ra lỗi thời và kém an toàn.

– Secure Copy Program (scp): Được sử dụng cho việc copy file từ xa, copy các file từ các host khác nhau trên Internet. Nó hỗ trợ username và password.

– Secure File Transfer Program (sftp): Được sử dụng để phục các yêu cầu FTP một cách an toàn.

– OpenSSH Deadmon (shhd): Đặt OpenSSH chạy ở chế độ daemon trên các hệ thống Unix.
…………….

Trên đây là những Tools chính không thể thiếu trong bộ OpenSSH. Ngoài ra còn rất nhiều Tools, Plugin, Addin nữa…

  Tại sao phải tham gia phát triển open-source
  Lí do mà tôi đã trót yêu "như điếu đổ" hệ điều hành OpenBSD

CÀI ĐẶT

Để lấy OpenSSH bạn lên Homepage chính của nó:http://www.openssh.org

Download một version phù hợp với hệ thống của mình. Tôi dùng Linux nên tôi sẽ download gói *.rpm. Sau đó sử dụng lệnh

[email protected]#: rpm -Uvh *.rpm

Nếu bạn sử dụng các hệ thống khác thì việc cài đặt nó cũng tương tự. Bạn download gói phù hợp với hệ thống của mình. Nó có thể là *.tar, *.tar.gz, *.gz…etc. Bung nén nó vào một thư mục.

[email protected] #: ./configure
[email protected] #: make
[email protected] #: make install

Tiếp đó theo làm theo các chỉ dẫn của script. Công việc cài đặt không mấy khó khăn. Chúng ta hãy dành thời gian và công sức cho công việc cấu hình.

CÁC TÍNH NỔI BẬT CỦA OPEN SSH

Open SSH cung cấp khá nhiều tính năng để giúp cho việc truyền thông giữa 2 host trở lên an toàn. Dưới đây là một số tính nổi bật:

1) Khả năng mã hoá mạnh bởi việc sử dụng chuẩn mã hoá 3 DES và Blowfish: Cả 2 chuẩn mã hoá trên đều đuợc cung cấp miễn phí và sử dụng rộng rãi ở nhiều nước trên thế giới. 3DES cung cấp khả năng mã hoá chứng thực thời gian. Blowfish cung cấp khả năng mã hoá nhanh hơn. Cũng như những chuẩn mã hoá khác cả 2 chuẩn nêu trên đều cung cấp khả năng mã hoá các dữ liệu trước khi nó được đưa vào đường truyền một cách an toàn.
2) Khả năng chứng thực mạnh bởi việc sử dụng các cơ chế Public Key, OPTs (One Time Password), Kerberos: Có tác dụng bảo vệ chống lại tính dễ tổn thương trong quá trình chứng thực bởi việc khai thác và sử dụng các kỹ thuật như: IP Spoof, DNS Spoof, Fake Router…Có 4 phương pháp chứng thực được Open SSH sử dụng :
–          Chỉ chứng thực Public Key
–          Sự chứng thực host bởi việc sử dụng Public Key kết hợp với .rhost
–          Sự chứng thực dựa trên OPTs kết hợp với s/key
–          Sự chứng thực dựa trên cơ chế Kerberos
3) Mã hoá giao thức X11 cho việc sử dụng X Window: Mã hoá dữ liệu trong quá trình sử dụng X Window giữa 2 host. Được sử dụng để chống lại những cuộc tấn công từ xa nhằm vào xterm như Snooping, Hjacking…
4) Mã hoá cho quá trình chuyển đổi cổng (Port Forwarding): Cho phép quá trình chuyển đổi các port TCP/IP tới một hệ thống khác thông qua một kênh được mã hoá. Nó được sử dụng cho những giao thức Internet chuẩn không cung cấp khả năng mã hoá dữ liệu trên đường truyền như: SMTP, POP, FTP, Telnet…
5) Đại diện chuyển tiếp cho những đăng nhập vào các mạng đơn: Một Key chứng thực của người dùng có thể và thường được lưu giữ trên PC của họ, nó có thể trở thành một trạm đại diện chứng thực. Khi người sử dụng hệ thống truy cập từ một hệ thống mạng khác. Kết nối của họ sẽ được chuyển tới cho trạm đại diện chứng thực này. Nó có tác dụng cho phép người sử dụng truy cập đến hệ thống của bạn một cách an toàn từ bất kỳ hệ thống nào.
6) Nén dữ liệu: Cung cấp khả năng nén dữ liệu một cách an toàn. Nó rất có ý nghĩa trên những hệ thống mạng không được nhanh.
7) Chứng thực chung cho Kerberos và Andrew File System bằng cách sử dụng Ticket: Những người sử dụng Kerberos và AFS sẽ được cung cấp một password chung để sử dụng và truy cập 2 dịch vụ trên trong một thời gian nhất định.

TẠO OPENSSH

Bài viết gốc được đăng tải tại lcdung.top

Có thể bạn quan tâm:

Xem thêm Việc làm Developer hấp dẫn trên TopDev