SSH là gì? tương tác giữa máy chủ và máy khách ra sao?

ssh là gì

SSH là gì?

ssh (tiếng anh: secure shell) là một giao thức mạng dùng để thiết lập kết nối mạng một cách bảo mật. ssh hoạt động ở lớp trên trong mô hình phân lớp tcp/ip. các công cụ ssh (như là openssh,…) cung cấp cho người dùng cách thức để thiết lập kết nối mạng được mã hoá để tạo một kênh kết nối riêng tư. hơn nữa tính năng tunneling của các công cụ này cho phép chuyển tải các giao vận theo các giao thức khác. do vậy có thể thấy khi xây dựng một hệ thống mạng dựa trên ssh, chúng ta sẽ có một hệ thống mạng riêng ảo vpn đơn giản.

ssh là một chương trình tương tác giữa máy chủ và máy khách có sử dụng cơ chế mã hoá đủ mạnh 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. các chương trình trước đây: telnet, rlogin không sử dụng phương pháp mã hoá. vì thế bất cứ ai cũng có thể nghe trộm thậm chí đọc được toàn bộ nội dung của phiên làm việc bằng cách sử dụng một số công cụ đơn giản. sử dụng ssh là biện pháp hữu hiệu bảo mật dữ liệu trên đường truyền từ hệ thống này đến hệ thống khác.

cách thức làm việc của ssh

ssh làm việc thông qua 3 bước đơn giản:

định danh host – xác định định danh của hệ thống tham gia phiên làm việc ssh.
mã hoá – thiết lập kênh làm việc mã hoá.
chứng thực – xác thực người sử dụng có quyền đăng nhập hệ thống.
định danh host

việc định danh host được thực hiện qua việc trao đổi khoá. mỗi máy tính có hỗ trợ kiểu truyền thông ssh có một khoá định danh duy nhất. khoá này gồm hai thành phần: khoá riêng và khoá công cộng. khoá công cộng được sử dụng khi cần trao đổi giữa các máy chủ với nhau trong phiên làm việc ssh, dữ liệu sẽ được mã hoá bằng khoá riêng và chỉ có thể giải mã bằng khoá công khai. khi có sự thay đổi về cấu hình trên máy chủ: thay đổi chương trình ssh, thay đổi cơ bản trong hệ điều hành, khoá định danh cũng sẽ thay đổi. khi đó mọi người sử dụng ssh để đăng nhập vào máy chủ này đều được cảnh báo về sự thay đổi này. khi hai hệ thống bắt đầu một phiên làm việc ssh, máy chủ sẽ gửi khoá công cộng của nó cho máy khách. máy khách sinh ra một khoá phiên ngẫu nhiên và mã hoá khoá này bằng khoá công cộng của máy chủ, sau đó gửi lại cho máy chủ. máy chủ sẽ giải mã khoá phiên này bằng khoá riêng của mình và nhận được khoá phiên. khoá phiên này sẽ là khoá sử dụng để trao đổi dữ liệu giữa hai máy. quá trình này được xem như các bước nhận diện máy chủ và máy khách.

mã hoá

sau khi hoàn tất việc thiết lập phiên làm việc bảo mật (trao đổi khoá, định danh), quá trình trao đổi dữ liệu diễn ra thông qua một bước trung gian đó là mã hoá/giải mã. điều đó có nghĩa là dữ liệu gửi/nhận trên đường truyền đều được mã hoá và giải mã theo cơ chế đã thoả thuận trước giữa máy chủ và máy khách. việc lựa chọn cơ chế mã hoá thường do máy khách quyết định. các cơ chế mã hoá thường được chọn bao gồm: 3des, idea, và blowfish. khi cơ chế mã hoá được lựa chọn, máy chủ và máy khách trao đổi khoá mã hoá cho nhau. việc trao đổi này cũng được bảo mật dựa trên đinh danh bí mật của các máy. kẻ tấn công khó có thể nghe trộm thông tin trao đổi trên đường truyền vì không biết được khoá mã hoá. các thuật toán mã hoá khác nhau và các ưu, nhược điểm của từng loại:

3des (cũng được biết như triple-des) — phương pháp mã hoá mặc định cho ssh.
idea—nhanh hơn 3des, nhưng chậm hơn arcfour và blowfish.
arcfour—nhanh, nhưng các vấn đề bảo mật đã được phát hiện.
blowfish—nhanh và bảo mật, nhưng các phương pháp mã hoá đang được cải tiến.
chứng thực

việc chứng thực là bước cuối cùng trong ba bước, và là bước đa dạng nhất. tại thời điểm này, kênh trao đổi bản thân nó đã được bảo mật. mỗi định danh và truy nhập của người sử dụng có thể được cung cấp theo rất nhiều cách khác nhau. chẳng hạn, kiểu chứng thực rhosts có thể được sử dụng, nhưng không phải là mặc định; nó đơn giản chỉ kiểm tra định danh của máy khách được liệt kê trong file rhost (theo dns và địa chỉ ip). việc chứng thực mật khẩu là một cách rất thông dụng để định danh người sử dụng, nhưng ngoài ra cũng có các cách khác: chứng thực rsa, sử dụng ssh-keygen và ssh-agent để chứng thực các cặp khoá.

SSH là gì

ssh, hoặc được gọi là secure shell, là một giao thức điều khiển từ xa cho phép người dùng kiểm soát và chỉnh sửa server từ xa qua internet. dịch vụ được tạo ra nhằm thay thế cho trình telnet vốn không có mã hóa và sử dụng kỹ thuật cryptographic để đảm bảo tất cả giao tiếp gửi tới và gửi từ server từ xa diễn ra trong tình trạng mã hóa. nó cung cấp thuật toán để chứng thực người dùng từ xa, chuyển input từ client tới host, và relay kết quả trả về tới khách hàng.

hình bên dưới thể hiện một giao diện windows ssh điển hình. bất kể user linux hoặc macos nào cugn4 đều có thể ssh tới server từ xa trực tiếp từ cửa sổ terminal. windows users có thể sử dụng những ssh clients như là putty. bạn có thể thực thi lệnh shell cũng như việc bạn đang thực sự vận hành máy tính vật lý.

Shell snapshot

bạn đã biết ssh là gì vậy hãy tiếp tục tìm hiểu về cách thức hoạt động của ssh,bên cạnh việc tìm hiểu về công nghệ được sử dụng để đảm bảo tính an toàn cho các kết nối từ xa. nó sẽ gồm nhiều lớp và loại mã hóa được sử dụng, tùy thuộc vào mục đích của từng layer.

ssh hoạt động như thế nào
để hiểu ssh là gì thì trước tiên bạn cần phải biết nó hoạt động như thế nào. nếu bạn đang sử dụng linux hoặc mac, sử dụng ssh rất đơn giản. nếu bạn sử dụng windows, bạn chỉ cần sử dụng những ssh client để mở kết nối ssh. những trình ssh client phổ biến là putty, bạn có thể xem thêm tại đây.

đối với người dùng xài mac và linux, hãy mở terminal và làm theo hướng dẫn sau:

lệnh ssh có 3 phần:

ssh {user}@{host}
ssh key command cho hệ thống biết là bạn muốn mở một kết nối được mã hóa secure shell connection. {user} đại diện cho tài khoản người dùng bạn muốn dùng để truy cập. ví dụ, bạn muốn truy cập user root, thì thay root tại đây. user root là user quản trị hệ thống với toàn quyền để chỉnh sửa bất kỳ điều gì trên hệ thống. {host} đại diện cho máy tính bạn muốn dùng để truy cập. nó có thể là một địa chỉ ip (ví dụ 244.235.23.19) hoặc một tên miền (ví dụ, www.xyzdomain.com).

khi bạn nhấn enter, nó sẽ hỏi bạn nhập mật khẩu tương ứng cho tài khoản. khi bạn gõ, bạn sẽ không thấy bất kỳ dấu hiệu nào trên màn hình, nhưng nếu bạn gõ đúng mật khẩu và nhấn enter, bạn sẽ vào được hệ thống và nhận thông báo đăng nhập thành công.

Lệnh SSH là gì?

hiểu về nhiều kỹ thuật mã hóa khác nhau lợi điểm khiến ssh hơn hẵn những giao thức cũ là khả năng mã hóa và truyền tải dữ liệu an toàn giữa 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. có 3 cách khác nhau để mã hóa qua ssh:

  • symmetrical encryption
  • asymmetrical encryption
  • hashing.
  • symmetric encryption

symmetric encryption là một dạng mã hóa sử dụng secret key ở cả 2 chiều mã hóa và giải mã tin nhắnb bởi cả host và client. có nghĩa là ai nắm được khóa đều có thể giải mã tin nhắn trong quá trình chuyền.

Hướng dẫn sử dụng ssh là gì symmetric encryption

symmetrical encryption thường được gọi là shared key hoặc shared secret encryption. vì có một khóa được sử dụng, hoặc một cặp khóa (pair key) mà một khóa có thể được tính ra từ khóa kia.

symmetric keys được sử dụng để mã hóa toàn bộ liên lạc trong phiên giao dịch ssh. cả client và server tạo chung một key bí mật như là một phương thức thỏa thuận, 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.

điều khiến cho thuật toán 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 để tính ra khóa bí mật.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.

cũng phải lưu ý rằng, tuy nhiên secret token được sử dụng cho một phiên ssh nhất định, và được tạo bởi chứng thực của client. khi key đã được tạo, tất cả packets truyền giữa 2 máy phải được mã hóa bởi private key. việc này bao gồm cả mật khẩu điền vào bởi user, vì vậy mật khẩu cũng có thể được bảo vệ khỏi những “lính bắn tỉa packet” trên mạng.

một số loại symmetrical encryption ciphers đã tồn tại, bao gồm, những không giới hạn aes (advanced encryption standard), cast128, blowfish etc. trước khi thiết lập kết nối an toàn client và host sẽ đồng ý loại cipher nào được sử dụng, bằng cách xuất bản danh sách cyphers được hỗ trợ để tham khảo. cypher thích hợp nhất ở phía client sẽ hiển thị trong danh sách của host như là một bidirectional cypher.

ví dụ, nếu 2 máy ubuntu 14.04 lts liên lạc với nhau qua ssh, nó sẽ sử dụng aes128-ctr làm cipher mặc định.

Asymmetric encryption: không giống với symmetrical encryption, 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.

Asymmetric encryption

khóa public, như tên gọi của nó sẽ được công khai cho tất cả các bên liên quan. mặc dù nó liên quan mật thiết đến private key về chức năng, nhưng private key không thể được tính toán ra từ một public key. sự liên quan này rất phức tạp: thư được mã hóa bởi public key của một máy, và chỉ có thể được giải mã bởi private key của chính máy đó. sự liên quan một chiều này có nghĩa là public key không thể giải mã chính thư của nó, hoặc không thể giải mã bất kỳ thứ gì được mã hóa bằng private key.

private key phải luôn luôn được đảm bảo an toàn, ví dụ, kết nối an toàn, không có bên thứ 3 biết. sức mạnh của cả chu trình kết nối phụ thuộc vào việc private key có bị tiết lộ hay không, vì chỉ có nó mới có khả năng giải mã thư được truyền đi mà được mã hóa bởi public key. vì vậy, bất kỳ bên nào có thể giải mã thư được ký bởi public key có nghĩa là bên đó đang sở hữu private key tương ứng.

không giống với quan niệm thông thường, asymmetrical encryption không được dùng để mã hóa toàn bộ phiên ssh. thay vào đó, nó 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, cả 2 đồng ý tạo ra một cặp public-private key tạm, chia sẽ private keys để tạo một khóa secret key chung.

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ữa đúng private key cần thiết cho kết nối. phiên giao dịch ssh bắt đầu.

hashing

hashing một chiều là một dạng mã hóa khác sử dụng trong secure shell connections. 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ã. chúng 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. điều này khiến nó dường như không thể quay ngược lại giải mã.

hướng dẫn sử dụng ssh, hash một chiều

rất dễ để tạo một cryptographic hash từ một lần input, nhưng không thể tạo ra lần input đó từ một hash. có nghĩa là nếu client giữ đúng input đó, client có thể tạo ra một crypto-graphic hash giống như vậy và so sánh nó với giá trị ở đầu bên kia để xác định cả 2 bên nhập giống input.

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, hoặc hash-based message authentication codes. 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.

trong khi thuật toán symmetrical encryption được chọn, một thuật toán xác thực tin nhắn phù hợp cũng được chọn. nó hoạt động tương tự việc cipher được chọn như thế nào, như bên trên mình đã giải thích trong phần symmetric encryption.

mỗi tin nhắn được truyền đi phải chứa mac, được tính bởi symmetric key, packet sequence number, và nội dung tin nhắn. nó truyền ra ngoài một gói dữ liệu được mã hóa symmetric như là một phần của communication packet.

ssh xử lý như thế nào với những kỹ thuật này

sau khi bạn đã biết ssh là gì và biết các loại mã hóa, chúng ta đi tiếp về việc nó hoạt động như thế nào. ssh hoạt động bằng mô hình client-server cho phép chứng thực an toàn giữa 2 máy từ xa và mã hóa dữ liệu được truyền giữa chúng.

ssh vận hành trên tcp port 22 mặc định (có thể được thay đổi nếu cần). host (server) nghe port 22 (hoặc bất kỳ port nào ssh được gán vào) cho nhưng kết nối tới. nó sẽ thiết lập kết nối an toàn khi chứng thực giữa client và môi trường shell đang mở thành công.

ssh client và server

client phải bắt đầu kết nối ssh bằng cách tạo ra tcp handshake với server, đảm bảo có thể thiết lập kết nối symmetric, xác thực thông tin của server có khớp dữ liệu cũ không (thông thường được trong rsa key store file), và so sánh thông tin đăng nhập của user kết nối để xác thực đúng kết nối.

có 2 giai đoạn để thiết lập kết nối: trước tiên cả 2 bên đồng ý chuẩn mã hóa để bảo vệ giao tiếp trong tương, thừ 2, user phải được xác thực. nếu thông tin đăng nhập khớp, user có quyền truy cập.

session encryption negotiation
khi client cố kết nối tới server qua tcp, server sẽ trình ra encrytpion protocal và những phiên bản liên quan nó hỗ trợ. nếu client cũng có protocol tương ứng và phiên bản đúng như vậy, một thỏa thuật sẽ được đặt ra và kết nối bát đầu tiếp nhận protocol. server cũng sử dụng một symmetric public key mà client có thể dùng để xác thực tính chính xác của server.

khi đã được thiết lập, cả 2 bên sử dụng một thuật toán được biết là diffie-hellman key exchange algorithm để tạo symmetrical key. thuật toán này cho phép cả client và server có cùng một key chung được dùng để mã hóa toàn bộ liên lạc sau này.

đây là cách thuật oán hoạt động về cơ bản:

cả client và server đồng ý dựa trên một số nguyên lớn, dĩ nhiên là không có bất kỳ tính chất chung nào. số này được gọi là seed value.
tiếp theo, cả 2 bên đồng ý một cách mã hóa được tạo ra từ seed value bằng một dạng thuật toán nhất định. những cơ chế này là nguồn tạo mã hóa, hoạt đông lớn trên seed value. ví dụ như là generator llà aes (advanced encryption standard).
cả 2 bên độc lập tạo một số khác. nó được dùng như là một private key bí mật cho tương tác.
key private mới tạo này, với số chung và thuật toán mã hóa ở trên (aes) được dùng để tạo ra một key public được phân phối cho máy còn lại.
2 bên sau đó sử dụng private key của chính nó, public key của máy còn lại và số nguyên ban đầu để tạo ra một key chung cuối cùng. key này độc lập được tính toán bởi cả 2 máy nhưng sẽ tạo ra một key mã hóa giống nhau trên cả 2.
bây giờ cả 2 đã có shared key, chúng có thể tạo mã hóa symmetric cho cả phiên ssh. một key chung được sử dung để mã hóa và giải mã tin nhắn (đọc lại mục: symmetrical encryption).
bây giờ phiên giao dịch được mã hóa symmetric đã được thiết lập, chứng thực cho user sẽ được tiến hành.

chứng thực người dùng
bước cuối là khi user được cấp quyền truy cập vào server xác thực chính thông tin đang nhập đó. để làm vậy, hầu hết ssh user sử dụng mật khẩu. người dùng được hỏi để nhập username, tiếp theo là mật khẩu. những thông tin đăng nhập này được chuyển an toàn qua một đường hầm bảo mật symmetric, vì vậy không có cách nào chúng bị lấy cắp từ bên thứ 3.

mặc dù mật khẩu đã được mã hóa, chúng tôi vẫn không khuyên sử dụng mật khẩu để thiết lập kết nối. lý do là vì bằng thủ thuật tấn công brute fore, mật khẩu mặc định hoặc dễ đoán có thể được lần ra và bạn sẽ bị chiếm quyền tài khoản. vì vậy, cách tốt nhất là sử dụng ssh key pairs.

đây là một bộ khóa asymmetric được dùng để chứng thực thành viên mà không đòi hỏi phải nhập mật khẩu.

hiểu rõ về ssh là gì và làm thế nào ssh hoạt động được có thể giúp bạn hiểu thêm về công nghệ bảo mật. hầu hết mọi người tưởng quá trình này là phức tạp và không tài nào hiểu nổi, nhưng nó đơn giản hơn mọi người nghĩ nhiều. nếu bạn không biết một máy tính mất bao lâu để tính ra một hash và chứng thực user, thì trên thực tế nó chỉ mất ít hơn một giây. lượng thời gian trên internet chủ yếu là do việc truyền dữ liệu từ xa.

hy vọng với bài hướng dẫn ssh này, chúng tôi đã giúp bạn có cái nhìn khác về công nghệ và nó là thành tố chính để bạn tạo một hệ thống mạnh mẽ và bảo mật. cũng vì lẽ đó, bạn đã hiểu vì sao telnet đã là quá khứ và vì sao ssh đã chiếm lấy mọi chỗ đứng của nó.

để biết thêm về thủ thuật linux, hãy xem qua khu vực hướng dẫn cho vps tutorials của chúng tôi

ssh (viết tắt của từ secure socket shell) là một giao thức mạng được sử dụng để đăng nhập vào một máy tính từ xa. chẳng hạn bạn có một máy tính ở nhà cài linux có cài ssh thì bạn có thể đăng nhập vào máy tính đó từ xa để quản lý dữ liệu. các dữ liệu mà bạn gửi đi hoặc nhận thông qua giao thức ssh sẽ đều được mã hóa lại để bảo mật thông tin an toàn hơn.

ssh là gì , đóng vai trò gì trong máy chủ linux

khi bạn mua một vps linux hoặc một máy chủ vật lý cài linux thì bạn sẽ có thông tin đăng nhập thông qua giao thức ssh gồm:

ip máy chủ
tên người dùng đăng nhập, đa phần là root
mật khẩu của người dùng, nếu tên người dùng của bạn là root thì mật khẩu này được gọi là mật khẩu root.
cổng giao tiếp: 22, mặc định ssh sử dụng cổng 22.
với các thông tin đó, bạn đã có thể đăng nhập vào máy chủ linux của bạn rồi.

cách đăng nhập vào máy chủ linux thông qua ssh
đăng nhập từ windows
nếu bạn đang sử dụng hệ điều hành windows trên máy tính của mình và muốn đăng nhập vào máy chủ linux thông qua ssh, bạn sẽ cần một phần mềm hỗ trợ làm việc này.

phần mềm thông dụng nhất đó là putty, bạn chỉ việc tải về và chạy là sẽ ra bảng đăng nhập vào máy chủ như hình dưới.

dang-nhap-vps-putty

dòng khoanh màu đỏ là bạn sẽ điền địa chỉ ip của máy chủ, port mặc định là 22, bạn chỉ sửa nếu bạn biết chắc máy chủ của mình sử dụng một cổng mạng khác.

đăng nhập từ linux/macos
nếu bạn sử dụng các hệ điều hành linux hoặc macos thì trên máy đã có sẵn công cụ terminal có thể chạy những lệnh unix. tại terminal, bạn sử dụng lệnh sau để đăng nhập:

ssh root@123.45.67.8
trong đó, root là tên người dùng trên máy chủ và 123.45.67.8 là địa chỉ ip của máy chủ. trường hợp bạn dùng một cổng mạng khác cổng 22 thì sẽ cần khai báo số cổng với tham số -p, ví dụ:

ssh root@123.45.67.8 -p 2222
cài đặt ssh trên linux
nếu bạn tự cài một hệ điều hành linux lên máy chủ(thường là máy chủ riêng) thì thường là mặc định trong hệ điều hành không có cài sẵn ssh. do đó, bạn cần cài giao thức ssh vào máy.

đối với rhel/centos

yum -y install openssh-server openssh-clients
chkconfig sshd on
service sshd start
đối với ubuntu/debian

sudo apt install openssh-client
sudo apt install openssh-server

ssh là gì? ssh hoạt động như thế nào?
by chaupm- 10/09/2018

ssh là gì?
ssh còn được gọi là secure socket shell, là một giao thức mạng cho phép quản trị viên truy cập một máy tính từ xa một cách an toàn, bảo mật. ssh còn được coi như 1 bộ tiện ích dùng để thực hiện các giao thức. secure shell cung cấp khả năng xác thực và bảo mật mạnh mẽ các dữ liệu được mã hóa giữa hai máy tính và 2 máy tính này thường kết nối với nhau thông qua một mạng không có tính bảo mật cao như internet. làm được như vậy là nhờ ssh sử dụng kỹ thuật cryptographic để đảm bảo tất cả giao tiếp gửi tới và gửi từ server từ xa diễn ra trong tình trạng mã hóa. ssh dùng khóa mã hóa công khai để xác thực máy tính từ xa và cho phép máy tính từ xa xác thực người dùng, nếu cần.

ssh là gì? ssh hoạt động như thế nào? – ảnh 1.
các giao thức thực hiện qua ssh được bảo mật

ssh được các quản trị viên mạng sử dụng rộng rãi để quản lý các hệ thống và ứng dụng từ xa, cho phép họ đăng nhập vào một máy tính khác qua mạng, thực thi lệnh và di chuyển các tệp từ máy tính này sang máy tính khác.

ssh hoạt động như thế nào?
nếu bạn đang chạy nền tảng linux hoặc mac thì việc sử dụng ssh sẽ tương đối đơn giản. còn nếu đang dùng windows, bạn sẽ cần sử dụng một ssh client để mở các kết nối ssh. ssh client phổ biến nhất hiện nay là putty.

ssh không có một giao diện đồ họa như cpanel mà giống như một trình thông dịch dòng lệnh như command prompt trong phần lớn các bản phân phối windows. bạn có thể truy cập trực tiếp vào máy chủ trong một môi trường bảo mật.

đối với người dùng mac và linux, bạn chuyển sang chương trình terminal và có thể thao tác trực tiếp từ terminal:

lệnh ssh bao gồm 3 phần riêng biệt như sau
ssh {user}@{host}

ssh key command cho hệ thống biết rằng bạn muốn mở một kết nối secure shell. {user} chính là tài khoản bạn muốn truy cập. ví dụ, bạn muốn truy cập vào root user hay tài khoản quản trị với toàn quyền trên hệ thống, có khả năng chỉnh sửa bất cứ thông tin gì, bạn nhập vào tài khoản tại đây. {host} cho biết máy tính bạn muốn truy cập. đó có thể là 1 địa chỉ ip (ví dụ: 244.235.23.19) hoặc 1 tên miền (ví dụ: www.xyzdomain.com).

nhấn enter, bạn sẽ được nhắc nhập mật khẩu cho tài khoản bạn yêu cầu. trong quá trình nhập, sẽ không có ký tự nào xuất hiện trên màn hình, nhưng trên thực tế mật khẩu đã được truyền đi. sau khi nhập xong, nhấn enter một lần nữa. nếu mật khẩu chính xác, một cửa sổ terminal sẽ hiện ra.

một số lệnh ssh phố biến
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).

  1. 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 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”).
  2. 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).
  3. 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.
  4. 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ó.
  5. 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”.
  6. 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”.
  7. cp
    lệnh này được sử dụng để sao chép các tập tin và thư mục.

cú pháp là: cp [options] source dest

để sao chép, bạn gõ file muốn copy thay cho source, thay dest bằng đường dẫn bạn muốn copy tới (đường dẫn có dạng path/folder/file). nếu bạn gõ một tên đích không tồn tại, ví dụ, bạn có tệp gôc là oldfile.txt và tệp đích là newfile.txt, bạn sẽ đơn giản là copy tệp oldfile.txt và dán nó vào thư mục hiện tại bằng tên mới.

  1. mv
    lệnh này hoạt động giống như lệnh cp, nhưng thay vì copy, command này sẽ di chuyển các file. lệnh này cũng có thể được sử dụng để đổi tên tệp. nếu lấy 1 ví dụ tương tự với lệnh cp, (trong thư mục hiện tại đang có một tệp oldfile.txt), khi gõ lệnh: mv oldfile.txt newfile.txt, kết quả file oldfile.txt sẽ được dổi tên thành newfile.txt.
  2. grep
    command này tìm kiếm chuỗi đã cho trong các file / folder. ví dụ: grep ‘word’ file sẽ tìm kiếm cụm từ ‘word’ trong file có tên là “file”. grep sẽ trả về toàn bộ các dòng có chứa “word” từ file nếu cụm từ được tìm thấy. ví dụ, có một dòng ‘all in all it’s just another word in a sentence ‘ trong tệp tên “file”, sử dụng lệnh grep ‘word’, dòng này sẽ được xuất ra màn hình vì có chứa từ cần tìm.
  3. find
    lệnh này sẽ tìm kiếm các thư mục cho một hay nhiều file đáp ứng các tiêu chuẩn nhất định (tên, kích thước, loại tệp). ví dụ: find. -name “* .html” lệnh này sẽ xuất tất cả các tệp trong thư mục hiện tại có phần đuôi là “.html” (chú ý cách sử dụng ký tự “*” trong lệnh, đó là ký tự đại diện cho biết rằng bất kỳ thông tin gì trước “. html” cũng sẽ được tìm kiếm chỉ cần file đó kết thúc bằng “.html”.
  4. vi / nano
    lệnh này được sử dụng để nhập và chỉnh sửa nội dung văn bản. ví dụ: nano newfile sẽ tạo một tệp mới có tên là “newfile” và khởi động trình chỉnh sửa nano hoặc chỉnh sửa tệp đã tồn tại có tên là “newfile” bằng trình chỉnh sửa nano. lệnh vi cũng tương tự như vậy, khởi động một trình soạn thảo khác có tên là “vi”.
  5. history
    lệnh sẽ hiển thị các lệnh được sử dụng cuối cùng. ví dụ: history 20 sẽ hiển thị ra 20 lệnh được nhập cuối cùng trong terminal.
  6. clear
    lệnh dùng để xóa tất cả văn bản khỏi màn hình terminal.
  7. tar
    lệnh này được sử dụng để tạo hoặc trích xuất các tệp lưu trữ tar.gz. hầu hết các phần mềm nhị phân của nhà cung cấp bên thứ 3 đều ở dạng lưu trữ tar.gz.

– để tạo lưu trữ tar.gz của một thư mục, sử dụng lệnh:

tar cvzf archivename.tar.gz/path/to/directory

– để giải nén các tệp này, sử dụng lệnh:

tar xvzf filename.tar.gz

diễn giải thành phần lệnh như sau:

x yêu cầu tar trích xuất tệp

c cho tar biết cần tạo một kho lưu trữ

v là viết tắt của verbose tức là tar sẽ in ra tất cả các tên tệp trong bảng điều khiển.

z chỉ thị tar để giải nén lưu trữ

f cho tar biết rằng bạn đang cung cấp tên tệp của tệp lưu trữ

  1. wgetis
    được sử dụng để tải xuống các tệp từ internet. ví dụ: để tìm tải tệp từ internet và lưu trữ tệp trong thư mục hiện tại, sử dụng lệnh:

wget http://fileurl/filename.ext

  1. du
    được sử dụng để tìm size của một tệp. sử dụng du -h/filepath để xác định 1 tệp nào đó chiếm bao nhiêu không gian.

 

Leave a Reply

Your email address will not be published. Required fields are marked *

Hotline