More than code
Welcome to the website

Python教程 4:服务器构建

一、ftp服务器

FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。

用于Internet上的控制文件的双向传输。

同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。

在FTP的使用当中,用户经常遇到两个概念:”下载”(Download)和”上传”(Upload)。

“下载”文件就是从远程主机拷贝文件至自己的计算机上;

“上传”文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。

1. 安装vsftpd服务器

sudo apt-get install vsftpd

2. 配置vsftpd.conf文件

# 先备份源文件
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
sudo vi /etc/vsftpd.conf
# 不允许匿名用户登录
anonymous_enable=NO
# 指定ftp上传下载目录
local_root=/home/python/ftp/
# 允许本机登录
local_enable=YES
# 允许vsftpd.chroot_list中的用户登录ftp服务器
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
# 允许文件上传到ftp服务器
write_enable=YES

创建vsftpd.chroot_list文件,将用户名添加到此文件

sudo vi /etc/vsftpd.chroot_list

将文件夹ftp文件夹去掉w权限,即文件夹的拥有者不能有写权限
在ftp文件夹中建立一个文件夹share,此文件夹就是使用ftp客户端进行上传和下载的文件夹

重启ftp服务器

sudo /etc/init.d/vsftpd restart

3. 测试上传功能,登陆ftp服务器

ftp  IP

4. 上传命令,可以把文件上传到ftp服务器

put somefile

5. 下载命令,可以把ftp服务器上的文件下载到本地

get somefile

图形界面的ftp客户端(filezilla)

二、ssh

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

2.1 安装ssh服务器

sudo apt-get install openssh-server

2.2 远程登陆

ssh 用户名@IP

使用ssh访问,如访问出现错误。可查看是否有该文件 ~/.ssh/known_ssh 尝试删除该文件解决。

2.3 使用ssh连接服务器

SSH 告知用户,这个主机不能识别,这时键入”yes”,SSH 就会将相关信息,写入” ~/.ssh/know_hosts” 中,再次访问,就不会有这些信息了。然后输入完口令,就可以登录到主机了

2. scp

远程拷贝文件,scp -r 的常用方法:

使用格式:

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

三、samba

1. 介绍

Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,能够完成在windows、mac操作系统下访问linux系统下的共享文件

2. 安装

使用apt命令安装samba

sudo apt-get install samba samba-common

3. 配置

3.1 创建存放共享文件的路径

在home路径下操作:

sudo mkdir share

修改其权限:

chmod 777 share

修改samba的配置文件:

vi /etc/samba/smb.conf

3.2 创建samba账户

touch /etc/samba/smbpasswd
smbpasswd -a python

4. 重启samba

当对配置进行了更新,需要重启samba软件后生效
重启命令如下:

/etc/init.d/smbd restart

5. 访问共享文件

5.1 mac下访问

5.2 windows下访问方式

赞(2) 打赏
未经允许不得转载:李帅帅空间 » Python教程 4:服务器构建

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

React CLI - 快速创建react项目脚手架工具

官 网GitHub

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏