Hi,
ich möchte 2 vsftpd server laufen lassen und verschiedene Config Files vewengen. Ich habe gelesen, dass man das mit xinetd veranstalten kann und möchte das jetzt in Gang bringen.
Dazu habe ich erstmal die default vsftpd.conf ein wenig bearbeitet:
listen habe ich auf NO gesetzt. Soll doch so sein wenn der server nicht standalone läuft oder?
Die xinetd.conf sieht so aus:
Es werden also die Dienste aus /etc/xinetd.d/ gestartet, welche da wären
vsftpd habe ich selbst angelegt und hiermit gefüllt:
Wenn ich jetzt verbinden will kommt
und das obwohl ich local_enable=YES und anonymous_enable=NO gesetzt habe.
Warum ist das so?
-------------------------------------------------------------------------------------------------------------------
EDIT:
Also ich hab das ganze jetzt am laufen und möchte hier kurz auflisten was ich getan habe:
1)
xinet installieren logisch
2)
In die Datei /etc/services einen weiteren Dienst eintragen, bei mir sieht das so aus:
Der zusätzliche Eintrag ist "vsftpd_local" und die Änderung von Port 21 auf 27566 bei "ftp".
3)
Dann muss man in /etc/xinetd.d/ für die 2 FTP Server die man haben will jeweils eine Datei anlegen:
4)
Die Inhalte der beiden Files stimmen bis auf den Service Name und "server_args" überein:
Der Service Name enspricht natürlich dem Namen in /etc/services.
Dann war es eigentlich mir einem /etc/init.d/xinetd restart getan und es lief.
ich möchte 2 vsftpd server laufen lassen und verschiedene Config Files vewengen. Ich habe gelesen, dass man das mit xinetd veranstalten kann und möchte das jetzt in Gang bringen.
Dazu habe ich erstmal die default vsftpd.conf ein wenig bearbeitet:
Code:
# Example config file /etc/vsftpd.conf
#
# The default compiled in settings are fairly paranoid. This sample file
# loosens things up a bit, to make the ftp daemon more usable.
# Please see vsftpd.conf.5 for all compiled in defaults.
#
# READ THIS: This example file is NOT an exhaustive list of vsftpd options.
# Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's
# capabilities.
#
#
# Run standalone? vsftpd can run either from an inetd or as a standalone
# daemon started from an initscript.
listen=NO
#
# Run standalone with IPv6?
# Like the listen parameter, except vsftpd will listen on an IPv6 socket
# instead of an IPv4 one. This parameter and the listen parameter are mutually
# exclusive.
#listen_ipv6=YES
#
# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
anonymous_enable=NO
#
# Uncomment this to allow local users to log in.
local_enable=YES
#
# Uncomment this to enable any form of FTP write command.
write_enable=YES
#
# Default umask for local users is 077. You may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
#local_umask=022
#
# Uncomment this to allow the anonymous FTP user to upload files. This only
# has an effect if the above global write enable is activated. Also, you will
# obviously need to create a directory writable by the FTP user.
#anon_upload_enable=YES
#
# Uncomment this if you want the anonymous FTP user to be able to create
# new directories.
#anon_mkdir_write_enable=YES
#
# Activate directory messages - messages given to remote users when they
# go into a certain directory.
dirmessage_enable=YES
#
# Activate logging of uploads/downloads.
xferlog_enable=YES
#
# Make sure PORT transfer connections originate from port 20 (ftp-data).
connect_from_port_20=YES
#
# If you want, you can arrange for uploaded anonymous files to be owned by
# a different user. Note! Using "root" for uploaded files is not
# recommended!
#chown_uploads=YES
#chown_username=whoever
#
# You may override where the log file goes if you like. The default is shown
# below.
#xferlog_file=/var/log/vsftpd.log
#
# If you want, you can have your log file in standard ftpd xferlog format
#xferlog_std_format=YES
#
# You may change the default value for timing out an idle session.
#idle_session_timeout=600
#
# You may change the default value for timing out a data connection.
#data_connection_timeout=120
#
# It is recommended that you define on your system a unique user which the
# ftp server can use as a totally isolated and unprivileged user.
#nopriv_user=ftpsecure
#
# Enable this and the server will recognise asynchronous ABOR requests. Not
# recommended for security (the code is non-trivial). Not enabling it,
# however, may confuse older FTP clients.
#async_abor_enable=YES
#
# By default the server will pretend to allow ASCII mode but in fact ignore
# the request. Turn on the below options to have the server actually do ASCII
# mangling on files when in ASCII mode.
# Beware that on some FTP servers, ASCII support allows a denial of service
# attack (DoS) via the command "SIZE /big/file" in ASCII mode. vsftpd
# predicted this attack and has always been safe, reporting the size of the
# raw file.
# ASCII mangling is a horrible feature of the protocol.
#ascii_upload_enable=YES
#ascii_download_enable=YES
#
# You may fully customise the login banner string:
#ftpd_banner=Welcome to blah FTP service.
#
# You may specify a file of disallowed anonymous e-mail addresses. Apparently
# useful for combatting certain DoS attacks.
#deny_email_enable=YES
# (default follows)
#banned_email_file=/etc/vsftpd.banned_emails
#
# You may restrict local users to their home directories. See the FAQ for
# the possible risks in this before using chroot_local_user or
# chroot_list_enable below.
chroot_local_user=NO
#
# 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().
#chroot_list_enable=YES
# (default follows)
#chroot_list_file=/etc/vsftpd.chroot_list
#
# You may activate the "-R" option to the builtin ls. This is disabled by
# default to avoid remote users being able to cause excessive I/O on large
# sites. However, some broken FTP clients such as "ncftp" and "mirror" assume
# the presence of the "-R" option, so there is a strong case for enabling it.
#ls_recurse_enable=YES
#
#
# Debian customization
#
# Some of vsftpd's settings don't fit the Debian filesystem layout by
# default. These settings are more Debian-friendly.
#
# This option should be the name of a directory which is empty. Also, the
# directory should not be writable by the ftp user. This directory is used
# as a secure chroot() jail at times vsftpd does not require filesystem
# access.
secure_chroot_dir=/var/run/vsftpd
#
# This string is the name of the PAM service vsftpd will use.
pam_service_name=vsftpd
#
# This option specifies the location of the RSA certificate to use for SSL
# encrypted connections.
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
# This option specifies the location of the RSA key to use for SSL
# encrypted connections.
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
listen habe ich auf NO gesetzt. Soll doch so sein wenn der server nicht standalone läuft oder?
Die xinetd.conf sieht so aus:
Code:
# Simple configuration file for xinetd
#
# Some defaults, and include /etc/xinetd.d/
defaults
{
log_type = SYSLOG daemon info
log_on_success = HOST PID
log_on_failure = HOST
per_source = 5
}
includedir /etc/xinetd.d
Es werden also die Dienste aus /etc/xinetd.d/ gestartet, welche da wären
Code:
mathias@wizard:/etc/xinetd.d$ ls
chargen daytime discard echo time vsftpd
mathias@wizard:/etc/xinetd.d$
vsftpd habe ich selbst angelegt und hiermit gefüllt:
Code:
service ftp
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/sbin/vsftpd
nice = 10
}
Wenn ich jetzt verbinden will kommt
Code:
mathias@wizard:/etc/xinetd.d$ ftp localhost
Connected to localhost.
220 (vsFTPd 2.0.5)
Name (localhost:mathias): mathias
530 This FTP server is anonymous only.
Login failed.
ftp>
Warum ist das so?
-------------------------------------------------------------------------------------------------------------------
EDIT:
Also ich hab das ganze jetzt am laufen und möchte hier kurz auflisten was ich getan habe:
1)
xinet installieren logisch
2)
In die Datei /etc/services einen weiteren Dienst eintragen, bei mir sieht das so aus:
Code:
mathias@wizard:~$ cat /etc/services | grep ftp
ftp-data 20/tcp
ftp 27566/tcp
vsftpd_local 31788/tcp
tftp 69/udp
sftp 115/tcp
ftps-data 989/tcp # FTP over SSL (data)
ftps 990/tcp
venus-se 2431/udp # udp sftp side effect
codasrv-se 2433/udp # udp sftp side effect
frox 2121/tcp # frox: caching ftp proxy
zope-ftp 8021/tcp # zope management by ftp
3)
Dann muss man in /etc/xinetd.d/ für die 2 FTP Server die man haben will jeweils eine Datei anlegen:
Code:
mathias@wizard:/etc/xinetd.d$ ls -all
total 24
drwxr-xr-x 2 root root 4096 2008-03-05 21:26 .
drwxr-xr-x 132 root root 12288 2008-03-05 21:24 ..
-rw-r--r-- 1 root root 469 2008-03-03 12:13 vsftpd
-rw-r--r-- 1 root root 297 2008-03-03 12:09 vsftpd_local
4)
Die Inhalte der beiden Files stimmen bis auf den Service Name und "server_args" überein:
Code:
mathias@wizard:/etc/xinetd.d$ cat ./vsftpd
# vsftp daemon.
service ftp
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/sbin/vsftpd
per_source = 5
instances = 200
log_on_success += PID HOST DURATION
log_on_failure += HOST
nice = 10
server_args = /etc/vsftpd.conf
}
Code:
mathias@wizard:/etc/xinetd.d$ cat ./vsftpd_local
# vsftp daemon.
service vsftpd_local
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/sbin/vsftpd
per_source = 5
instances = 200
log_on_success += PID HOST DURATION
log_on_failure += HOST
nice = 10
server_args = /etc/vsftpd.conf_local
}
Der Service Name enspricht natürlich dem Namen in /etc/services.
Dann war es eigentlich mir einem /etc/init.d/xinetd restart getan und es lief.