Articles of proftpd

如何“监禁”其主目录(proftpd)内的FTP用户?

我有一个名为“ftp3”的用户属于组“ftpusers-temp”。 该用户的家是家庭/ FTP共享/温度 在proftpd.conf中我有以下2个指令: DefaultRoot /home/FTP-shared DefaultRoot ~ ftpusers-temp 我期待用户ftp3只能看到“temp”目录; 但是会发生什么情况是login时会默认select“temp”目录,但是用户可以返回并访问ftp服务器的根目录。 没有用户“ftp3”被关在“/ home / FTP-shared / temp”,并且无法访问“/ home / FTP-shared”?

获取FTP返回码450为GET,但不是MGET命令

我在Linux上有一个FTP服务器(ProFTPD 1.3.4b),在Windows上有一个FTPS客户端(MOVEit Freely 4.5.1.2 – Secure FTP Client)。 我这样连接 220 ProFTPD 1.3.4b Server (FTP with TLS) [1.2.3.4] 234 AUTH TLS successful Connected to my.ftp.server 232 User myaccount logged in 200 PBSZ 0 successful 200 Protection set to Private 215 UNIX Type: L8 然后像这样启动下载 ftp> get my.file 200 PORT command successful 150 Opening ASCII mode data […]

无论SFTPAuthorizedUserKeys文件的内容如何,​​PROFTPD都接受所有的公钥

我刚刚试图将ProFTPD设置为SFTP服务器,但是在公钥authentication方面,我正面临一些奇怪的行为。 出于某种原因,proftpd正在对提供给它的每个密钥指纹进行encryption,而不pipe它是否存在于用户的授权密钥文件中,导致我的代理(在这种情况下是keeagent)提示每一个密钥,直到达到用户的密钥。 这看起来与OpenSSH服务器有所不同,后者只接受authorized_keys文件中存在的密钥。 这应该是预期的行为,还是一个错误? ProFTPD版本1.3.5a <IfModule mod_sftp.c> SFTPEngine on Port 2222 SFTPLog /var/log/proftpd/sftp.log # Configure both the RSA and DSA host keys, using the same host key # files that OpenSSH uses. SFTPHostKey /etc/ssh/ssh_host_rsa_key SFTPHostKey /etc/ssh/ssh_host_dsa_key SFTPHostKey /etc/ssh/ssh_host_ecdsa_key SFTPAuthMethods publickey SFTPAuthorizedUserKeys file:~%u/.ssh/sftp_keys # Enable compression SFTPCompression delayed </IfModule>

Proftpd:如何将用户主目录的默认根目录设置为用户?

我在我的debian盒子上安装了proftpd,但是在configuration上遇到了一些麻烦。 在我的proftpd.conf中添加了; DefaultRoot ~ !ftp_special 这工作正常,因为除了ftp-special成员之外的所有用户都无法在其主文件夹之外导航。 但是,我希望是ftp-special成员的用户在login到ftp服务器时进入一个特殊的主文件夹,但同时我希望他们能够浏览整个服务器。 现在,如果是ftp-special成员的用户login,他的入口点是根(/)。 提前致谢。

ProFTPd,MySQL,虚拟用户和权限

我想通过MySQL数据库来控制我的ProFTPdauthentication。 用户将能够在PHP Web应用程序中更改其FTP帐户的用户名和密码。 这引起了以下问题:在数据库usertable中设置的用户不匹配系统用户。 所以我无法更改我的文件系统中的目录权限,ProFTPdlogging错误: 用户名chdir(“/ var / www / vhosts / sites / username”):权限被拒绝 但是,我怎么能让这些FTP用户访问这些文件夹? 如果我build立了一个名为www-data的用户,它可以正常工作,但用户名不会在/etc/passwd定义。 我想pipe理的第二件事是限制这个唯一的目录,在这个例子中是/var/www/vhosts/sites/username 。 如果用户不在上面的主目录中,则用户不能访问其他目录。 我该如何解决?

设置只有一个ip可以访问ftp服务

如何在hosts.allow中只允许一个使用ftpd服务的ip? 并拒绝使用hosts.deny中的ftpd服务器的所有ip? 或者还有另一种方法,只允许一个IP可以访问proftpd 我正在使用proftpd 这里是conf文件 # This is the ProFTPD configuration file # # See: http://www.proftpd.org/docs/directives/linked/by-name.html # Server Config – config used for anything outside a <VirtualHost> or <Global> context # See: http://www.proftpd.org/docs/howto/Vhost.html ServerName "ProFTPD server" ServerIdent on "FTP Server ready." ServerAdmin root@localhost DefaultServer on # Cause every FTP user except adm to be chrooted […]

用systemd启动一个程序

我试图将最新版本的ProFTPd(1.3.5)安装到CentOS 7盒子上,最后不得不手动configuration和安装。 原因是EPEL的proftpd版本不包含mod_sftp (尽pipe它包含mod_tls )。 这是EPEL版本安装时proftpd -l的输出: [root@blah /]# proftpd -l Compiled-in modules: mod_core.c mod_xfer.c mod_rlimit.c mod_auth_unix.c mod_auth_file.c mod_auth.c mod_ls.c mod_log.c mod_site.c mod_delay.c mod_facts.c mod_dso.c mod_ident.c mod_readme.c mod_auth_pam.c mod_tls.c mod_memcache.c mod_cap.c mod_ctrls.c mod_lang.c 使用这个家伙的方法,我认为他使用的是CentOS 6 ,我用下面的configuration来configurationproftpd: ./configure –prefix=/usr –with-includes=/usr/local/ssl/include –with-libraries=/usr/local/ssl/lib –enable-openssl –with-modules=mod_sftp –enable-dso 然后我就可以运行make并成功make install 。 问题是,它看起来不像它创build任何systemd脚本: [root@localhost]# systemctl start proftpd.service Failed to issue method […]

使用proftpd如何禁用普通的ftp但是让sftp运行

我们有一个使用proftpd的Debian Linux机器,我们同时运行FTP和SFTP,但是我们希望禁用普通的FTP,并让SFTP运行 有没有办法做到这一点?

ProFTPD:TLSconfiguration中“TLSvalidation客户端”和“NoCertRequest”的含义

我知道每个默认FTP都是不安全的,因为它没有encryption。 为了避免这种不安全的FTP行为,我想在我的ProFTPD中设置一个TLSencryption。 根据这个教程: https ://www.howtoforge.com/tutorial/install-proftpd-with-tls-on-ubuntu-16-04/ ProFTPD中的tlsconfiguration应该如下所示: <IfModule mod_tls.c> TLSEngine on TLSLog /var/log/proftpd/tls.log TLSProtocol TLSv1.2 TLSCipherSuite AES128+EECDH:AES128+EDH TLSOptions NoCertRequest AllowClientRenegotiations TLSRSACertificateFile /etc/proftpd/ssl/proftpd.cert.pem TLSRSACertificateKeyFile /etc/proftpd/ssl/proftpd.key.pem TLSVerifyClient off TLSRequired on RequireValidShell no </IfModule> 很多这些指令都是不言自明的,但我仍然不知道指令“TLSVerifyClient”是什么意思。 根据ProFTPD手册: 如果closures,模块将接受证书并build立SSL / TLS会话,但不会validation证书。 如果打开,模块将validation客户端的证书,而且,除非客户端在服务器请求证书时提供证书,否则将失败所有SSL握手尝试。 但是我认为证书来自服务器本身,为什么服务器接受来自客户端的证书请求呢? 而我的第二个问题,TLSoption指令的“nocertrequest”选项的含义是什么? 符合ProFTPD手册,这个选项的function是: 在处理服务器的证书请求时,一些FTP客户端已知是错误的。 此选项会导致服务器在SSL握手期间不包含这样的请求 在这里,同样的问题是,当服务器本身具有TLS证书时,服务器为什么要向客户端发送证书请求。

在centos中为/ var / www /configurationproftpd用户访问

我在configurationproftpd时遇到困难,允许系统用户访问centos框上的/ var / www /。 proftpd.conf中 ServerName "ProFTPD server" ServerIdent on "FTP Server ready." ServerAdmin root@localhost ServerType standalone DefaultServer on VRootEngine on #DefaultRoot ~ !adm DefaultRoot /var/www/ VRootAlias /etc/security/pam_env.conf etc/security/pam_env.conf AuthPAMConfig proftpd AuthOrder mod_auth_pam.c* mod_auth_unix.c #PersistentPasswd off UseReverseDNS off User nobody Group nobody MaxInstances 20 UseSendfile off LogFormat default "%h %l %u %t \"%r\" %s […]