Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 20 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
20
Dung lượng
223,83 KB
Nội dung
GiớithiệuOpenSSHGIỚITHIỆUOpenSSH là một chương trình mã nguồn mở (Open Source) đư ợc sử dụng để m 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 thế an toàn cho những chương trình được sử dụng để kết nối nh ư: Telnet, rlogin, rsh B luôn mã hoá (encrypt) tất cả các giao dịch, ẩn đi, che dấu username v à password đư cho những phiên đăng nhập từ xa. Sau khi phiên đăng nhập được thực hiện , nó s (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 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 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 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 - OpenSSH Client (ssh): Chương trình được sử dụng cho các đăng nh ập từ xa. Với và mã hoá (encrypt) trong mỗi phiên đăng nhập ở mức độ cao. Nó là s ự thay thế an to 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 ……………. Trên đây là những Tools chính không thể thiếu trong bộ OpenSSH. Ngo ài ra còn r Plugin, Addin nữa 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 *.rpm. Sau đó sử dụng lệnh root@domain.com#: 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 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 root@domain.com #: ./configure root@domain.com #: make root@domain.com #: 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 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 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 cung cấp khả năng mã hoá chứng thực thời gian. Blowfish cung c ấp khả năng m 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 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ế Publi c 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 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 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 như Snooping, Hjacking… 4) Mã hoá cho quá trình chuyển đổi cổng (Port Forwarding) : Cho phép quá trình chuy 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ó đư những giao thức Internet chuẩn không cung cấp khả năng mã hoá dữ liệu tr ên đư 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 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 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 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. NGUYÊN LÝ HOẠT ĐỘNG CỦA OPEN SSH Trước hết chúng ta cùng tìm hiểu về cơ ch ế chứng thực cho các lệnh r* (rlogin, rsh, rcp). Khi sử dụng rlogin, điều kiện đầu tiên là người dùng đó phải có một account trên h ệ thống m đăng nhập từ xa đó. Chẳng hạn trên hệ thống từ xa đã có account binhnx2000 . N cục bộ tôi kết nối tới một hệ thống từ xa, thì sẽ không có bất cứ yêu c ầu hỏi password n truy nhập vào hệ thống từ xa này. Đơn giản bởi account binhnx2000 của tôi đ ã bởi file .rhost đươc đặt trong thư mục /home/binhnx2000 trên h ệ thống từ xa. File .rhost chứa đựng hostname và username yêu c ầu cho các account cần để sử dụng đăng nhập tới hệ thống. Chẳng hạn hostname của tôi là vnzone.net và username của tôi l à truy cập đến hệ thống không cần Passowd thì các thông tin về tôi trong file .rhost sau: Hostname Username Đối với hostname phải là hostname đ ầy đủ của hệ thống. Đối với username phải l hợp lệ đang tồn tại trên hệ thống mà bạn muốn login vào. Một ví dụ cụ thể: nếu tôi muốn sử dụng rlogin. Thì admin phải tạo một file .rhost trong /home/binhnx2000 với nội dung: domain.com binhnx2000 Mọi việc xong xuôi! Bây giờ khi tôi muốn đăng nhập vào h ệ thống tôi chỉ việc phát lệnh: Hạn chế của giao thức này là các dữ liệu thông tin đi đến host không hề đư ợc m thể bị đánh hơi được bởi các chương trình sniffer. Đặc biệt là rất dễ bị tổn th ương b tấn công: IP Spoof, DNS Spoof, Router Spoof… Vì những tính dễ tổn thương trên các chuyên gia security khuyến cáo bạn l ên lo r* service (rlogin, rsh…) trên hệ thống. Thông thường thì trên các h ệ thống Linux cấu h thể hoạt động chung cho các service được cấu hình trong file /etc/xinet.d , đ ể vô hiệu hoá các r* service: - Bạn dùng vi, emacs…hay bất cứ trình soạn thảo văn bản nào mà b ạn muốn để mở /etc/init.d/xinet.d - Tìm đoạn “service login“ xoá chúng đi. Ghi lại mọi sự thay đổi v à thoát trình so - Khởi động lại xinetd.d daemon : /etc/init.d/xinet.d restart - Nếu có thể bạn hãy vô hiệu hoá luôn telnet service bằng cách tr ên. Sau đó thay th bằng Open SSH. Chúng ta đã tìm hiểu qua nguyên lý ho ạt động của r* service. Bây giờ chúng ta sẽ t nguyên lý hoạt động của Open SSH. Điều đầu tiên mà tôi có th ể khẳng định với bạn l SSH cung cấp một cơ chế chứng thực khá an toàn bởi việc sử dụng những Public Key Key. Các Private Key chỉ được sử dụng bởi người sở hữu, còn Public Key có th bởi mọi người . Muốn Open SSH tạo ra các DSA Private/Public Key bạn dùng lệnh: shh-keygen -d Các DSA Private Key thường được lưu trữ ở $HOME/.ssh/id_dsa file. Còn các Key thường được lưu trữ ở $HOME/.ssh/id_dsa.pub … Các Public Key c ần phải đ và copy đến thư mục thích hợp trên hệ thống ở xa muốn sử dụng Open SSH. Dưới đây liệt kê vị trí cũng những Public Key mà Open SSH s ử dụng trong quá tr thực: SSH Version 2 Keys Local System Default Location Remote Host Location Private Key $HOME/.ssh/id_dsa Public Key $HOME/.ssh/id_dsa.pub $HOME/.ssh/authorized_keys2 SSH Version 1 Key Local System Default Location Remote Host Location Private Key $HOME/.ssh/identity Public Key $HOME/.ssh/identity.pub $HOME/.ssh/authorized_keys Dưới đây là những file quan trọng đư ợc Open SSH sử dụng để xác định những Public Key: - $HOME/.ssh/known_hosts: Danh sách các Public Key cho t ất cả các host có user đăng nhập. Thường thì các danh sách các host Public Key được liệt kê ở /etc/ssh_known_hosts - /etc/ssh_known_hosts: Chứa danh sách các RSA Generated Public Key host mà hệ thống được biết. Bất cứ host nào mu ốn đăng nhập đến hệ thống đều phải có Key được liệt kê trong file này. Admin trên hệ thống của bạn cần phải liệt k ê các những người sử dụng trong hệ thống mạng đó - /etc/ssh_known_hosts2: Cũng như ssh_know_host nó ch ứa danh sách các Generated Public Keycho tất cả các host mà hệ thống biết. - $HOME/.ssh/config: File cấu hình cho mỗi ngư ời sử dụng. Trong một số hệ thống lớn, mỗi người sử dụng sẽ có một file cấu hình đặc biệt. Nó sẽ đư ợc sử dụng bởi SSH Client. - /etc/ssh/ssh_config: File cấu hình cho toàn b ộ hệ thống. Nó cũng có thể những người sử dụng không có File cấu hình hay tạm thời chưa có file cấu h ình. Nó t khởi tạo khi cài đặt Open SSH lần đầu và được gọi để sử dụng mỗi khi Open SSH - $HOME/.ssh/rc: Liệt kê những lệnh đã được thực thi trong suốt quá tr ình ng [...]... nguồn và tên người viết…Rất cảm ơn bạn đã quan tâm tôi (Power by: binhnx2000==(=========> ^($)^ Supporter Of VTF) (E-mail: binhnx2000@yahoo.com | Home: http://www.vieteam.com/) Tài liệu tham khảo - Using OpenSSH to Encrypt Network Traffic between Two Hosts - Deutsch Unix/Linux Gruppen (DUG) - Information Bibliothek Frei Universität Berlin (FU Berlin) Lưu ý: binhnx2000 Public Key có thể được phân phát tuỳ . Giới thiệu OpenSSH GIỚI THIỆU OpenSSH là một chương trình mã nguồn mở (Open Source) đư ợc sử dụng để m các giao. c ầu FTP một cách an toàn. - OpenSSH Deadmon (shhd): Đặt OpenSSH chạy ở chế độ daemon tr ên các h ……………. Trên đây là những Tools chính không thể thiếu trong bộ OpenSSH. Ngo ài ra còn r Plugin,. 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 - OpenSSH Client (ssh): Chương trình được sử dụng cho