Tag Info

Hot answers tagged

10

Your ftp server needs a channel to transfer data. Port 21 is used to establish the connection. So to make data transfer possible you'd need to enable port 20 as well. See the following configuraton First load the following module to make sure passive ftp connections are not rejceted modprobe ip_conntrack_ftp Allow FTP connections on port 21 incoming and ...


10

To achieve this need following things : Method 1# By changing User's Home directory Make sure following line exists chroot_local_user=YES Set User HOME Directory to /var/www/ , if you want to change for existing user then you can use : usermod --home /var/www/ username then set required permission on /var/www/ Method 2# If you don't want to ...


9

Not with the ftp programs I've run into, as they expect a script on their standard input but a shebang would pass the script name on their command line. You can use a here document to pass a script to ftp through a shell wrapper. #!/bin/sh ftp <<EOF open 192.168.1.1 put *.gz EOF Lftp accepts a script name passed as an argument. #!/usr/bin/lftp -f ...


9

FTP has quite a few commands. While the client maps some of these to a more userfriendly text interface. For example, if you use ftp -v (depending on your ftp client, the one I use needs ftp -vd), you'll notice something like the following (---> shows what is sent to the server): $ ftp -vd ftp.debian.org Connected to ftp.debian.org. 220 ftp.debian.org ...


8

It's quite simple. You have to add the following option on the vsftpd.conf file chroot_local_user=YES The documentation inside the configuration file is self-explanatory: # You may specify an explicit list of local users to chroot() to their home # directory. If chroot_local_user is YES, then this list becomes a list of # users to NOT chroot(). This ...


7

Give this a try: $ lftp lftp :~> set ftp:ssl-force true lftp :~> connect ftp.domain.tld lftp ftp.domain.tld:~> login <username> NOTE: If the server is making use of self signed certificates you may need to add this set as well: lftp :~> set ssl:verify-certificate no


6

I don't know if it is good practice to answer my own question but I found a simple solution that enables ftp login. I needed to add the line /usr/sbin/nologin to the file /etc/shells. Right after this modification the ftp server started to accept login from users to whom the shell is set /usr/sbin/nologin. So they cannot login through ssh but it works ...


6

What you have is not a unix command line, what you have is an FTP session. FTP is designed primarily to upload and download files, it's not designed for general file management, and it doesn't let you run arbitrary commands on the server. In particular, as far as I know, there is no way to trigger a file copy on the server: all you can do is download the ...


6

Since you're using Gnome on Ubuntu, why not use the default file manager (Nautilus)? Under Ubuntu 10.04, choose “Connect to Server” in the Places menu, select “Public FTP” or “FTP (with login)” as the service type, enter the server name and other parameters (you can define bookmarks in this dialog box too), and voilà.


6

Use read (see help read) - can be like this: read -p "please enter ftp server : " SERVER read -p "username : " USERNAM IFS= read -s -p "password :" USERPSS In this way, you'll have the server, username and password collected in variables, respectively, $SERVER, $USERNAM and $USERPSS. (Note that because of -s, the password will not be echoed and thanks to ...


6

Whew. I solved the problem. It amounts to a config but within /etc/pam.d/vsftpd Because ssh sessions succeeded while ftp sessions failed, I went to /etc/pam.d/vsftpd, removed everything that was there and instead placed the contents of ./sshd to match the rules precisely. All worked! By method of elimination, I found that the offending line was: ...


6

You could use the SCP program that comes with famed terminal emulator PuTTY: pscp.exe If you create public/private key files, pscp.exe should have the ability to just do something like: pscp *.csv *.txt username@unixhost:whatever/subdirectory/ from inside a .bat file.


6

There are two likely reasons that this could happen -- you do not have write and execute permissions on the directories leading to the directory you are trying to upload to, or vsftpd is configured not to allow you to upload. In the former case, use chmod and chown as appropriate to make sure that your user has these permissions on every intermediate ...


6

SFTP is not FTP. It's the sftp subsystem of ssh, it's handled by the sshd daemon, not vsftpd or any FTP server. It's on the ssh TCP port (22), not the FTP port 21 (well FTP commands are on 21 while data connections are on arbitrary ports, and those multiple connections in FTP are one of the many reasons why SFTP is so much better than FTP). ss -lp sport = ...


6

Symlinks themselves have 777 because in Unix, file security is judged on a file/inode basis. If it's the same data they're operating on, it should have the same security conditions, regardless of the name you gave the system to open it. [root@hypervisor test]# ls -l total 0 lrwxrwxrwx. 1 root root 10 Jun 8 16:01 symTest -> /etc/fstab [root@hypervisor ...


6

You might be looking for rcp, it performs remote execution via rsh so you will have to rely on that and have in mind that all communication is unsecure.


5

Ideally those would be SFTP accounts, using SSH public key authentication rather than passwords. You'd gain both security and convenience. But let's assume you don't have a choice of not using FTP with passwords. You could store the passwords (the .netrc file) on an encrypted filesystem and mount that filesystem only when you want to access it. A simple way ...


5

Why it doesn't work When you attempt to change the modification time of a file with touch, or more generally with the underlying system call utime, there are two cases. You are attempting to set the file's modification time to a specific time. This requires that you are the owner of the file. (Technically speaking, the process's effective user ID must be ...


5

from man ftp on my CentOS If auto-login is enabled, ftp will check the .netrc (see below) file in the user’s home directory for an entry describing an account on the remote machine. If no entry exists, ftp will prompt for the remote machine login name (default is the user identity on the local machine), and, if necessary, ...


5

The standard ftp protocol does not allow it (You can check the list of commands). So you would have to download everything just to be able to grep on it.


5

You can use curlftpfs to mount remote ftp as local disk and manipulate with files as on your local machine.


5

You probably have to use something more sophisticated. FTP itself (if I remember correctly) is not able to transfer entire directories, all it knows about is transferring a file. Thus the client has to translate your request "send this directory" into a sequence of upload this file (possibly preceded by make this directory). One such sophisticated client ...


5

lftp would do this with the command mirror -R -P 20 localpath - mirror syncs between locations, and -R uses the remote server as the destination , with P doing 20 parallel transfers at once. As explained in man lftp: mirror [OPTS] [source [target]] Mirror specified source directory to local target directory. If target directory ends with a ...


5

Non-chroot access If you don't have a FTP server setup, and you trust the user that will be logging in, not to go poking around your server too much, I'd be inclined to give them an account to SFTP into the system instead. The CentOS wiki maintains a simple howto titled: Simple SFTP setup that makes this pretty pain free. I say it's pain free because you ...


4

You can use shell globbing on the remote system by making sure glob is on, then doing mget. See http://www.proftpd.org/docs/howto/Globbing.html for more information. I believe that's as far as you can get with FTP. If you can get ssh acess instead, there is much more that you can do, including grepping and modifying the files on the server.


4

Use just about any FTP client other than the basic ftp program. Store your password in ~/.netrc and use wget: wget -r ftp://username@example.com/path/to/directory Keep in mind that the -r option has a default maximum depth of 5. You can use -l to increase it. Use lftp: open username@example.com mirror /path/to/directory Use ncftp: open -u username ...


4

With SSH unavailable (and possibly no UNIX/Linux machine the FTP server runs on, you could use netcat otherwise, too), the following might work: Using curl, you can upload from STDIN to a file via FTP this way: tcpdump -w - | curl -u FTPUSER:FTPPASS ftp://ftpserver/where/ever/dump.pcap -T - where tcpdump outputs raw packets (compare this question) and ...


4

Two suggestions: Does whatever user ID that will run FTP have "write" permissions on the "root" directory that vsftpd will use as its current working directory? vsftpd doesn't want a writable working directory. The vsftpd.conf file can have a hide_file directive. Depending on the regular expression specified by that directive, anonymous users might not ...



Only top voted, non community-wiki answers of a minimum length are eligible