Linux SSHD服务
sshd服务
一、openssh服务
实现加密的远程连接/传输数据
openssh-server 服务端 (sshd,/etc/ssh/sshd_config)
openssh-clients 客户端 scp ssh
二、telnet vs openssh
共同点 | 区别 | 应用场景 | |
---|---|---|---|
openssh服务 | 远程连接 | 数据加密的 | 默认使用openssh |
telnet服务 | 远程连接 | 数据未加密 | 升级openssh服务的时候,启动telnet服务即可 |
telnet服务
#安装服务 [root@web01 ~]# yum -y install telnet-server #启动 [root@web01 ~]# systemctl start telnet.socket #本地shell连接 [C:\~]$ telnet 10.0.0.7 23 Connecting to 10.0.0.7:23... Connection established. To escape to local shell, press 'Ctrl+Alt+]'. Kernel 3.10.0-1160.el7.x86_64 on an x86_64 web01 login: yuan Password: [yuan@web01 ~]$ #注意:telnet 不加密传输,root不能登陆
三、Openssh-server 配置文件 必会
核心配置文件:/etc/ssh/sshd_config
openssh服务端配置详解 | |
---|---|
连接加速 | |
UseDNS no | 是否开启反向解析:ip--->域名或主机名 |
GSSAPIAuthentication no | GSS认证功能关闭 |
安全优化选项 | |
port | 默认是Port 22 ,端口范围1-65535 推荐1w以上的端口 |
PermitRootLogin | 禁用root用户的远程登陆权限,默认是yes(可以让root远程登陆),ubuntu系统默认的是no 使用建议:先添加普通用户配置sudo权限,然后在禁用(配置的时候开2个窗口) |
ListenAddress | 监听的地址(后面需要指定本地网卡的ip地址)可以控制用户只能通过内网访问 使用建议:一般配合堡垒机,VPN |
建议:可以设置公网的端口与局域网的端口不同(内外网端口分离)
ListenAddress 0.0.0.0:52113 #表示ssh都可以使用52113 无论局域网还是公网 ListenAddress 172.16.1.61:22 #表示ssh只有在172.16.1.61 局域网可以使用22端口
四、Openssh-Clients客户端命令
- scp 远程传输文件
- ssh 远程连接
- sftp 远程传输文件(一般开发通过图形化界面使用ftp工具)
1.scp 必会
scp 文件/目录 用户名@ip:路径 -r 递归传输,传输目录 -p 保持属性信息不变 -P 指定端口号 [root@m01 ~]# scp -rp -P22 /etc/hostname root@10.0.0.7:/tmp The authenticity of host '10.0.0.7 (10.0.0.7)' can't be established. ECDSA key fingerprint is SHA256:fVjvhVF2qU+PCOqsrVTrbxa/aNB4dzNmGRJTw1iIZ1s. ECDSA key fingerprint is MD5:0f:00:32:1c:41:31:af:a2:f5:e8:64:40:2c:cf:98:98. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '10.0.0.7' (ECDSA) to the list of known hosts. hostname [root@web01 ~]# cat /tmp/hostname m01
2.ssh
功能:
- 远程连接
- 远程连接执行命令或脚本(不要执行交互命令)
#使用普通用户远程连接到10.0.0.7的22端口 [root@backup ~]# ssh -p 22 yuan@10.0.0.7 yuan@10.0.0.7's password: Last login: Wed Feb 1 17:19:03 2023 from ::ffff:10.0.0.1 [yuan@web01 ~]$ # 使用普通用户远程连接到10.0.0.7的22端口并执行whoami命令或ip a 命令 [root@backup ~]# ssh -p22 yuan@10.0.0.7 whoami yuan@10.0.0.7's password: yuan #远程连接10.0.0.7节点并执行多条命令:whoami , pwd, hostname命令 [root@backup ~]# ssh -p22 yuan@10.0.0.7 "whoami &&pwd && hostname" yuan@10.0.0.7's password: yuan /home/yuan web01 [root@backup ~]# ssh -p22 yuan@10.0.0.7 "whoami ;pwd ; hostname" yuan@10.0.0.7's password: yuan /home/yuan web01
&& 并且,命令行中表示前一个命令执行成功再执行后面的命令.
; 分号,分隔命令.相当于是1行的结束.
3.sftp
- ftp文件传输协议,服务和客户端,服务端端口是21和20
- openssh也提供了ftp功能,sftp,端口是22
- ftp客户端:sftp命令,软件xftp,winscp
建议:
如果上传大文件建议使用ftp或scp
本文作者:wh459086748
本文链接:https://www.cnblogs.com/world-of-yuan/p/17083936.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步