I need anonymous ftp file upload capabilities in order to upload software (e.g. jdk 1.6) to a solaris 10 box that I am remotely connected to via VPN.
I first executed the solaris command
ftpconfig ftpdir
which I thought would have done everything: create the ftp directory (ftpdir in this case), create the anonymous ftp user accounts (anonymous and ftp), etc.
It actually half works: if I try to connect to it using an ftp client program on my PC, it succeeds. However, if I attempt to upload a file to the pub directory (for which I see rwx permissions), I get this error message in my ftp client:
553 <fileName>: Permission denied on server. (Upload)
Doing some web searching, the most relevant post seemed to be this one:
http://forum.java.sun.com/thread.jspa?threadID=5105078&messageID=9357855
So, I next executed
mkdir incoming
inside ftpdir, and confirmed that incoming's mode is 777 (this is mkdir's default).
Then inside
/etc/ftpd/ftpaccess
I made sure that this line is uncommented:
upload class=anonusers * /incoming yes ftpadm ftpadm 0440 nodirs
I also tried commenting out the line above it
#upload class=anonusers * * no nodirs
but it seems to make no difference wether it is commented out or uncommented.
I then tried to upload via anonymous ftp again, but got the same symptoms: can login just fine, but upload is permission denied.
I guessed that maybe the reason why it still failed was because maybe those changes above require the ftp service to be restarted. I am not exactly sure how to restart it, but web searchign indicates that the following are possible ways:
1.1) ftpshut now
1.2) ftprestart
2.1) svcadm disable svc:/network/ftp:default
2.2) svcadm enable svc:/network/ftp:default
3.1) svcadm restart ftp
I tried all 3 techniques at various times, and all still fail to yield a working ftp upload.
I am at my wits end at this point--which is not hard to reach, as I am an absolute solaris newbie.
If anyone has any further suggestions to make, I would be much obliged.
My only guess at this point is the following: the man pages for ftpd have the curious warning that the ftpaccess file is NOT used by default. (Why? This is borderline buggy behavior, no?) Instead, you need to run
in.ftpd -a
to enable the use of that file. I tried running that command after restarting, but no dice.