这篇文章主要围绕Centostomcat+mysql+ftp网站服务器搭建指南和centosftp服务器怎么搭建展开,旨在为您提供一份详细的参考资料。我们将全面介绍Centostomcat+mysql
这篇文章主要围绕Centos tomcat+mysql+ftp 网站服务器搭建指南和centos ftp服务器怎么搭建展开,旨在为您提供一份详细的参考资料。我们将全面介绍Centos tomcat+mysql+ftp 网站服务器搭建指南的优缺点,解答centos ftp服务器怎么搭建的相关问题,同时也会为您带来.Net 连接 FTP 下载文件报错:System.InvalidOperationException: The requested FTP command is not supported whe...、C# FTP 上传文件时出现 "应 PASV 命令的请求,服务器返回了一个与 FTP 连接地址不同的地址。" 的错误、centos7 ftp 500 OOPS: cannot change directory:/var/ftp/xutong/、CentOS7 安装及配置 vsftpd (FTP 服务器 FTP 账号创建以及权限设置)的实用方法。
本文目录一览:- Centos tomcat+mysql+ftp 网站服务器搭建指南(centos ftp服务器怎么搭建)
- .Net 连接 FTP 下载文件报错:System.InvalidOperationException: The requested FTP command is not supported whe...
- C# FTP 上传文件时出现 "应 PASV 命令的请求,服务器返回了一个与 FTP 连接地址不同的地址。" 的错误
- centos7 ftp 500 OOPS: cannot change directory:/var/ftp/xutong/
- CentOS7 安装及配置 vsftpd (FTP 服务器 FTP 账号创建以及权限设置)
Centos tomcat+mysql+ftp 网站服务器搭建指南(centos ftp服务器怎么搭建)
1、先配置vsftp用户和路径
#adduser -d /home/dthl -g ftp -s /sbin/nologin srsman
#passwd srsman
changing password for user beinan.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
这样就为系统新增了一个名为srsman,目录指向为/home/dthl的ftp 用户
#setsebool -P ftpd_disable_trans 1
#setsebool -P ftp_home_dir on
给目录权限,增删改权限
#chown ftp /home/dthl
#chmod 777 /home/dthl
如果一切配置好了以后,登录ftp的时候还是报连接错误,无法登陆的错误,请尝试关闭防火墙,然后重启vsftpfuw
#service iptables stop
#service vsftpd restart
**/
2、将本地的项目文件打包为zip文件,上传到服务器上
#zip -q -r gwnew.zip GW
解压项目文件到GW这个文件夹下
centos 下安装 gcc编辑器
#yum -y install gcc-c++
3、配置JDK环境
上传jdk版本安装包到服务器上,jdk-1_5_0_06-linux-i586.bin
#chmod 755jdk-1_5_0_06-linux-i586.bin
#./jdk-1_5_0_06-linux-i586.bin
#java -version 显示jdk版本,jdk安装成功
配置环境变量
#vim /etc/profile
在打开的文件下面加入下面内容
export JAVA_HOME=/usr/java/jdk1.6.0_45
export JAVA_BIN=/usr/java/jdk1.6.0_45/bin
export PATH=$JAVA_HOME/bin:$PATH
export CLAsspATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLAsspATH
然后执行#source /etc/profile 使配置生效
4、安装MysqL
下载MysqL-client-4.0.16-0.i386.rpmMysqL客户端安装包,并上传到服务器,下载MysqL-server-5.1.7-0.i386.rpm MysqL服务端安装包,并上传到服务器。
进入安装包所在文件夹下,执行命令
#rpm -ivh MysqL-client-4.0.16-0.i386.rpm
#rpm -ivh MysqL-server-5.1.7-0.i386.rpm
如果安装报错,与原先版本冲突的话,就执行下面语句查询现有MysqL版本信息
#rpm -qa |grep -i MysqL
我这边显示已经安装了MysqL-libs-5.1.61.e16.i686这个文件
那我们需要先强制删除该冲突文件才能使安装成功,执行删除命令:
#rpm -e --nodepsMysqL-libs-5.1.61.e16.i686
删除成功后重新执行安装命令,再次安装就好了
#service MysqL start 启动MysqL服务
一、更改root初始密码:
#/usr/bin/MysqLadmin -u root password '123456'
如果出现以下错误的话:
Can't turn off logging; error: 'Access denied; you need (at least one of) the SUPER privilege(s) for
修改/etc/my.cnf 文件,在MysqLd 下加入一行skip-grant-tables 然后重新启动MysqL服务,使用#MysqL
#use MysqL;
#update user set Password=PASSWORD('你的密码') where user = 'root';
#flush privileges;
#exit;
然后把刚才的my.cnf文件改回来,重启MysqL 服务。
二、想要支持内网都能访问数据库,修改localhost
#MysqL -uroot -p 登录MysqL
MysqL>use MysqL
MysqL>update user set host = '%' where user = 'root';
MysqL>select host,user,from user;
MysqL>FLUSH PRIVILEGES;
三、泛授权,赋予任何主机上以root身份访问数据库
MysqL>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
MysqL>FLUSH PRIVILEGES;
四、更改MysqL目录
1、在home下建立data目录
#cd home
#mkdir data
2、关闭MysqL服务进程
#MysqLadmin -u root -p shutdown
3、把/var/lib/mysl整个目录移动到/home/data下
#mv /var/lib/MysqL /home/data
4、找到my.cnf配置文件
如果/etc/目录下没有my.cnf配置文件,请到/usr/share/MysqL/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf中,命令如下:
#cp /usr/share/MysqL/my-medium.cnf /etc/my.cnf
5、编辑/etc/my.cnf配置文件
为了保证MysqL能够正常工作,需要指明MysqL.sock文件的产生位置
修改socket=/var/lib/MysqL/MysqL.sock一行中等号右边的位置为新位置:/home/data/MysqL/MysqL.sock。操作如下
#vim my.cnf
6、修改MysqL启动脚本/etc/rc.d/init.d/MysqL
#vim /etc/rc.d/init.d/MysqL
将datadir=/var/lib/MysqL改为datadir=/home/data/MysqL
7、重新启动MysqL服务
#service MysqL restart
如果重启发生错误:Starting MysqL. ERROR! The server quit without updating PID file (/home/data/MysqL/localhost.localdomain.pid).
这个是因为linux 默认是执行原来的程序机制,不容许篡改启动项,所以他不认识这个新的启动socket
解决方法是:
#vim /etc/selinux/config
5、配置tomcat
.Net 连接 FTP 下载文件报错:System.InvalidOperationException: The requested FTP command is not supported whe...
.NET Framework 上
Proxy 属性标识 IWebProxy 与 FTP 服务器进行通信的实例。 代理的设置是由系统使用的配置文件和 Internet Explorer 本地网络设置。 若要指定应使用任何代理,请设置 Proxy 返回的代理实例到 GlobalProxySelection.GetEmptyWebProxy 方法。
必须设置 Proxy 之前将数据写入到请求的流或获取响应。 更改 Proxy 后调用 GetRequestStream, BeginGetRequestStream, GetResponse,或 BeginGetResponse 方法使 InvalidOperationException 异常。
FtpWebRequest 类支持 HTTP 和 ISA 防火墙客户端代理。
如果指定的代理是 HTTP 代理,则仅 DownloadFile, ListDirectory,和 ListDirectoryDetails 支持命令。
上述说明,基本已经解释了异常的原因。但是既然代码中并未指定代理,但是实际缺使用了 HTTP 代理,结合有的电脑没问题有的电脑有问题现象,猜测应该是电脑设置或网络设置问题。如下是 “自动检测代理” 的说明,基本可以解释:
自动代理检测是一个进程,系统使用该进程来标识 Web 代理服务器,并用于代表客户端发送请求。 此功能也称为 Web 代理自动发现 (WPAD)。 启用自动代理检测后,系统会尝试查找代理配置脚本,该脚本负责返回一组可用于请求的代理。 如果找到了代理配置脚本,则会在针对使用 WebProxy 实例的请求获取代理信息、请求流或响应时,在本地计算机上下载、编译并运行该脚本。
自动代理检测由 WebProxy 类执行,且可采用请求级设置、配置文件中的设置和通过 Internet Explorer“局域网 (LAN)” 对话框指定的设置。
启用自动代理检测后,WebProxy 类会尝试按如下方式找到代理配置脚本:
-
WinINet
InternetQueryOption
函数用于查找 Internet Explorer 最近检测到的代理配置脚本。 -
如果找不到该脚本,WebProxy 类将使用动态主机配置协议 (DHCP) 查找该脚本。 DHCP 服务器可以采用脚本的位置(主机名)或脚本的完整 URL 进行响应。
-
如果 DHCP 未标识 WPAD 主机,则查询 DNS 以找到 WPAD 作为其名称或别名的主机。
-
如果未标识该主机,并且代理配置脚本的位置由 Internet Explorer LAN 设置或配置文件指定,则使用此位置。
默认情况下,Internet Explorer 代理设置用于检测此代理。 如果应用程序基于非交互式帐户运行(没有用于配置 IE 代理设置的简便方法),或要使用不同于 IE 设置的代理设置,则可以通过创建定义了 <defaultProxy> 元素(网络设置)和 <proxy> 元素(网络设置)元素的配置文件,对代理进行配置。
对于所创建的请求,可通过将空 Proxy 用于该请求,禁用请求级别的自动代理检测,如下面的代码示例所示。
public static void DisableForMyRequest (Uri resource) { WebRequest request = WebRequest.Create (resource); request.Proxy = null; WebResponse response = request.GetResponse (); }
结合上述解释,在问题电脑上,将自动检测代理关闭后,测试正常。
原文出处:https://www.cnblogs.com/Juning/p/11392683.html
C# FTP 上传文件时出现 "应 PASV 命令的请求,服务器返回了一个与 FTP 连接地址不同的地址。" 的错误
FTP 上传文件时出现 "应 PASV 命令的请求,服务器返回了一个与 FTP 连接地址不同的地址。" 的错误
解决方法是在原代码上增加这句话
reqFTP.UsePassive = false;
/// <summary>
/// 上传
/// </summary>
public static void Upload(string filename)
{
FileInfo fileInf = new FileInfo(filename);
FtpWebRequest reqFTP;
reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(ftpURI + fileInf.Name));
reqFTP.Credentials = new NetworkCredential(FtpUserID, FtpPassword);
reqFTP.Method = WebRequestMethods.Ftp.UploadFile;
//增加这句话
reqFTP.UsePassive = false;
reqFTP.KeepAlive = false;
reqFTP.UseBinary = true;
reqFTP.ContentLength = fileInf.Length;
int buffLength = 2048;
byte[] buff = new byte[buffLength];
int contentLen;
FileStream fs = fileInf.OpenRead();
try
{
Stream strm = reqFTP.GetRequestStream();
contentLen = fs.Read(buff, 0, buffLength);
while (contentLen != 0)
{
strm.Write(buff, 0, contentLen);
contentLen = fs.Read(buff, 0, buffLength);
}
strm.Close();
fs.Close();
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
centos7 ftp 500 OOPS: cannot change directory:/var/ftp/xutong/
在设置多用户登录的时候 该指定的用户xutong对于上级目录/var/ftp 没有访问权限
修改一下上级目录的权限
chmod 777 /var/ftp
对于ftp多用户访问的配置修改也做一个记录
以是设置FTP所遇到的一些问题:
- 对于端口防火墙问题在此略
- 对于不同用户访问不通根目录的解决
# 用户登录路径,local_root 针对系统用户
local_root=/var/ftp/
# 锁定用户到各自目录为其根目录
chroot_local_user=YES
# anon_root 针对匿名用户
anon_root=/var/www/html
allow_writeable_chroot=YES
# 用户配置目录
user_config_dir=/etc/vsftpd/userconfig
# 然后到/etc/vsftpd/创建 userconfig
mkdir userconfig
# 进入userconfig
cd userconfig/
# 对于用户 xutong 的单独目录
vi xutong
# 加入以下内容
local_root=/var/ftp/xutong
# 其它以此类推
- 对于用户登录shell类型/sbin/nologin,
# 直接/bin/bash shell登录是完全没有问题的 ,但是网上看大家还是很追求完美的好多都用/sbin/nologin
useradd -s /sbin/nologin ftptest
#passwd 设置密码 略
# 我们发现这个样子是不能直接用于FTP用户登录的显示账户密码错误
# 需要去改以下配置文件 /etc/pam.d/vsftpd
vi /etc/pam.d/vsftpd
auth required pam_shells.so
改成
auth required pam_nologin.so
CentOS7 安装及配置 vsftpd (FTP 服务器 FTP 账号创建以及权限设置)
本文章向大家介绍 CentOS7 安装及配置 vsftpd (FTP 服务器 FTP 账号创建以及权限设置),主要包括 CentOS7 安装及配置 vsftpd (FTP 服务器 FTP 账号创建以及权限设置) 使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1,安装 vsftpd 的
yum -y install vsftpd
2、设置开机启动
systemctl enable vsftpd
3、启动 ftp 服务
systemctl start vsftpd.service
4、打开防火墙,开放 21 端口(centos7.4 以后默认关闭 Firewall 防火墙)
1 firewall-cmd --zone=public --add-port=21/tcp --permanent
2 firewall-cmd --permanent --zone=public --add-service=ftp
3 firewall-cmd --reload
5、添加 ftp 用户
useradd -g root -d /home/wwwroot/asite -s /sbin/nologin ftpuser
注:表示新增一个 ftpuser(用户名),且指定上传目录在 /home/wwwroot/asite 下
如果后期想变更此用户的上传目录到(/run/media/root/xxx/wwwroot/xxx.org),请使用下面的命令:
usermod -d /run/media/root/xxx/wwwroot/xxx.org ftpuser
6、设置用户密码
passwd ftpuser
7、配置 selinux 允许 ftp 访问 home 和外网访问(默认关闭 centos7.4)
1 setsebool -P allow_ftpd_full_access on
2 setsebool -P ftp_home_dir on
8、设置权限(此用户可以访问整个主机目录,后面备注设置权限问题)
chown -R ftpuser:root /home/wwwroot/asite
9、修改 vsftp 配置文件,禁用匿名登录
路径:vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES 改为: anonymous_enable=NO
其他命令:
重启 service vsftpd restart
启动/停止service vsftpd start/stop
状态 service vsftpd status
以下是权限配置:
修改 vi /etc/vsftpd/vsftpd.conf 如下:(去掉注释!!!)
chroot_local_user=NO
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
编辑上面的内容
第一行:chroot_local_user=NO
第二行:chroot_list_enable=YES // 限制访问自身目录
第四行:编辑 vsftpd.chroot_list。根据第三行说指定的目录,找到 chroot_list 文件。(因主机不同,文件名也许略有不同)
编辑 vsftpd.chroot_list,将受限制的用户添加进去,每个用户名一行
说明:chroot_local_user=NO 则所有用户不被限定在主目录内,chroot_list_enable=YES 表示要启用 chroot_list_file, 因为 chroot_local_user=NO,即全体用户都 “不被限定在主目录内”, 所以总是作为 “例外列表” 的 chroot_list_file 这时列出的是那些 “会被限制在主目录下” 的用户。
5、重启服务器
改完配置文件,不要忘记重启 vsFTPd 服务器
运行命令:service vsftpd restart
关于Centos tomcat+mysql+ftp 网站服务器搭建指南和centos ftp服务器怎么搭建的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于.Net 连接 FTP 下载文件报错:System.InvalidOperationException: The requested FTP command is not supported whe...、C# FTP 上传文件时出现 "应 PASV 命令的请求,服务器返回了一个与 FTP 连接地址不同的地址。" 的错误、centos7 ftp 500 OOPS: cannot change directory:/var/ftp/xutong/、CentOS7 安装及配置 vsftpd (FTP 服务器 FTP 账号创建以及权限设置)等相关知识的信息别忘了在本站进行查找喔。
本文标签: