溫馨提示×

CentOS SSH命令行有哪些常用技巧

小樊
46
2025-10-06 21:06:57
欄目: 智能運維

在 CentOS 系統中,SSH 命令行是一個非常強大的工具,用于遠程管理和操作服務器。以下是一些常用的 SSH 命令行技巧:

1. 連接到遠程服務器

ssh username@hostname_or_ip
  • username 是你在遠程服務器上的用戶名。
  • hostname_or_ip 是遠程服務器的主機名或 IP 地址。

2. 使用密鑰認證

為了避免每次連接時輸入密碼,可以使用 SSH 密鑰對進行認證。

生成密鑰對

ssh-keygen -t rsa -b 4096

這會在 ~/.ssh 目錄下生成 id_rsa(私鑰)和 id_rsa.pub(公鑰)文件。

將公鑰復制到遠程服務器

ssh-copy-id username@hostname_or_ip

3. 使用 SSH 配置文件

為了簡化連接過程,可以在 ~/.ssh/config 文件中配置常用的連接信息。

Host myserver
    HostName hostname_or_ip
    User username
    IdentityFile ~/.ssh/id_rsa

之后可以直接使用 ssh myserver 連接。

4. 使用 SSH 隧道

SSH 隧道可以用于安全地轉發本地端口到遠程服務器。

本地端口轉發

ssh -L local_port:remote_host:remote_port username@hostname_or_ip

例如,將本地的 8080 端口轉發到遠程服務器的 80 端口:

ssh -L 8080:localhost:80 username@hostname_or_ip

遠程端口轉發

ssh -R remote_port:localhost:local_port username@hostname_or_ip

例如,將遠程服務器的 8080 端口轉發到本地的 80 端口:

ssh -R 8080:localhost:80 username@hostname_or_ip

5. 使用 SSH 代理

SSH 代理可以用于在多個 SSH 會話之間共享認證信息。

啟動 SSH 代理

eval "$(ssh-agent -s)"

添加私鑰到代理

ssh-add ~/.ssh/id_rsa

6. 使用 SSH 保持連接

為了避免長時間無操作導致的連接斷開,可以使用 ServerAliveInterval 選項。

~/.ssh/config 文件中添加:

Host *
    ServerAliveInterval 60

這會每 60 秒發送一次保持連接的信號。

7. 使用 SSH 執行遠程命令

可以直接在 SSH 命令中執行遠程命令,而不需要進入交互式 shell。

ssh username@hostname_or_ip "command_to_run"

例如,在遠程服務器上列出當前目錄的文件:

ssh username@hostname_or_ip "ls -l"

8. 使用 SSH 復制文件

可以使用 scp 命令在本地和遠程服務器之間復制文件。

從本地復制到遠程

scp local_file username@hostname_or_ip:/remote/path

從遠程復制到本地

scp username@hostname_or_ip:/remote/path/remote_file local_path

9. 使用 SSH 批量操作

可以使用 sshxargsparallel 等工具進行批量操作。

例如,批量重啟多個服務器:

echo -e "server1\nserver2\nserver3" | xargs -I {} ssh username@{}

這些技巧可以幫助你更高效地使用 SSH 命令行進行遠程管理和操作。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女