Câu trả lời:
SSH mặc định xuất hiện trong tất cả các phiên bản Ubuntu để bạn tiết kiệm khi phải cài đặt nó (+1 vì đã có sẵn ở đó;))
Tất nhiên ngoại trừ trong trường hợp bạn muốn có máy chủ SSH cho máy chủ Ubuntu của mình. Trong trường hợp đó bạn sẽ
sudo apt-get install openssh-server
mà sẽ làm cho máy tính / máy chủ của bạn sẵn sàng trở thành một máy chủ ssh.
Để sử dụng nó khá dễ dàng:
ssh USER@SITE
ví dụ: nếu tên người dùng của tôi là cyrex và trang web là ubfox.com thì bạn sẽ làm điều này:
ssh cyrex@ubuntu.com
Bây giờ hãy nói rằng bạn muốn sao chép một tệp được gọi bubblegum.txt
từ máy tính của bạn vào trang web ubfox của bạn và muốn để lại tệp đó trong /var/www
thư mục trong trang web ubfox. bạn có thể làm điều này (giả sử người dùng của bạn có đủ quyền trong trang web ubfox) bằng cách sử dụng Brother, SCP của SSH (cũng được mặc định trong Ubuntu):
scp bubblegum.txt cyrex@ubuntu.com:/var/www
Lưu ý :
giữa USER @ SITE và thư mục mà bạn muốn sao chép nó. Nó là một trong những tách biệt cả hai yếu tố.
Bây giờ hãy nói rằng bạn đang tải lên một số tệp khổng lồ bằng scp và sau đó điều tồi tệ nhất xảy ra, thế giới bùng nổ. Làm thế nào bạn có thể tiếp tục tải tập tin đó lên máy chủ. Sau đó, bạn có người anh lớn của SCP, rsync (Được mặc định trong Ubuntu). Theo nhiều cách, scp và rsync làm điều tương tự nhưng đây là một số khác biệt lớn giữa chúng:
Dù sao, trong trường hợp scp không thể tải lên toàn bộ tệp, đây là lúc rsync xuất hiện để giải cứu. (Cảm ơn Marco Ceppi về tiền boa. Hãy bình luận nhận xét của anh ấy nếu bạn thích mèo .. và / hoặc chó)
Hãy nói rằng bạn đã tải lên đề cập ở trên từ scp và nó đã đạt tới 60%. Làm thế nào bạn có thể tiếp tục trong 60% đó mà không mất thời gian đáng để tải lên. Bạn sẽ làm điều này:
rsync --progress --partial bubblegum.txt cyrex@ubuntu.com:/var/www
Điều này nói với rsync để hiển thị tiến trình theo cách dễ đọc của con người với --progress
cờ. Nó cũng yêu cầu rsync kiểm tra và tiếp tục từ nơi tệp bubblegum.txt đến với --partial
cờ. Bạn cũng có thể đơn giản hóa số lượng để ghi với tham số -P giống như --propro và --partial, do đó, ở trên sẽ như sau:
rsync -P bubblegum.txt cyrex@ubuntu.com:/var/www
Bạn thậm chí có thể CTRL+ Ctải lên và tiếp tục nó bằng cách thực hiện lệnh từ rsync ở trên. Rất tuyệt vời để có khả năng tiếp tục một cái gì đó bất cứ lúc nào bất cứ lúc nào.
Để biết thêm thông tin về rsync theo mặc định với Ubuntu, bạn có thể nhập các lệnh đầu cuối sau:
man rsync
info rsync
rsync --help
Bây giờ để chỉ định một cổng cho SSH. Để chỉ định nó, bạn có thể làm như thế này:
ssh cyrex@ubuntu.com -p PORT
. Ví dụ: ssh cyrex@ubuntu.com -p 1234
để bảo nó sử dụng Cổng 1234 cho dịch vụ SSH. Điều này phải được cấu hình trong máy chủ trước để nó hoạt động.
Để cấu hình, chỉ cần mở trong máy chủ tệp ssh_config như thế này: nano /etc/ssh/ssh_config
và thay đổi dòng nói # port 22
với cổng khác. Cũng nhớ xóa bình luận từ dòng đó. Nó sẽ trông như thế này: port 1234
trong trường hợp ví dụ ở trên.
Bây giờ chỉ cần khởi động lại dịch vụ ssh trong máy chủ và bạn đã hoàn tất. Để khởi động lại dịch vụ, chỉ cần làm điều này:
sudo restart ssh
hoặc là
sudo /etc/init.d/ssh restart
LƯU Ý - Bạn cũng có thể sử dụng SSH từ các công cụ GUI như filezilla
cung cấp tùy chọn sử dụng ssh thay vì ftp. ssh cũng có thể được truy cập từ trong menu Ubuntu:
cho phép truy cập vào một số tùy chọn bao gồm Windows share, SSH và FTP :
Để biết thêm thông tin về SSH, bạn có thể sử dụng một trong các lệnh sau trong bảng điều khiển trong hộp Ubuntu của mình:
man ssh
info ssh
ssh --help
Nếu bạn muốn duyệt máy chủ thông qua Nautilus giống như bạn làm với các tệp trên máy cục bộ của mình:
Chuyển đến "Tệp" -> "Kết nối với máy chủ"
Chọn "SSH" trong "Loại dịch vụ"
Đặt địa chỉ IP hoặc tên miền trong "Máy chủ"
Thêm tên người dùng của bạn và kiểm tra "Thêm dấu trang" nếu bạn muốn vị trí được lưu vào dấu trang của bạn.
Các thư mục sẽ mở ngay cho bạn.
Bạn có thể sử dụng sshfs
để gắn một thư mục từ xa vào hệ thống tập tin cục bộ của bạn.
Xem https://help.ubfox.com/community/SSHFS :
Sử dụng dòng lệnh
Bây giờ, giả sử rằng bạn có máy chủ SSH chạy trên máy từ xa, chỉ cần chạy lệnh SSHFS để gắn thư mục từ xa. Trong ví dụ này, thư mục từ xa là / dự án trên máy chủ từ xa. Điểm gắn kết cục bộ là ~ / far_projects.
mkdir ~/far_projects
sshfs -o idmap=user $USER@far:/projects ~/far_projects
Để ngắt kết nối,
fusermount -u ~/far_projects
Để thêm nó vào / etc / fstab của bạn,
sshfs#$USER@far:/projects /home/$USER/far_projects fuse defaults,idmap=user 0 0
Lưu ý rằng bạn phải thay đổi $ USER thành tên đăng nhập của mình khi chỉnh sửa fstab, nhưng không cần thiết khi gõ lệnh (shell thực hiện cho bạn trong trường hợp đó).
Nếu bạn có thể sử dụng Vim, Pico hoặc vv, bạn có thể sử dụng thiết bị đầu cuối:
ssh MYUSER@mysite.com
Nhập mật khẩu của bạn và bạn đang ở. Từ đó, nó giống như một thiết bị đầu cuối thông thường, ngoại trừ bạn không có GUI.
Lưu ý, bạn có thể thêm tùy chọn '-X' và nếu máy chủ của bạn có máy chủ X được định cấu hình, bạn có thể chạy các chương trình GUI. Chỉ cần nhập tên của họ nếu bạn đã thêm -X và nó sẽ khởi chạy một cửa sổ GUI.
Bây giờ, bạn có thể sẽ muốn thiết lập đăng nhập không mật khẩu. Nếu bạn chưa có khóa, hãy nhập ssh-keygen
và chỉ cần nhấn enter cho tất cả các giá trị mặc định. Sau đó làm ssh-copy-id MYUSER@mysite.com
. Khi đã xong, chỉ cần nhập ssh MYUSER@mysite.com
và bạn không phải nhập mật khẩu của mình!
Nếu tên người dùng của bạn giống với tên người dùng máy tính xách tay của bạn, bạn không cần MYUSER@
. Bạn chỉ có thể làm ssh mysite.com
. Bạn cũng có thể sử dụng -l MYUSER
tùy chọn thay vìMYUSER@
Nếu bạn muốn có GUI, Nautilus có thể làm điều này. ->
Kết nối tệp với máy chủ ->
[chọn 'SSH', sau đó điền chi tiết đăng nhập] ->
Kết nối.
Nếu bạn chỉ muốn sao chép một tệp duy nhất, hãy sử dụng scp [sao chép an toàn].
scp MYUSER@mysite.com:path/to/file.dat ./
Điều này sao chép tệp "~ / path / to / file.dat" vào thư mục hiện tại của bạn. Lưu ý, nếu bạn không có dấu gạch chéo hoặc dấu ngã sau :
, nó sẽ hoạt động giống như bạn đang ở trong thư mục nhà của bạn [ ~/
]. Nếu bạn muốn tải lên, scp ./local_file.dat MYUSER@mysite.com:
Điều đó sẽ đặt nó trong thư mục nhà của bạn.
ssh -X -C user@host nautilus --no-desktop
đi trong chế độ gui :)