1. Linux常用服务器构建-ftp服务器
ftp服务器
FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。
用于Internet上的控制文件的双向传输。
同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。
在FTP的使用当中,用户经常遇到两个概念:“下载”(Download)和"上传"(Upload)。
"下载"文件就是从远程主机拷贝文件至自己的计算机上;
"上传"文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。
![Linux 常用服务器ftp、ssh](https://s1.51cto.com/oss/201908/21/2c74020cb167f0a10e1bf3582f4d0f28.jpeg)
1.安装vsftpd服务器
- sudo apt-get install vsftpd
![Linux 常用服务器ftp、ssh](https://s2.51cto.com/oss/201908/21/f0f9bb925cc396734951094e7db5c006.jpeg)
![Linux 常用服务器ftp、ssh](https://s4.51cto.com/oss/201908/21/bcc117c387f51872f8351fcb8c641ba6.jpeg)
2.配置vsftpd.conf文件
- sudo vi /etc/vsftpd.conf
![Linux 常用服务器ftp、ssh](https://s1.51cto.com/oss/201908/21/f5bedcd75fcb5430dc43bf8eed5fc73d.jpeg)
![Linux 常用服务器ftp、ssh](https://s3.51cto.com/oss/201908/21/ab60c1f12efd7df3880f14ac0d06ae8c.jpeg)
![Linux 常用服务器ftp、ssh](https://s1.51cto.com/oss/201908/21/8ac38ab205c04b75f3053c0e59c4e225.jpeg)
![Linux 常用服务器ftp、ssh](https://s2.51cto.com/oss/201908/21/91d6b3a2a6b04ac669c395086f9cb494.jpeg)
![Linux 常用服务器ftp、ssh](https://s3.51cto.com/oss/201908/21/6afe5fd6b05fc42dcf0f5624a0cf108e.jpeg)
![Linux 常用服务器ftp、ssh](https://s3.51cto.com/oss/201908/21/ebcd5d0b50fbc079acbffc8408e4e0f2.jpeg)
![Linux 常用服务器ftp、ssh](https://s4.51cto.com/oss/201908/21/8714cd7c4ed18305a2773c94b23873d9.jpeg)
![Linux 常用服务器ftp、ssh](https://s2.51cto.com/oss/201908/21/5147da5c30121ed72e504a0aed29abc4.jpeg)
![Linux 常用服务器ftp、ssh](https://s2.51cto.com/oss/201908/21/7a6dde7f1d43452f9198d939af0e5d5c.jpeg)
![Linux 常用服务器ftp、ssh](https://s3.51cto.com/oss/201908/21/c82c40ee950eac785c5ea5d96d3b5939.jpeg)
![Linux 常用服务器ftp、ssh](https://s4.51cto.com/oss/201908/21/5b9fe21ee679cec02d9abf30fde81447.jpeg)
3.测试上传功能,登陆ftp服务器
- ftp IP
![Linux 常用服务器ftp、ssh](https://s2.51cto.com/oss/201908/21/ce94e642cddf1554342ff707a648cdaa.jpeg)
4.上传命令,可以把文件上传到ftp服务器
- put somefile
5.下载命令,可以把ftp服务器上的文件下载到本地
- get somefile
图形界面的ftp客户端(filezilla)
![Linux 常用服务器ftp、ssh](https://s5.51cto.com/oss/201908/21/be673e3472f78dc27fc7ce76d0d93adb.jpeg)
2. Linux常用服务器构建-ssh和scp
<1>ssh介绍
SSH为Secure Shell的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。
SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。常用于远程登录,以及用户之间进行资料拷贝。
利用SSH协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是 UNIX 系统上的一个程序,后来又迅速扩展到其他操作平台。SSH 在正确使用时可弥补网络中的漏洞。SSH 客户端适用于多种平台。几乎所有 UNIX 平台—包括 HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。
使用SSH服务,需要安装相应的服务器和客户端。客户端和服务器的关系:如果,A机器想被B机器远程控制,那么,A机器需要安装SSH服务器,B机器需要安装SSH客户端。
<2>安装ssh
A.安装ssh服务器
- sudo apt-get install openssh-server
B.远程登陆
- ssh 用户名@IP
使用ssh访问,如访问出现错误。可查看是否有该文件 ~/.ssh/known_ssh 尝试删除该文件解决。
<3>使用ssh连接服务器
SSH 告知用户,这个主机不能识别,这时键入"yes",SSH 就会将相关信息,写入" ~/.ssh/know_hosts" 中,再次访问,就不会有这些信息了。然后输入完口令,就可以登录到主机了。
![Linux 常用服务器ftp、ssh](https://s2.51cto.com/oss/201908/21/72c7a1323b9e50ab7c1b8e486caaf957.jpeg)
<3>. scp
远程拷贝文件,scp -r 的常用方法:
1.使用该命令的前提条件要求目标主机已经成功安装openssh-server
- 如没有安装使用 sudo apt-get install openssh-server 来安装
2.使用格式:
- scp -r 目标用户名@目标主机IP地址:/目标文件的绝对路径 /保存到本机的绝对/相对路径
- 举例:
- scp -r itcast@192.168.1.100:/home/itcast/QQ_dir/ ./mytest/lisi
- 在后续会提示输入“yes”此时,只能输“yes”而不能简单输入“Y”
拷贝单个文件可以不加 -r参数,拷贝目录必须要加。
本地文件复制到远程:
- scp FileName RemoteUserName@RemoteHostIp:RemoteFile
- scp FileName RemoteHostIp:RemoteFolder
- scp FileName RemoteHostIp:RemoteFile
本地目录复制到远程:
- scp -r FolderName RemoteUserName@RemoteHostIp:RemoteFolder
- scp -r FolderName RemoteHostIp:RemoteFolder
远程文件复制到本地:
- scp RemoteUserName@RemoteHostIp:RemoteFile FileName
- scp RemoteHostIp:RemoteFolder FileName
- scp RemoteHostIp:RemoteFile FileName
远程目录复制到本地:
- scp -r RemoteUserName@RemoteHostIp:RemoteFolder FolderName
- scp -r RemoteHostIp:RemoteFolder FolderName
![Linux 常用服务器ftp、ssh](https://s2.51cto.com/oss/201908/21/740f0ca76db10bff38ffd460ea8b3c84.jpeg)