HMH's Blog

SSH server – cygwin – Windows

Posted by hmha on Tháng Tám 27, 2009

Nếu bạn muốn kết nối đến một máy sử dụng MS Windows một cách an toàn thì hãy cài đặt openssh trên cygwin. Tất nhiên đây không phải là phương pháp duy nhất.
Trước tiên hãy vào trang chủ cygwin để tải file setup.exe về. Chạy file setup.exe này, đến phần chọn packages bạn hãy chọn View “Full” và tìm đến gói openssh, bấm vào Skip khi đó trên cột B ô vuông sẽ được đánh dấu “x” như hình bên dưới:

sau đó tiếp tục tìm gói tcp_wrappers và cũng chọn cài đặt nó tương tự như trên, gói zlib sẽ được tự động cài đặt.

Bấm Next để tiến hành cài đặt.
Sau khi cài đặt xong chúng ta cần chỉnh lại biến môi trường (tôi thực hiện trên Windows XP).
Bấm chuột phải vào My Computer, chọn Properites, Advanced rồi Environment Variables:

Bấm New để thêm vào System variables với tên biến là: CYGWIN và giá trị của biến là: ntsec tty:

Tiếp tục, hãy bấm chuột phải vào My ComputerPropertiesAdvanced rồi Environment Variables. Ở vị trí biến Path, bấm Edit và thêm vào cuối dòng: ;c:\cygwin\bin

Quá trình cấu hình trên Windows XP kết thúc, bây giờ bạn có thể chạy cygwin.

Cấu hình cygwin để chạy SSH Server

Thiết lập lại quyền truy cập, thực hiện:
$ chmod +r /etc/passwd
$ chmod u+w /etc/passwd
$ chmod +r /etc/group
$ chmod 755 /var

sau đó thực hiện:
$ ssh-host-config
để cấu hình ssh server. Sau đó khởi động SSH Server bằng lệnh:
$ net start sshd
hoặc:
$ cygrunsrv --start sshd
trong trường hợp có lỗi xảy ra hãy chạy:
$ chown system /etc/ssh*
$ chown system /var/empty

và khởi động lại ssh server.
Để chắc chắn ssh server hoạt động hãy thử kết nối từ một máy khác, nếu bạn nhận được thông báo lỗi: ssh-exchange-identification: Connectiion closed by remote host hãy sửa lại file /etc/hosts.allow: bỏ đi dòng ALL : PARANOID : deny

Xong. Bây giờ SSH Server đã hoạt động, bạn có thể truyền tải file một cách an toàn qua mạng với scp, ví dụ:
$ scp /cygdrive/c/qwe.txt debian@192.168.1.1:~/qwe.txt
với câu lệnh trên (thực hiện trên máy cài cygwin), tập tin qwe.txt trên đĩa C sẽ được copy đễn máy có địa chỉ 192.168.1.1 với user là debian.
ví dụ tiếp theo:
$ scp hmha@192.168.1.2:/cygdrive/c/qwe.txt .
nghĩa là bạn ngồi trên máy khác (Linux chẳng hạn), thực hiện copy file qwe.txt trên đĩa C của máy cài CYGWIN có địa chỉ là 192.168.1.2 với user hmha đến thư mục hiện tại.
Hai cách làm trên đều thực hiện việc copy file từ máy cài cygwin đến máy khác.
Bây giờ nếu bạn muốn copy file đến máy cài cygwin (Windows) từ Linux chẳng hạn, trước tiên hãy kết nỗi đến Windows, thực hiện:
$ ssh hmha@192.168.1.2
sau đó thực hiện copy:
$ scp debian@192.168.1.1:~/qwe.txt /cygdrive/c/
Có thể tìm hiểu thêm về cách sử dụng ssh tại đây.

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s

 
%d bloggers like this: