Ubuntu SSH连接、远程上传下载文件

简介: Ubuntu SSH连接、远程上传下载文件

Ubuntu SSH连接、远程上传下载文件



目录

SSH 概念

安装 SSH(Secure Shell) 服务以提供远程管理服务

将文件/文件夹从远程 Ubuntu 机拷至本地(scp)

将文件/文件夹从本地拷至远程 Ubuntu 机(scp)

将文件/文件夹从远程 Ubuntu 机拷至本地(rsync)

将文件/文件夹从本地拷至远程 Ubuntu 机(rsync)

如何限制通过SSH远程连接的用户帐号

SSH 命令

SSH 概念

SSH是指Secure Shell,SSH协议族由IETF(Internet Engineering Task Force)的Network Working Group制定,SSH协议的内容SSH协议是建立在应用层和传输层基础上的安全协议。


传统的网络服务程序,如FTP、Pop和Telnet其本质上都是不安全的;因为它们在网络上用明文传送数据、用户帐号和用户口令,很容易受到中间人(man-in-the-middle)攻击方式的攻击。就是存在另一个人或者一台机器冒充真正的服务器接收用户传给服务器的数据,然后再冒充用户把数据传给真正的服务器。


SSH(Secure Shell)是目前比较可靠的为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。通过SSH,可以把所有传输的数据进行加密,也能够防止DNS欺骗和IP欺骗。


SSH,还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。SSH有很多功能,它既可以代替Telnet,又可以为FTP、Pop、甚至为PPP提供一个安全的”通道”。


安装 SSH(Secure Shell) 服务以提供远程管理服务


sudo apt-get install ssh

SSH 远程登入Ubuntu 机


ssh username@192.168.0.1

将文件/文件夹从远程 Ubuntu 机拷至本地(scp)


scp -r username@192.168.0.1:/home/username/remotefile.txt .

注意:要在本地终端输入上述命令(或者):


scp -r username@192.168.3.192:绝对路径/文件名 本地的路径

将文件/文件夹从本地拷至远程 Ubuntu 机(scp)


scp -r localfile.txt username@192.168.0.1:/home/username/

在本地的终端下,而不是在服务器上。在本地的终端上才能将本地的文件拷入服务器。


scp -r 从本地要上传的完整路径到文件名 username@192.168.0.1:/home/username/

其中:


scp是命令,-r是参数 (要传文件的话,加上-r)

username是服务器账号

192.168.0.1是要上传的服务器ip地址

/home/username/是要拷入的文件夹路径

例如:要将文件名为test1上传到服务器:文件所在具体路径为/home/ubuntu/test1(可以进入到这个文件所在的路径后,输入命令:pwd,显示当前路径。)


因此:


scp -r /home/username1/Downloads/assignment1 username@192.168.3.192:/home/username/

将文件/文件夹从远程 Ubuntu 机拷至本地(rsync)


rsync -v -u -a --delete --rsh=ssh --stats username@192.168.0.1:/home/username/remotefile.txt .

将文件/文件夹从本地拷至远程 Ubuntu 机(rsync)


rsync -v -u -a --delete --rsh=ssh --stats localfile.txt username@192.168.0.1:/home/username/

如何在 Windows 机上用 SSH 远程登录 Ubuntu 机

下载 PuTTY


如何在 Windows 机上拷贝 文件/文件夹 从/到 远程 Ubuntu 机

下载 FileZilla


ssh -X anspoon@118.25.126.80.4 ls

直接在服务器端执行 ls 返回结果到客户端


如何限制通过SSH远程连接的用户帐号

例如你启用了SSH服务,那么任何有有效帐号的用户都可以远程连接。这可能会导致一些安全问题,由于有一些远程密码破解工具可以尝试常见的用户名/密码


备份SSH服务的配置文件


sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.ORIGINAL

编辑配置文件


sudo gedit /etc/ssh/sshd_config


将参数 PermitRootLogin 由 yes 更改为 no。 超级用户不能直接通过远程联机。

添加参数 AllowUsers 设定远程连接的用户名 (用空格来分割) 。

您也可以使用 DenyUsers for fine-grained selection of users.

If you enable the openssh server and you have no intention for now to enable remote connections, you may add AllowUsers nosuchuserhere to disable anyone connecting.

SSH 命令

ssh 命令可以用来在远程机器上不经 shell 提示登录而执行命令。它的语法格式是: ssh hostname command。


譬如,如果你想在远程主机 penguin.example.net 上执行 ls /usr/share/doc 命令,在 shell 提示下键入下面的命令:


ssh penguin.example.net ls /usr/share/doc


目录
相关文章
|
5月前
|
Ubuntu 编译器 计算机视觉
Ubuntu 20.04环境下无法找到#include<opencv/cv.h>文件 - 解决方案。
希望这些信息能帮助你解决遇到的问题。
338 10
|
6月前
|
网络安全 开发工具 git
配置本地环境以管理Git多账户SSH连接的方法
通过以上步駟设置后, 您可以轻松管理多個 Git 账户并且根据不同项目需求切换 SSH 密匙进行版本控制操作。
613 20
|
6月前
|
Ubuntu 网络安全 数据安全/隐私保护
搭建SSH服务于RK3399平台上的Ubuntu 18.04,实现远程连接
以上步骤涵盖从安 装 到配制再至实际使 用户建立Ssh 连接所需知识点 。务必注意,在对外提供Ssh 访问
278 2
|
6月前
|
Unix Linux Shell
指定端口-SSH连接的目标(告别 22 端口暴力破解)
本文介绍了 SSH 命令 `ssh -p 44907 root@IP` 的含义与使用方法,包括命令结构拆解、完整示例及执行过程详解,帮助用户安全地远程登录服务器。
925 0
|
8月前
|
Ubuntu 安全
修复Ubuntu系统文件损坏问题:手动fsck指令
总结一下,使用 `fsck`修复文件系统是一个复杂的过程,涉及到诊断问题、安全卸载文件系统、执行检查与修复、并且通常在维护模式下完成。这个过程对于维护系统的健康和稳定至关重要。虽然命令和步骤可以按照标准手册执行,但每个系统的具体情况可能都有所不同,因此修复操作需要对系统和维护命令有所了解。在执行这一系列操作时请确保谨慎,并对系统有一定的认识,以避免不必要的数据丢失。
1252 8
|
7月前
|
缓存 监控 Ubuntu
Ubuntu操作系统下清除系统缓存与无用文件的方法
通过上述步骤断行综合性地对Ubuntu进行优化与整洁可显著改善其性能表现及响应速度。然而,请注意在执行某些操作前确保充分了解其潜在影响;例如,在移除旧内核之前确认新内核稳定运行无问题;而对于关键配置更改则需确保备份好相关设置以便恢复原状态。
1733 0
|
9月前
|
Ubuntu 计算机视觉 芯片
ADE下载问题解决:编译OpenCV于Ubuntu 18.04
如果显示了OpenCV的版本号,那恭喜你,一道编译大餐现已酣畅淋漓,色香味俱佳,等你品尝。
326 8
|
7月前
|
网络安全 数据安全/隐私保护 开发者
诊断并修复SSH连接Github时遇到的"connection closed"错误。
解决"connection closed"错误往往是一个排除法的过程。需要从基础的网络检查做起,逐步过渡到深入的配置和服务端日志审查。每一步都应当仔细验证,确保不遗漏可能导致连接问题的任何细节。在执行以上步骤后,大多数SSH连接问题可以得到解决。如果所有步骤都未能解决问题,可能需要寻求更专业的技术支持,或者在GitHub社区寻找是否有其他开发者遇到并解决了类似的问题。
930 0
|
9月前
|
Ubuntu 安全 Linux
详述Ubuntu中的/etc/rc.local与/etc/init.d/rc.local文件的不同应用场景
总结一下,`/etc/rc.local`和 `/etc/init.d/rc.local`可以说是系统自定义服务的二人转。在Systemd登基以前,`/etc/rc.local`是大明星,负责在系统启动的最后一刻执行任务。而 `/etc/init.d/rc.local`则扮演着保证 `rc.local`文件内容可以被执行的幕后角色。随着Ubuntu版图的更迭和Systemd的崛起,两者都有所转变,但它们依旧是实现系统自启动自定义命令和程序的得力工具,虽然现在要通过一些额外的设置来唤醒它们的能力。此外,由于Systemd的灵活性和强大,推荐使用更加现代化的Systemd单元(unit)文件来替代这
379 10