导航:首页 > 操作系统 > linuxssh远程执行

linuxssh远程执行

发布时间:2025-08-12 15:49:19

linux中ssh如何远程执行一条命令,而且不登录远程服务器

一 SSH命令使用技巧

- 远程登录

ssh [email protected]

- 远程执行

ssh [email protected] 'command ...'

- 远程复制

scp [email protected]:/remote/path /local/path

scp /local/path [email protected]:/remote/path

- X forward

ssh -X [email protected]

xcommand ...

- Tunnel / Portforward

ssh -L 1234:remote.machine:4321 [email protected]

ssh -R 1234:local.machine:4321 [email protected]

ssh -L 1234:other.machine:4321 [email protected]

二, 实作

1) 禁止 root 登录

# vi /etc/ssh/sshd_config

PermitRootLogin no

2) 废除密码登录, 强迫使用 RSA 验证(假设 ssh 账户为 user1 )

# vi /etc/ssh/sshd_config

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys

PasswordAuthentication no

# service sshd restart

# su - user1

$ mkdir ~/.ssh 2>/dev/null

$ chmod 700 ~/.ssh

$ touch ~/.ssh/authorized_keys

$ chmod 644 ~/.ssh/authorized_keys

登入端:

$ ssh-keygen -t rsa

(按三下 enter 完成﹔不需设密码,除非您会用 ssh-agent 。)

$ scp ~/.ssh/id_rsa.pub [email protected]:id_rsa.pub

(若是 windows client, 可用 puttygen.exe 产生 public key,

然后复制到 server 端后修改之, 使其内容成为单一一行.)

回到 server 端:

$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys

$ rm ~/id_rsa.pub

$ exit

3) 限制 su / sudo 名单:

# vi /etc/pam.d/su

auth required /lib/security/$ISA/pam_wheel.so use_uid

# visudo

%wheel ALL=(ALL) ALL

# gpasswd -a user1 wheel

4) 限制 ssh 使用者名单

# vi /etc/pam.d/sshd

auth required pam_listfile.so item=user sense=allow file=/etc/ssh_users ōnerr=fail

# echo user1 >> /etc/ssh_users

Ⅱ linuxssh常用命令

Linux SSH常用命令

一、SSH连接命令

1. ssh 用户名@IP地址:用于远程登录Linux服务器。例如,“ssh [email protected]”。

2. ssh -p 端口号 用户名@IP地址:用于连接到非标准SSH端口的服务器。

二、文件传输命令

1. scp 本地文件路径 用户名@远程主机IP:远程路径:将本地文件复制到远程服务器。

2. rsync 本地文件路径 用户名@远程主机IP:远程路径:同步文件到远程服务器,保持文件一致性。

3. sz 文件名:通过sz命令可以将文件压缩并保存到本地。

4. rz:通过rz命令可以将本地文件上传到服务器。

三、命令执行与传输

1. sshpass -p '密码' ssh 命令 用户名@IP地址:用于在SSH登录时自动输入密码。

2. expect “期望的提示”然后发送特定的响应”:自动化SSH会话中的交互式任务,例如自动输入密码或执行多个命令。

详细解释

SSH是一种网络协议,用于安全地连接到远程计算机。在Linux系统中,SSH是最常用的远程登录和管理工具之一。通过SSH,用户可以安全地访问和管理远程服务器。

一中的命令主要用于建立SSH连接。 ssh命令用于远程登录服务器,需要提供用户名和IP地址。使用“-p”选项可以指定连接到非标准的SSH端口。

二中的命令主要用于文件传输。 scp命令可以将文件从本地复制到远程服务器,或者从远程服务器复制到本地。rsync命令用于同步文件,保持文件的一致性。sz和rz命令则用于在本地和远程服务器之间传输文件,sz用于压缩并保存文件到本地,rz用于上传文件到服务器。

三中的命令主要用于自动化处理SSH会话中的任务。 sshpass命令可以自动输入密码,减少手动操作的麻烦。expect命令则可以自动化处理SSH会话中的交互式任务,例如自动输入密码、执行多个命令等。这对于需要批量处理或自动化脚本的任务非常有用。

阅读全文

与linuxssh远程执行相关的资料

热点内容
狮子鱼团购独立版源码使用问题 浏览:549
mrlonely缓解压力的轻音乐 浏览:560
程序员面试的时候怎么说 浏览:99
命令行求ip地址 浏览:173
行程路线规划用什么app 浏览:890
腾讯云v2服务器搭建 浏览:662
用什么app把宠物照片变成卡通画 浏览:769
养猪技术pdf 浏览:262
新卡如何绑定银行app 浏览:635
小儿的身高体重头围的算法 浏览:528
方舟端游服务器聊天框怎么打开 浏览:175
机器人的主要编程方式 浏览:418
java比较日期大小写 浏览:891
centos7删除命令 浏览:318
为什么安卓版本显示垃圾版本 浏览:295
宁波云服务器怎么样 浏览:852
linuxssh远程执行 浏览:436
服务器ip地址189 浏览:183
catia全自动编程 浏览:635
专业程序员培训机构 浏览:439