标签归档:ftp

FTP配置之vsftpd.chroot_list

ftp安装详解 可以了解 http://www.cnblogs.com/hnrainll/archive/2011/02/16/1956538.html 本篇抄袭来自: http://blog.163.com/xiaohui_1123@126/blog/static/398052402010101995025953/ FTP配置文件vsftpd.conf关于限制用户在默认目录的配置,涉及到三个字段:chroot_local_user,chroot_list_enable,chroot_list_file。 我们按顺序配置下来吧!首先,要限制用户在默认目录必须将chroot_local_user设置为yes,即chroot_local_user=yes。此时,用户登录之后,执行目录跳转命令,如cd /home,显示550 Failed to change directory。你可以试试其他的账号,应该都是一样的结果,无法跳转目录。 接下来的问题是,我想对某些用户开个小灶,怎么办呢?那就要说到后面的两个字段啦! 设置如下:chroot_list_enable=yes chroot_list_file=/路径/vsftpd.chroot_list,这里的路径你可以自己指定,之后你要到指定的路径下面创建vsftpd.chroot_list文件。 上面两个设置的意思是(我自己的理解,呵呵!),第一个说明chroot_list这个列表有用,第二个是指明列表的位置。那接着说这个列表的作用,也就是这个vsftpd.chroot_list的作用吧。 做个试验,1.创建两个用户账号,first 和second;2.在上面配置指定的路径下面创建vsftpd.chroot_list文件,将first账号写入文件。 3.用first登录,然后执行目录跳转命令,发现可以成功跳转;用second登录,同样执行目录跳转命令,发现跳转失败。 接下来我们从另外一方面看,如果注释掉chroot_local_user=yes,再做上面的实验,结果刚好相反,first不能随意跳转,而second可以随意跳转。 结论:写入vsftpd.chroot_list文件的用户账号是有特权的账号。 别人都不可以跳的时候,它可以随意跳转; 别人都可以跳的时候,它不可以跳,呵呵!写入这个文件的账号太有个性啦!

发表在 服务器端 | 标签为 , , , | 留下评论

php ftp上传文件

api_upload.php <?php/* * @desc 上传接口   用ftp将收到的文件上传至远程图片服务器 * @author chenlong * @date 2011-08-09 * *///图片名按规则定//print_r($_POST);$username = $_POST['username'];$filename = get_filename($username); $big_filename = $filename.”_big.jpg”;$middle_filename = $filename.”_middle.jpg”;$small_filename = $filename.”_small.jpg”; $temp_path = ‘e:/php/ava/api_temp/’; $flag1 = move_uploaded_file($_FILES["file1"]["tmp_name"], $temp_path.$big_filename);$flag2 = move_uploaded_file($_FILES["file2"]["tmp_name"], $temp_path.$middle_filename);$flag3 = move_uploaded_file($_FILES["file3"]["tmp_name"], $temp_path.$small_filename);if(!($flag1 && $flag2 && $flag3)){ exit;}require_once(‘Ftp.class.php’);$ftp = new ftp(’192.168.0.74′,’www’,’123′,’/pic’); … 继续阅读

发表在 Php | 标签为 , | 留下评论

curl post 上传文件

可能图片不上传到本地,要扔到专门的图片服务器上(图片服务器不放php代码,打开ftp服务)。上传头像的在项目中不只是一个地方。 办法:提供一个接口process.php接收post过来的文件然后用ftp函数上传到图片服务器。 直接把form的action指向process.php?但是表单还有其他数据都扔过去干啥。用curl 把本地生成的文件post到接口,其他数据在本地文件该怎么处理怎么处理。curl post 跟form 表单post是一样的效果,但是传文件数据得让它知道是文件。区别在于在普通变量值前要加“@” //curl post 调用接口  接口做ftp操作 $path = $url.”/api_upload.php”;  $data = array(  ’file1′=>”@”.$big_file,//绝对路径  ’file2′=>”@”.$middle_file,  ’file3′=>”@”.$small_file,  ’username’=>$username ); $return = curl_post($path,$data); 下一步 api_upload.php 接收,跟form产生的一样,直接从$_FILES 里扣,然后用ftp函数上传。

发表在 Php | 标签为 , , | 留下评论