Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 25

TRƯỜNG ĐẠI HỌC MỞ HÀ NỘI

KHOA CÔNG NGHỆ THÔNG TIN


------------------------------------

BÁO CÁO BÀI TẬP LỚN

MÔN HỌC: QUẢN TRỊ HỆ THỐNG LINUX

ĐỀ TÀI SỐ 5:
Cài đặt server SSH và đăng nhập từ Windows

Giảng viên hướng dẫn: Ths Vũ Xuân Hạnh

Nhóm sinh viên thực hiện: Cao Thế Trung – 1910A01

Nguyễn Thị Thu Uyên – 1910A01

Hà Nội 2023
MỤC LỤC
I, Hệ điều hành mã nguồn mở..............................................................................................................3
1, Giới thiệu..........................................................................................................................................
2, Đặc trưng..........................................................................................................................................
II, Tổng quan về Linux.........................................................................................................................7
1, Định nghĩa........................................................................................................................................
2, Cấu trúc hệ điều hành Linux............................................................................................................
III, Tổng quan về Ubuntu.....................................................................................................................8
1. Ubuntu là gì?....................................................................................................................................
2, Ưu điểm của hệ điều hành Ubuntu...................................................................................................
IV, Cài đặt server SSH và đăng nhập từ Windows.............................................................................10
1, Giới thiệu về server SSH................................................................................................................
2, SSH có bảo mật không...................................................................................................................
3, Sử dụng SSH khi nào......................................................................................................................
4, SSH hoạt động như thế nào............................................................................................................
5, Ưu điểm của SSH...........................................................................................................................
6, Các lệnh phổ biến trong SSH.........................................................................................................
7, Các kỹ thuật mã hóa SSH...............................................................................................................
8, Giai đoạn thiết lập kết nối của SSH................................................................................................
V, Cài đặt server SSH trên Ubuntu.....................................................................................................16
VI, Kết nối SSH từ Window...............................................................................................................18
I, Hệ điều hành mã nguồn mở
1, Giới thiệu
Về cơ bản, hệ điều hành là thứ giúp cho toàn bộ hệ thống phần mềm hoạt động. Nói
nôm na cho dễ hiểu, hệ điều hành là phần móng của một căn nhà, những phần mềm,
ứng dụng hay chương trình khác là phần nhà phía trên. Do đó, vai trò của hệ điều
hành là vô cùng quan trọng.

Về phần “mở", mã nguồn mở có nghĩa là nó được đăng tải công khai trên mạng, bất
kỳ ai cũng có thể truy cập, xem, chỉnh sửa và lấy về sử dụng. Mã nguồn mở hoàn
toàn trái ngược với các phần mềm bản quyền - bạn phải trả tiền mới được sử dụng.

Vậy các hệ điều hành mã nguồn mở tức là những hệ điều hành cho phép bất kỳ người
dùng nào có nhu cầu sử dụng, đều có thể truy cập vào, thậm chí là tuỳ biến và chỉnh
sửa theo ý thích.

Hình 1

2, Đặc trưng
Ưu, nhược điểm
- Ưu điểm
• Tiết kiệm chi phí
Như đã nói ở trên, phần mềm mã nguồn mở là phần mềm hoàn toàn miễn phí. Có thể
sử dụng nó cho mục đích thương mại mà không phải trả tiền bản quyền. Người dùng
không bị nhà cung cấp kiểm soát khi sử dụng phần mềm mã nguồn mở. Vì vậy, có thể
tránh trường hợp một số chức năng, một số tập tin bị ẩn đi như các phần mềm mã
nguồn mở độc quyền khác.
1
Khi lập trình viên sử dụng phần mềm mã nguồn mở, họ cũng tránh được những rủi ro
như mua phải phần mềm có bản quyền nhưng không được nhà cung cấp hỗ trợ sau
khi hết thời hạn sử dụng. Có một số lý do để giải thích điều này. Tuy nhiên, người
dùng sẽ không thể sử dụng phần mềm nếu không nhận được sự hỗ trợ vì những lý do
chủ quan hay khách quan. Ngoài ra, người dùng sẽ phải trả thêm tiền để tiếp tục sử
dụng.

• Độ bảo mật cao


Như đã đề cập ở trên, không có lỗ hổng bảo mật nào trong mã nguồn mở. Chỉ cần
tưởng tượng rằng phần mềm mã nguồn mở từ lâu đã được phát triển bởi một cộng
đồng lập trình viên, bao gồm nhiều lập trình viên tài năng trên khắp thế giới. Sau đó,
họ liên tục kiểm tra, sửa đổi, thêm và bớt các tính năng.

Trước khi người dùng thêm các tính năng mới vào phần mềm mã nguồn mở, hãy luôn
đặt các yếu tố an toàn và kiểm tra chúng trước. Nếu không, các tính năng này sẽ làm
cho phần mềm kém an toàn hơn.

• Hệ thống mã nguồn hoạt động linh hoạt

Phải nói rằng, khi tạo ứng dụng bằng mã nguồn mở, việc sửa lỗi nhanh hơn nhiều so
với phần mềm có bản quyền. Nếu nhà phát triển tìm thấy lỗi trong quá trình hoàn
thiện, họ có thể sửa lỗi đó ngay lập tức. Không giống như mã nguồn mở, khi bạn
chỉnh sửa trong phần mềm có bản quyền, bạn phải báo cáo với nhà cung cấp và chỉnh
sửa nếu được phép.

Ví dụ: nếu một lập trình viên muốn phát triển thêm các tính năng và mở rộng tiện ích
của ứng dụng được tạo từ phần mềm mã nguồn mở, họ có thể điều chỉnh, thêm / bớt
mã tùy chỉnh hoặc chờ phản hồi từ nhà cung cấp mà không cần xin phép. Điều này
chứng tỏ tính linh hoạt của phần mềm mã nguồn mở.

• Không giới hạn khả năng sáng tạo

Vì nó "mở" và miễn phí, nhiều lập trình viên đã sử dụng nó để tạo ra những phần
mềm hữu ích. Nó được coi là một sản phẩm giúp các nhà thiết kế và lập trình sáng
tạo và thử nghiệm các ý tưởng của họ.

2
Phần mềm mã nguồn mở cũng giúp người dùng giảm bớt sự phụ thuộc vào các nhà
cung cấp như mã nguồn có bản quyền.

Hình 2
- Nhược điểm

• Khó khăn khi sử dụng

Điều này không đúng với tất cả các phần mềm nguồn mở vì nhiều phần mềm trong số
chúng (chẳng hạn như LibreOffice, Mozilla Firefox và hệ điều hành Android) cực kỳ
dễ sử dụng. Tuy nhiên, một số ứng dụng mã nguồn mở có thể khó thiết lập và sử
dụng. Điều này có thể ảnh hưởng đến năng suất và sẽ là rào cản lớn nhất khi bạn
quyết định sử dụng các phần mềm này hay không.

• Các vấn đề về khả năng tương thích

Nhiều loại phần cứng độc quyền cần các trình điều khiển chuyên biệt để chạy các
phần mềm mã nguồn mở, những chương trình này thường chỉ có sẵn từ nhà sản xuất
thiết bị. Điều này có thể làm tăng thêm chi phí của bạn. Ngay cả khi phần mềm mã
nguồn mở tồn tại, nó có thể không hoạt động với phần mềm của bạn cũng như trình
điều khiển độc quyền.

• Trách nhiệm pháp lý và bảo hành

Với phần mềm độc quyền, nhà phát triển thường cung cấp bồi thường và bảo hành
như một phần của thỏa thuận cấp phép tiêu chuẩn. Điều này là do họ hoàn toàn kiểm
soát và giữ bản quyền sản phẩm cũng như mã cơ bản của nó. Giấy phép phần mềm

3
nguồn mở thường chỉ chứa bảo hành có giới hạn và không có trách nhiệm pháp lý
hoặc bảo vệ bồi thường vi phạm.

Bản phân phối

Tên bản phân Phiên Trang web chính thức Các bản tương tự
phối bản mới
nhất
Ubuntu 22.04 http://www.ubuntu.com/ Kubuntu, Xubuntu,
Edubuntu,Macbuntu
Debian 11.7 http://www.debian.org/
GNU/Linux
Elementery 0.2 http://www.elementeryos.org/
OS
CentOS 8.5 http://www.centos.org/
Fedora 19 http://www.fedoraproject/
Chrome Linux 2.1.1145 http://getchrome.edu/
Linux Mint 14 http://www.linuxmint.com/
Mandrake 2014 http://www.mandriva.com/ Mandriva
PCLinuxOS 2017 http://www.pclinuxos.com/
Kali Linux 1.0.8 http://www.kali.org/ Kali-Linux
Sabayon 10 http://www.sabayon.org/
Super Ubuntu 18.04 http://hacktolive.org/wiki/Super
OS/
ZorinOS 5 http://zorin-os.com/ Ubuntu, Super
Ubuntu

II, Tổng quan về Linux


1, Định nghĩa
Linux là một hệ điều hành máy tính được phát triển từ năm 1991 dựa trên hệ điều
hành Unix và bằng viết bằng ngôn ngữ C.

4
Do Linux được phát hành miễn phí và có nhiều ưu điểm vượt trội nên Linux vẫn giữ
được một chỗ đứng vững chắc trong lòng người dùng trước các ông lớn như
Windows hay macOS.

2, Cấu trúc hệ điều hành Linux


+ Kernel

Hay được gọi là phần Nhân vì đây là phần quan trọng nhất trong máy tính bởi chứa
đựng các module hay các thư viện để quản lý, giao tiếp giữa phần cứng máy tính và
các ứng dụng.

+ Shell

Shell là phần có chức năng thực thi các lệnh (command) từ người dùng hoặc từ các
ứng dụng yêu cầu, chuyển đến cho Kernel xử lý. Shell chính là cầu nối để kết nối
Kernel và Application, phiên dịch các lệnh từ Application gửi đến Kernel để thực thi.

Có các loại Shell như sau: sh (the Bourne Shell), bash(Bourne-again shell), csh (C
shell), ash (Almquist shell), tsh (TENEX C shell), zsh (Z shell).

+ Application

Đây là phần quen thuộc với chúng ta nhất, phần để người dùng cài đặt ứng dụng,
chạy ứng dụng để người dùng có thể phục vụ cho nhu cầu của mình.

III, Tổng quan về Ubuntu


1. Ubuntu là gì?
Ubuntu là một hệ điều hành trên máy tính, và nó được phát triển dựa trên
Linux/Debian GNU. Lần đầu được giới thiệu vào năm 2004, tính đến năm 2007,
Ubuntu đây là phiên bản chiếm 30% số bản tùy biến của Linux được cài đặt trên máy
tính, và cũng là bản tuỳ biến Linux phổ biến nhất. Công ty Canonical đã và đang chịu
trách nhiệm trong việc tài trợ Ubuntu, giúp cho hệ điều hành này có thể phát triển
trong tương lai.

Có ba loại phiên bản Ubuntu mà người dùng cần biết đến, bao gồm Ubuntu phiên bản
thông thường, phiên bản hỗ trợ lâu dài (LTS) và các dự án khác. Thông thường, bạn

5
nên sử dụng phiên bản hỗ trợ lâu dài để nhận được hỗ trợ trong vòng 3 năm đối với
máy tính để bàn và 5 năm đối với máy chủ.

Hình 3

2, Ưu điểm của hệ điều hành Ubuntu


- Không yêu cầu cấu hình mạnh

Thông thường, quá trình cài đặt Ubuntu trên máy tính sẽ giao động từ 20 - 30 phút,
tuỳ theo cấu hình của máy, và bạn chỉ cần có thiết bị có dung lượng RAM từ 256MB
trở lên. Và cấu hình khuyên dùng thì chỉ cần RAM trên 384MB, và CPU là 700 MHz
(x86).

- Có nhiều ứng dụng miễn phí

Bạn không cần tốn quá nhiều chi phí cho các ứng dụng, và chúng đều có mặt trên
Ubuntu Software Center. Chẳng hạn như bộ ứng dụng văn phòng LibreOffice miễn
phí cũng đã được cài sẵn trên hệ điều hành Ubuntu.

6
- Khả năng tương tác sâu

Mặc dù đôi khi phải sử dụng các câu lệnh để tương tác với thiết bị, nhưng nhờ vậy
mà người dùng có thể điều khiển phần mềm một cách sâu hơn, từ đó hiệu quả công
việc sẽ tốt hơn, nhất là khi so sánh với các giao diện đồ họa. Đồng thời, đây là hệ
điều hành mã nguồn mở, thế nên Ubuntu có độ tùy biến cao.

- Có tính bảo mật cao

Bạn không cần lo lắng quá nhiều về việc có cần cài đặt các phần mềm diệt virus như
trên Windows bởi vì số lượng malware hay virus khá ít trên hệ điều hành Ubuntu.

IV, Cài đặt server SSH và đăng nhập từ Windows


1, Giới thiệu về server SSH
SSH là giao thức đăng nhập vào server từ xa, cho phép người dùng kiểm soát, chỉnh
sửa và quản trị dữ liệu của server thông qua nền tảng Internet. SSH là viết tắt của
Secure Socket Shell. SSH cũng giúp việc kết nối của mạng lưới máy chủ và máy
khách an toàn, hiệu quả và bảo mật thông tin tốt hơn.SSH có chức năng mã hóa dữ
liệu đường truyền. Điều này phục vụ cho quá trình chuyền tập tin, chạy chương trình.
SSH cũng chuyển tiếp kết nối TCP/IP qua liên kết an toàn…

2, SSH có bảo mật không


Giao thức SSH cung cấp các dịch vụ của máy chủ như xác thực, mã hóa, xác minh
tính toàn vẹn dữ liệu và xác thực khách hàng. Máy chủ được SSH xác thực thông qua
việc thực hiện DSA, RSA hoặc ECDSA thuật toán mã khóa công khai.

Để xác minh mã hóa và toàn vẹn dữ liệu, một số thuật toán được cung cấp mà mỗi
sản phẩm SSH có thể thực hiện trong một khoảng thời gian nhất định. Trong khi đó,
xác thực khách hàng lại được SSH thực hiện bằng cách sử dụng mật khẩu, khóa công
khai, chỉ 1 tài khoản login trên 1 thời diểm (single sign-on), và các phương pháp
khác.

Đặc điểm kỹ thuật giao thức SSH được công khai và đã được xem xét bởi một số
người thực hiện độc lập. Vì vậy, khi thực hiện đúng và sử dụng chúng, giao thức này

7
hoàn toàn an toàn để bảo mật thông tin và chống lại hầu hết tất cả các cuộc tấn công
mật mã.

3, Sử dụng SSH khi nào


SSH hoạt động ở tầng thứ 4 trong mô hình TCP/IP. Nó cho phép tương tác giữa máy
chủ và máy khách, sử dụng cơ chế mã hoá nhằm ngăn chặn các hiện tượng nghe
trộm, đánh cắp thông tin trên đường truyền. Đây là điều mà các giao thức trước đây
như telnet, rlogin không đáp ứng được.Vì vây, bạn nên lựa chọn sử dụng SSH nếu
muốn thiết lập một kết nối mạng được mã hóa và cung cấp môi trường an toàn cho
người tiêu dùng. Các công cụ SSH phổ biến hiện nay có thể kể đến như PuTTY,
OpenSSH,..

4, SSH hoạt động như thế nào


Quy trình hoạt động của SSH có thể tóm gọn thông qua 3 bước đơn giản sau:

Bước 1: Định danh host – xác định định danh của hệ thống tham gia phiên làm việc
SSH. Đơn giản hơn, đây là bước khởi tạo kết nối SSH. Kết nối này là một kênh giao
tiếp bảo mật giữa server và client.

Bước 2: Mã hoá dữ liệu – thiết lập kênh làm việc mã hoá. Sau khi Client xác định
được định danh của Server 1 kết nối bảo mật đối xứng được hình thành giữa 2 bên.

Bước 3: Chứng thực và giải mã – xác thực người sử dụng có quyền đăng nhập hệ
thống. Kết nối này sẽ được sử dụng để Server xác thực Client.

5, Ưu điểm của SSH


Lý do khiến nhiều người lựa chọn sử dụng giao thức này xuất phát từ những ưu điểm
vượt trội của SSH so với các giao thức khác. SSH có khả năng mã hóa và truyền tải
dữ liệu an toàn giữa mạng lưới host và client. Host đại diện cho máy chủ từ xa bạn
muốn kết nối tới và client là máy tính của bạn dùng để truy cập tới host.

8
Hình 5

Lợi thế thứ hai là có nhiều cách khác nhau giúp việc mã hóa qua SSH được thực hiện
hiệu quả và toàn vẹn như:

Symmetrical encryption.

Asymmetrical encryption.

Hashing

6, Các lệnh phổ biến trong SSH


1. ls

– Lệnh này được sử dụng để liệt kê tất cả các tệp và thư mục. gợi ý là nên sử dụng
lệnh với tùy chọn -l, và ta có lệnh ls -l, theo cách này, tất cả các tệp sẽ được liệt kê
thuận tiện hơn, và bạn cũng sẽ có thêm chi tiết / thông tin về chúng. một tùy chọn
hữu ích khác là -a, option cũng giúp hiển thị tất cả các tệp, bao gồm cả các tệp / thư
mục ẩn (các tệp có dấu “.” ở trước, ví dụ: .ssh directory).

2. cd

– Lệnh này được sử dụng để “di chuyển” giữa các thư mục (cd là viết tắt của ”
change directory”). sau khi liệt kê tất cả các tập tin và thư mục với ls, bạn có thể chọn
một thư mục để “chuyển” đến. ví dụ: giả sử có một directory home mà bạn muốn

9
nhập. thực hiện nhập lệnh cd home và bạn sẽ ngay lập tức thay đổi vị trí hiện tại
thành “home”. bạn có thể thử dùng lại lệnh ls để kiểm chứng rằng thông tin xuất ra
màn hình đã được thay đổi. hoặc bạn cũng có thể điền một đường dẫn đầy đủ tới một
thư mục nhất định trong trường hợp muốn đi sâu vào một thư mục nhiều cấp độ. ví
dụ: bạn có thể sử dụng: cd home / testdirectory / anotherdirectory để tới thẳng thư
mục có tên anotherdirectory. sử dụng lệnh cd .. (gồm dấu cách và hai dấu chấm sau
cd) để di chuyển lên một cấp (trong ví dụ này chúng ta sẽ tới “testdirectory” từ
“anotherdirectory”).

3. mkdir

– Đây là lệnh được sử dụng để tạo một thư mục mới (viết tắt của “make directory”).
bạn sẽ có ngay một thư mục mới với tên đã chọn, ví dụ mkdir newfolder sẽ tạo một
thư mục mới với tên “newfolder” trong thư mục hiện hành (thư mục hiện tại đang
thao tác).

4. touch

– Lệnh touch sẽ tạo tệp mới với phần đuôi chỉ định. ví dụ, touch newfile.txt sẽ tạo
một tệp txt mới có tên là “newfile” trong thư mục hiện hành (phần đuôi có thể đặt tên
tùy ý, thậm chí bạn có thể tạo một tệp mới mà không cần thêm phần đuôi, ví dụ:
touch newfile.

5. rm

– Được sử dụng để xóa tệp / thư mục đã chọn. ví dụ: rm newfile sẽ xóa tệp có tên là
“newfile” đã tạo trước đó. nếu bạn muốn loại bỏ một thư mục và tất cả các thư mục
con bên trong, sử dụng rm -r newfolder để xóa thư mục “newfolder” và tất cả các thư
mục chứa bên trong nó.

6. cat

– Lệnh cat sẽ hiển thị nội dung của tập tin. ví dụ, dùng cat info.txt để xuất nội dung
tập tin lên màn hình. hoặc ví dụ khác: cat info.txt info2.txt> mergedinfo.txt sẽ hợp
nhất hai tệp “info.txt” và “info2.txt” với nhau và ghi nội dung đã hợp nhất vào tệp
“mergedinfo.txt”.
10
7. pwd

– Lệnh này sẽ hiển thị vị trí hiện tại của bạn trong hệ thống tệp. ví dụ, gõ pwd, kết
quả trả về có thể là như sau: “home/user/public_html”.

8. cp

– Lệnh này được sử dụng để sao chép các tập tin và thư mục.

7, Các kỹ thuật mã hóa SSH


1.1 SSH Symmetrical Encryption

Symmetric encryption là một dạng mã hóa sử dụng secret key (chìa khóa bí mật) ở cả
2 chiều mã hóa và giải mã tin nhắn bởi cả host và client. Điều này có nghĩa là bất kỳ
ai nắm được khóa đều có thể giải mã tin nhắn trong quá trình chuyền.

Nguyên tắc hoạt động của Symmetrical Encryption là cả client và server tạo chung
một key bí mật và key đó không được tiết lộ cho bên thứ ba. Quá trình tạo symmetric
key được thực hiện bởi key exchange algorithm. Key đó được dùng như chìa khóa mã
hóa cho cả hai đầu kết nối.

Hình 6
Điều khiến cho thuật toán này an toàn là vì key không được truyền giữa client và
host. Thay vào đó, cả 2 máy tính chia sẽ thông tin chung và sau đó sử dụng chúng để
11
tính ra khóa bí mật. Vì vậy, kể cả có máy khác bắt được thông tin chung, nó cũng
không thể tính ra key bí mật vì không biết được thuật toán tạo key.

1.2 SSH Asymmetrical Encrytion

Asymmetrical encryption sử dụng 2 khóa khác nhau để mã hóa và giải mã. 2 khóa
này được gọi là public key và private key. Cả 2 hình thành nên một cặp khóa là
public-private key pair. Trong đó, khóa public sẽ được công khai cho tất cả các bên
liên quan còn private key phải luôn luôn được đảm bảo an toàn.

Asymmetrical Encrytion chỉ được sử dụng trong quá trình trao đổi thuật toán của
khóa của symmetric encryption. trước khi bắt đầu một phiên giao dịch an toàn. Sau
khi kết nối symmetrict an toàn đã được thiết lập, server sử dụng public key của client
để tạo và challenge và truyền nó tới client để chứng thực. Nếu client có thể giải mã
tin nhắn, có nghĩa là nó đang giữ đúng private key cần thiết cho kết nối.

1.3 SSH Hashing

Hash một chiều khác với cả 2 phương thức mã hóa trên ở chỗ nó không được sinh ra
để giải mã. Thay vào đó, nó tạo ra một giá trị duy nhất với độ dài nhất định cho mỗi
lần nhập liệu mà không có hướng nào khác để khai thác.

Vì vậy, SSH sử dụng hashes để xác nhận tính xác thực của tin nhắn. Nó được thực
hiện bởi HMACs. Việc này đảm bảo lệnh không bị giả mạo bởi bất kỳ phương thức
nào.

8, Giai đoạn thiết lập kết nối của SSH


B1.Máy tính người dùng gửi yêu cầu kết nối đến máy chủ SSH bằng cách gõ lệnh kết
nối SSH và cung cấp tên đăng nhập và mật khẩu hoặc khóa riêng tư của người dùng
(nếu được sử dụng).

B2.Máy chủ SSH sẽ kiểm tra thông tin đăng nhập hoặc khóa riêng tư và gửi yêu cầu
đến máy tính người dùng để xác thực danh tính.

B3.Máy tính người dùng sẽ sử dụng khóa riêng tư (nếu được sử dụng) hoặc mật khẩu
để xác thực danh tính và gửi lại thông tin xác thực đến máy chủ SSH.

12
B4.Máy chủ SSH sẽ kiểm tra thông tin xác thực và nếu thành công, sẽ gửi lại một
thông điệp chứa khóa công khai đến máy tính người dùng.

B5.Máy tính người dùng sẽ sử dụng khóa công khai của máy chủ SSH để tạo ra một
session key và gửi lại cho máy chủ SSH.

B6.Máy chủ SSH sử dụng khóa riêng tư của mình để giải mã session key và sử dụng
session key đó để mã hóa và giải mã dữ liệu truyền qua mạng giữa máy tính người
dùng và máy chủ SSH.

V, Cài đặt server SSH trên Ubuntu 22.04


Mở một terminal mới (Ctrl + Alt + T) và nhập lệnh sau:

sudo apt-get update

Hình 7

Sau đó mở một dòng lệnh mới và nhập

sudo apt-get install openssh-server

13
Hình 8

Sau khi install OpenSSH, SSH server sẽ chạy. Nhưng để kiểm tra, chỉ cần mở một
terminal và chạy:
sudo service ssh status

Hình 9

14
Và để ngăn SSH chạy, hãy nhập:
sudo service ssh stop

Để khởi động SSH, hãy mở một dòng lệnh và nhập:


sudo service ssh start

Cấu hình cài đặt SSH cho server


sudo nano /etc/ssh/sshd_config

Hình 10
Cho phép cổng 22 nếu tường lửa chặn

15
Hình 11

VI, Kết nối SSH từ Window


Cách 1: Do Window không tích hợp SSH Command nên người dùng phải tải về các
mã nguồn mở hay ứng dụng đóng vai trò là “bên thứ ba”. Bạn có thể sử dụng PuTTy
và ZOC7 để kết nối trên Window.

PuTTy là một phần mềm dùng để điều khiển server thông qua mạng Internet. Để kết
nối thành công với PuTTy, bạn thực hiện theo các bước sau

Bước 1: Tải về PuTTy

Hình 12

16
Bước 2: Khởi động chương trình PuTTy vừa cài đặt

Bước 3: Nhập thông tin server cần điều khiển

Hình 13
Bước 4: Nhập thông tin username và password

17
Hình 14

Kiểm tra lại xem đã đăng nhập đúng vào Ubuntu chưa

Hình 15

18
Trong quá trình kết nối, bạn cần lưu ý độ tương thích giữa các thông số. Đặc biệt lưu
ý số cổng trong khung Port và số cổng SSH Server yêu cầu. Ngoài ra, người dùng sẽ
nhận được các cảnh báo bảo mật. Nếu đây là lần đầu tiên sử dụng, bạn có thể click
vào YES và tiếp tục. Nếu bạn đã từng truy cập, hãy cẩn thận vì đây có thể là một SSH
Server độc hại.

Ngoài ra chúng ta có thể dùng powershell trên window


Mở powershell với quyền administrator
Gõ lệnh với username và địa chỉ ip của ssh server
ssh [username]@[IP address of Ubuntu machine]
Sau đó nhập mật khẩu và đây là kết quả

Hình 16
19
Cách 2:
Bước 1: Kiểm tra kết nối
Để kết nối với máy chủ Ubuntu của bạn qua mạng LAN, hãy gọi lệnh ssh và theo sau
là tên người dùng và địa chỉ IP ở định dạng sau.
# ssh username@ip_address
Đảm bảo bạn thay đổi username bằng tên người dùng thực và ip_address bằng Địa
chỉ IP của máy chủ Ubuntu nơi bạn đã cài đặt SSH.

Hình 17
Nếu bạn không biết địa chỉ IP của mình, bạn có thể dễ dàng tìm thấy nó bằng lệnh
sau.
ip a hoặc lệnh ip addr show

Hình 18
Bước 2: Tạo key
Trên cửa sổ cmd của windows gõ lệnh:
ssh-keygen
20
Hình 19

Lập tức trên terminal xuất hiện một số yêu cầu sau:
Enter file in which to save the key (C:\Users\UyenNguyen/.ssh/id_rsa):
Bạn sẽ điền tên của file key. Thư mục lưu trữ file key đó là thư mục C:\Users\
UyenNguyen/.ssh/id_rsa. Nếu bạn không nhập bất cứ gì, tên file sẽ mặc định là
id_rsa.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Tiếp theo là passpharase cho key. Bước này sẽ tạo thêm mật khẩu để xác thực cho
key. Nếu không muốn nhập mật khẩu, nhấn Enter để bỏ qua.
Bước 3: Sao chép public key tới máy chủ
Trên máy chủ Ubuntu, bạn tiến hành tạo các thư mục như sau:
cd /root
mkdir .ssh
chmod 700 .ssh
cd .ssh
touch authorized_keys
chmod 600 authorized_keys
Tại file authorized_keys, bạn tiến hành ghi tiếp vào cuối file dữ liệu public key, sau
đó save lại, bạn đã hoàn tất quá trình copy key.
Lưu ý: để cho tiện việc copy, bạn nên thao tác trên cửa sổ cmd bằng cách ssh bằng
mật khẩu tới server. Trên cửa sổ cmd, bạn tiến hành paste bằng cách nhấn chuột phải.

21
Bước 4: Tiến hành đăng nhập
Sau khi thực hiện copy public key, bạn có thể tiến hành kết nối mà máy không yêu
cầu nhập mật khẩu như sau:
ssh <người dùng>@<địa chỉ ip>

Hình 20

Bước 5: Tắt tính năng đăng nhập bằng mật khẩu


Để hoàn toàn chỉ có thể đăng nhập bằng key, bạn phải tắt tính năng đăng nhập bằng
mật khẩu tại file config của nó. Tại cửa sổ terminal của máy chủ ta gõ:
vi /etc/ssh/sshd_config
Trong file đó, tìm đến dòng PasswordAuthentication và đổi nó thành NO.
...
PasswordAuthentication no
...
Sau đó gõ ESC -> để thoát ra ngoài. Tiến hành restart lại sshd:
sudo systemctl restart sshd.service

22
Hình 21

23

You might also like