ssh配置以及远程文件传输

Secure Shell(安全外壳协议,简称SSH)是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境。Ubuntu缺省已经安装了ssh客户端。但是并没有安装服务端。 通过以下命令安装ssh服务端(默认自动启动)。

$ sudo apt-get install openssh-server

ssh登录远程服务器

举个栗子

$ ssh byteparallel@192.168.1.102

注意:如果出现这样的警告WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!。说明你以前连接过远程服务器,但是远程服务器又重装了系统,这时候你本地的密钥已经失效了。你需要删除该文件。

$ rm ~/.ssh/known_hosts

远程文件传输

在linux下一般用scp这个命令来通过ssh传输文件。 - 从服务器上下载文件

$ scp username@servername:/path/filename /var/www/local_dir(本地目录)

  • 上传本地文件到服务器

    $ scp /path/filename username@servername:/path

  • 从服务器下载整个目录

    $ scp -r username@servername:/var/www/remote_dir/(远程目录) /var/www/local_dir(本地目录)

  • 上传目录到服务器

    $ scp  -r local_dir username@servername:remote_dir

注意: 目标服务器要开启写入权限。

References: [1] 利用ssh传输文件