Toto je starší verze dokumentu!


Jak nainstalovat a nakonfigurovat ftp server, vybral jsem si ProFTPD.

Instalace

Nejprve si vytvoříme strukturu do postgresql. Vytvoříme se uživatele v databázi.

CREATE USER ftpuser;
REVOKE CREATE ON SCHEMA public FROM PUBLIC;
REVOKE USAGE ON SCHEMA public FROM PUBLIC;
GRANT CREATE ON SCHEMA public TO postgres;
GRANT USAGE ON SCHEMA public TO postgres;
CREATE DATABASE ftpserver WITH OWNER ftpuser;
a změníme si pro uživatele ftpuser heslo
\password ftpuser
dále vytvoříme strukturu
CREATE SEQUENCE seq_ftpuser_id START 1;
CREATE TYPE QuotaType AS ENUM ('user','group','class','all');
CREATE TYPE PerSession AS ENUM ('true','false');
CREATE TYPE LimitType AS ENUM ('soft','hard');

CREATE TABLE ftpgroup (
  groupname varchar(16) NOT NULL,
  gid smallint NOT NULL default 5500,
  members varchar(16) NOT NULL default ''
);

CREATE TABLE ftpquotalimits (
  name varchar(30) default NULL,
  quota_type QuotaType NOT NULL default 'user',
  per_session PerSession NOT NULL default 'false',
  limit_type LimitType NOT NULL default 'soft',
  bytes_in_avail bigint NOT NULL default 0,
  bytes_out_avail bigint NOT NULL default 0,
  bytes_xfer_avail bigint NOT NULL default 0,
  files_in_avail integer NOT NULL default 0,
  files_out_avail integer NOT NULL default 0,
  files_xfer_avail integer NOT NULL default 0
);

CREATE TABLE ftpquotatallies (
  name varchar(30) NOT NULL,
  quota_type QuotaType NOT NULL default 'user',
  bytes_in_used bigint NOT NULL default 0,
  bytes_out_used bigint NOT NULL default 0,
  bytes_xfer_used bigint NOT NULL default 0,
  files_in_used int NOT NULL default 0,
  files_out_used int NOT NULL default 0,
  files_xfer_used int NOT NULL default 0
);

CREATE TABLE ftpuser (
  id integer NOT NULL DEFAULT nextval('seq_ftpuser_id'),
  userid varchar(32) NOT NULL,
  passwd varchar(32) NOT NULL,
  uid smallint NOT NULL default 2001,
  gid smallint NOT NULL default 2001,
  homedir varchar(255) NOT NULL,
  shell varchar(16) NOT NULL default '/sbin/nologin',
  count integer NOT NULL default 0,
  accessed TIMESTAMP NOT NULL default current_timestamp,
  modified TIMESTAMP NOT NULL default current_timestamp,
  PRIMARY KEY (id),
  UNIQUE (userid)
);
nainstalujeme si ProFTPD
apt-get install proftpd-mod-pgsql
vytvoříme si uživatele a skupinu pro fungování ftp
groupadd -g 2001 ftpgroup
useradd -u 2001 -s /bin/false -d /bin/null -c "proftpd user" -g ftpgroup ftpuser
nakonfigurejeme si ftp server, začneme souborem /etc/proftpd/modules.conf, povolíme/zakážeme následující moduly

  • it/linux/proftpd.1454868557.txt.gz
  • Poslední úprava: 2016/02/07 19:09
  • autor: kourim