PDA

View Full Version : QUIKSERV v1.1 RC1 - now HTTP and FTP



Mike Chambers
September 28th, 2008, 01:08 AM
hello again fellow retro-nerds! i've done a ton of work on the QUIKSERV program i first posted about a week ago. here's the current feature list:

- now fully supports FTP (active and passive) in addition to HTTP
- 16 concurrent sessions, 8 FTP + 8 HTTP
- FTPUSERS.INI file that lets you edit usernames, passwords, permissions, and home folders
- transparent virtual hosting support! yep, based on the "Host" line in the HTTP request header from the browser. if you set up a CNAME on your domain, you can have QUIKSERV use a unique document root path for each (up to 100) - for example you could have mike.example.com requests serve from c:\mike\ while it has steve.example.com requests served from c:\steve\ even though both domains resolve to the same IP
- all activity can be monitored in real-time on screen
- you can modify how many instances of each server type will run, dropping the number will increase performance on really old systems
- optional activity logging to file

the executable is a reasonable 92 KB, and the source code is included in the package. now it's nice to have even if you don't want to run a web server. if you just have vintage PC's with some way to get on your LAN, the FTP server makes it about the easiest way to move files back and forth. :)

i'd love to get bug reports, there's probably something i missed. all i know is if i see one more line of code tonight i'm offing myself. let me know what you guys think! make sure you read the readme.txt and go through all the INI files to get everything configured correctly.

download link:
http://www.rubbermallet.org/qsv11rc1.zip (105 KB)

per
September 28th, 2008, 11:38 AM
I have problems getting my network to work.

I got my Packet-driver installed (at port 0x61), and I've tried to get ntcpdrv to work. (note, I'm just planning to get this to work in a LAN. the computer is conected to a router.) I don't have PBOOT, so my question is: What should I set as IP adresses?

Mike Chambers
September 28th, 2008, 11:39 AM
let me know the IP address of your router and i'll give you some numbers that should work.

per
September 28th, 2008, 11:42 AM
I do also need the other IP stuff like netmask etc...

Mike Chambers
September 28th, 2008, 11:51 AM
sure. if your router is in the 192.168.x.x range, like most, your netmask is 255.255.255.0

per
September 28th, 2008, 11:54 AM
sure. if your router is in the 192.168.x.x range, like most, your netmask is 255.255.255.0

what about the rest of the numbers ntcpdrv needs then?

per
September 28th, 2008, 12:01 PM
Nvm.

It worked.

Mike Chambers
September 28th, 2008, 12:11 PM
cool, any problems? let me know if you find any bugs.

per
September 28th, 2008, 12:26 PM
There doesn't seems to be any activity between my PC and the router... What might be causing this?

Mike Chambers
September 28th, 2008, 01:01 PM
not sure. can you ping?

per
September 28th, 2008, 01:06 PM
not sure. can you ping?

I'll try

per
September 28th, 2008, 01:14 PM
My dad just updated the router firmware, and now it works. Too bad I just deleted Arachne.

Mike Chambers
September 28th, 2008, 01:23 PM
nice! so you are able to browse to it okay?

per
September 28th, 2008, 01:25 PM
nice! so you are able to browse to it okay?

Yes. IDK why it failed in the start.
Ill update to version 1.1 and reboot. I'll make a post as soon as I know if it works then.

per
September 28th, 2008, 01:47 PM
I got the HTTP part to work, but I couldn't figure how to set up the FTP part.
Anyways, thanks for the help. Now, I don't need to spend thousands of floppies and a lot of time to back-up stuff.

Mike Chambers
September 28th, 2008, 03:52 PM
all you have to do is edit the FTPUSERS.INI file in notepad or edit or whatever. it's easy to make an account.

in fact, since it's only on your LAN you don't have to really worry about security. put this line in your FTPUSERS.INI file at the top:


admin,*,rwdn,c:\

the * means it'll accept any password, so just connect to it with username admin, and you can access the entire C drive. :)

Ole Juul
September 28th, 2008, 04:30 PM
Speaking of just being on the LAN. The myip entry in quikserv.ini states it should be my real internet ip. Why is that? I tried it with the machines LAN ip and that works too. Would you clarify please.

PS: So far everyting works here. Great work!

Mike Chambers
September 28th, 2008, 05:00 PM
Speaking of just being on the LAN. The myip entry in quikserv.ini states it should be my real internet ip. Why is that? I tried it with the machines LAN ip and that works too. Would you clarify please.

PS: So far everyting works here. Great work!

that will work for passive mode FTP transfers just locally on your LAN, but if somebody from the internet tried passive mode then they wouldnt be able to connect for the data download because QUIKSERV has to be able to give your internet IP to the client first.

glad it's working, and thanks! :D

Mike Chambers
September 28th, 2008, 06:59 PM
WHOA! the readme.txt i wrote explains NTCPDRV.EXE usage wrong. gotta do it this way:


SET IP=x.x.x.x
SET NETMASK=x.x.x.x
SET GATEWAY=x.x.x.x
NTCPDRV.EXE x.x.x.x 28

where the x.x.x.x after ntcpdrv.exe is just your IP again. sorry about any problems that caused.

the ntcpdrv readme says the way i put in readme.txt should work, but in practice... it doesn't for some reason.

Ole Juul
September 28th, 2008, 08:38 PM
I was a little fast in stating that "everything" worked. :) The http works as before, and I can log into FTP but ... here is what I get:

ftp> ls
200 Command okay.
150 File status okay; about to open data connection.

And there it stays - also with the dir command. The "help" and "pwd" work fine.
When I abort the client I get this:

receive aborted
waiting for remote to finish abort
425 Can't open data connection.-1 0
I've gone over and over the INI files. Any suggestions?

Mike Chambers
September 28th, 2008, 09:07 PM
I was a little fast in stating that "everything" worked. :) The http works as before, and I can log into FTP but ... here is what I get:

ftp> ls
200 Command okay.
150 File status okay; about to open data connection.

And there it stays - also with the dir command. The "help" and "pwd" work fine.
When I abort the client I get this:

receive aborted
waiting for remote to finish abort
425 Can't open data connection.-1 0
I've gone over and over the INI files. Any suggestions?

are you just using it over your LAN? because if you set "myip" to your internet IP but then do not have your FTP data ports (not port 21, the other ones) forwarded on your router to passthru to your QUIKSERV computer you will not be able to use passive mode.

if you're just using it on the LAN, re-comment out the myip line, or type the LAN IP of your QUIKSERV machine. let me know if that helps you.

Ole Juul
September 29th, 2008, 10:10 AM
if you're just using it on the LAN, re-comment out the myip line, or type the LAN IP of your QUIKSERV machine. let me know if that helps you.
Thanks for your reply. Yep, I'm using the LAN IP. Things are still the same. I should say though that this is from the plain old ftp client on my linux box. Perhaps there is some security there of which I am not aware, but it works when I run the NCSA telnet (ftp) server on the same DOS machine as I'm running QUIKSERV. My router is a plain jane wrt54gl with no special setup. One update though: I discovered that watftp from another dos computer works fine. Still, I'd like to connect with everything.

I just ran ftp with debug on but I don't understand the output. Here it is:

ftp> debug
Debugging on (debug=1).
ftp> dir
ftp: setsockopt (ignored): Permission denied
---> PORT 192,168,1,101,135,106
200 Command okay.
---> LIST
150 File status okay; about to open data connection.

And there it sits. Any more suggestions?

Mike Chambers
September 29th, 2008, 11:27 AM
Thanks for your reply. Yep, I'm using the LAN IP. Things are still the same. I should say though that this is from the plain old ftp client on my linux box. Perhaps there is some security there of which I am not aware, but it works when I run the NCSA telnet (ftp) server on the same DOS machine as I'm running QUIKSERV. My router is a plain jane wrt54gl with no special setup. One update though: I discovered that watftp from another dos computer works fine. Still, I'd like to connect with everything.

I just ran ftp with debug on but I don't understand the output. Here it is:

ftp> debug
Debugging on (debug=1).
ftp> dir
ftp: setsockopt (ignored): Permission denied
---> PORT 192,168,1,101,135,106
200 Command okay.
---> LIST
150 File status okay; about to open data connection.

And there it sits. Any more suggestions?

it looks like your ftp client isn't allowed to open a listening port. have you tried running it as a superuser?

Mike Chambers
September 29th, 2008, 12:04 PM
btw, guys i found a NTCPDRV secret... i have increased the download speed from my 286 server from 8 KB/s to a solid 18 KB/s by starting NTCPDRV like this:

NTCPDRV.EXE -ip=x.x.x.x -netmask=x.x.x.x -gateway=x.x.x.x -mss=4096 -rwin=4096 ip.goes.here.again 28

and then change the pktlen line in QUIKSERV.INI to 3200

Ole Juul
September 29th, 2008, 01:44 PM
it looks like your ftp client isn't allowed to open a listening port. have you tried running it as a superuser?
I get exactly the same problem as root. After a bit of searching, I now understand the error message above:
ftp: setsockopt (ignored): Permission denied
---> PORT 192,168,1,101,135,106
That means that it is asking for port 135x256+106=34666. I tried setting a port that high in QUIKSERV and it overflows. Besides the linux client asks for a different port every time. I'm guessing this the active/passive thing which I don't totally grok. I have no idea what to configure, it just always works and I use it a lot. There is no information on configuring a linux ftp client, it seems nobody does it, or needs to do it. I'm sure it's just some little thing and I'll figure it out at some point. In the meanwhile the QUIKSERV http works like a charm.

Mike Chambers
September 29th, 2008, 02:37 PM
I get exactly the same problem as root. After a bit of searching, I now understand the error message above:
ftp: setsockopt (ignored): Permission denied
---> PORT 192,168,1,101,135,106
That means that it is asking for port 135x256+106=34666. I tried setting a port that high in QUIKSERV and it overflows. Besides the linux client asks for a different port every time. I'm guessing this the active/passive thing which I don't totally grok. I have no idea what to configure, it just always works and I use it a lot. There is no information on configuring a linux ftp client, it seems nobody does it, or needs to do it. I'm sure it's just some little thing and I'll figure it out at some point. In the meanwhile the QUIKSERV http works like a charm.

i'm glad you found that problem! this is why public testing is awesome. :)

i can fix that overflow issue now... next release it'll be taken care of.

Ole Juul
September 29th, 2008, 04:26 PM
i can fix that overflow issue now... next release it'll be taken care of.
Great! Save me a copy. :)

per
October 25th, 2008, 08:13 AM
BUG FOUND:
when browsing in FTP, if I open a folder containing nothing but sub-folders, the folder will appear empty.

Mike Chambers
October 25th, 2008, 09:24 AM
BUG FOUND:
when browsing in FTP, if I open a folder containing nothing but sub-folders, the folder will appear empty.

oi! thanks for the report.. i'm going to give that a shot. :o

per
October 25th, 2008, 09:27 AM
oi!

didn't know you could speak Norwegian? :p

often used in causes like:
oi!
oi-da!
oi-san!
oi-oi-oi!
all of them translate to something like "Yikes!"

per
October 25th, 2008, 01:20 PM
On another note, is there any possible way to browse hidden files through Quikserv's FTP service?

per
October 26th, 2008, 01:37 PM
ANOTHER BUG FOUND:
The file-created dates are returned wrong. The files on my computers are mainly from about 1992-1994, howerer, all the files/folders I see when browsing in FTP is dated from 2006 to 2008 (and I am browsing the right computer).