How to install ProFTPD on CentOS 7.0 にProFTPDをインストール

CentOS には VSFTPD と組み合わせが決まっているようですが、VSFTPD はいろいろと使いにくいことは前から思っていて、とうとうProFTPDへの乗り換えに成功した。
最大の理由は、VSFTPD では、タイムスタンプの維持ができないこと。例えば、ローカルPCのファイルのタイムスタンプが、サーバーにアップすると、アップした時のサーバーの時間になる。SFTPで転送すれば、維持されるかもしれないが、転送速度が遅くなる。

最終解決は、ProFTPDをインストールすること。

ProFTPDのインストール

EPELを有効にします。

RPM -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm

ProFTPDとOpenSSLをインストール (openssl は既にインストール済みかも)

yum install -y proftpd openssl proftpd-utils

サービスを開始

systemctl start proftpd.service
systemctl enable proftpd.service

ファイアウォールのFTPポートを開けます:

firewall-cmd --add-service=ftp --permanent
firewall-cmd --reload

ProFTPDのバージョン確認:

proftpd -v


 ProFTPDのTLSを有効にする  

proftpd.conf 設定ファイルのバックアップ:

cp /etc/proftpd.conf /etc/proftpd.conf.bak
nano /etc/proftpd.conf 

proftpd.conf に次の赤文字の部分を追加する。

[...]DefaultRoot                     ~ !adm
PassivePorts    6000    6100
[...] 
#<IfDefine TLS>
  TLSEngine                     on
  TLSRequired                   on
  TLSRSACertificateFile         /etc/pki/tls/certs/proftpd.pem
  TLSRSACertificateKeyFile      /etc/pki/tls/certs/proftpd.pem
  TLSCipherSuite                ALL:!ADH:!DES
  TLSOptions                    NoCertRequest
  TLSVerifyClient               off
  TLSRenegotiate                ctrl 3600 data 512000 required off timeout 300
  TLSLog                        /var/log/proftpd/tls.log
#  <IfModule mod_tls_shmcache.c>
#    TLSSessionCache            shm:/file=/var/run/proftpd/sesscache
#  </IfModule>
#</IfDefine>
[...] 

6000 - 6100 ポートを使うので、ファイヤーウォールを開ける。:

firewall-cmd --add-port=6000-6100/tcp --permanent
firewall-cmd --reload

開いているか確認:

firewall-cmd --list-ports

SELINUX が有効になっている場合は.

setsebool -P allow_ftpd_full_access=1

 /etc/pki/tls/certsにTLSの証明書を作成する:

openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/pki/tls/certs/proftpd.pem -out /etc/pki/tls/certs/proftpd.pem

[root@server1 certs]# openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/pki/tls/certs/proftpd.pem -out /etc/pki/tls/certs/proftpd.pem 
Generating a 1024 bit RSA private key
...................................++++++
.........++++++
writing new private key to '/etc/pki/tls/certs/proftpd.pem'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:<--JP
State or Province Name (full name) []:<--Kyushu
Locality Name (eg, city) [Default City]:<--Nobeoka
Organization Name (eg, company) [Default Company Ltd]:<--ISPConfig
Organizational Unit Name (eg, section) []:<--Development
Common Name (eg, your name or your server's hostname) []:<--server1.example.com
Email Address []:<--info@example.com
[root@server1 certs]#

パーミッション変更:

chmod  0440 /etc/pki/tls/certs/proftpd.pem

ProFTPD service を再起動:

systemctl restart proftpd.service

これで完了:

Filezilla を使用する場合、タイムスタンプの維持のためには、メニューの
[転送]-[転送したファイルのタイムスタンプを維持する]
をチェック。

  • GCPからGCPへの移転方法AWS, Azure 等の他のクラウドサーバーからGCP(Google Cloud Platform)に移転する方法はよく論じられているが、GCPのAアカウントからBアカウントに移転するにはどうしたらよいのだろうか? Compute Engine のVMインスタンスを、他のGCP アカウントのCompute Engine に移転又はコピーするにはどうしたらよいのだろうか? プロジェクトの共有 試行錯誤の上、たどり着いたのがプロジェクトの共有であった。GCPのトップページ、ダッシュボードの最初にプロジェクト情報のカードがあり、其の中に「このプロジェクトにユーザーを追加」という項目がある。そこをクリックして、他のGCPアカウントのGma...
  • Kusanagi WordPress プラットフォームでは Fcache とBcache がある。 Fcache とはNginx ヱブサーバーのキャッシュ機能であり、Kusanagi の独自機能ではない。Nginx のアクセスログを眺めていると、  BYPASS MISS EXPIRED のみで、HITが殆どない。 トップ頁、アーカイブリストの頁ではHIT、 個別投稿頁では、BYPASS MISS EXPIRED ばかりでHITがない。Kusanagi fcache on とすると、fcache は有効になったかのように思えるが、本当にキャッシュが効いているのかどうかはログで確認しないとわからない。まず、Wordpressの編集画面にログインし...
  • HTTPD アクセスログの日本語化 Nginx,  Apache ヱブサーバーのアクセスログを見ると、日本語URLはエンコードされていて読めない。 そこで、デコードして表示させる。 ログのファイル名が ssl_access.log だとすると、tail -f ssl_access.log| perl -ne 'use URI::Escape; print uri_unescape($_);' tail -f access.log | php -R 'echo urldecode($argn)."\n";'で、日本語URlが読める状態で出力される。 Apacheのログをデコードする方法 - Life with ITプログラマ x ...
  • Google Cloud Platform のGoogle Compute Engine のインスタンスを標準のHDD ハードディスクで作成してしまった。 その後、SSDに変更したい場合はどうすればよいか?まず、インスタンスのスナップショットを作成する。「VM インスタンスの詳細」をクリック表示すると、 「同様のものを作成」というメニュー項目が出るのでクリックする。その際に、HDDではなく、「新しい 50 GB の SSD 永続ディスク 」を選択して同様のインスタンスを作成する。 そうすると、ファイヤーウォールの設定などはそのままコピーされているので再設定しなおさなくてよい。 新インスタンスが作成され、起動している状態になる。唯...
  • Google Cloud Platform上の コンピュートエンジンのインスタンス、LinuxサーバーをWebmin から、約60のソフトウェアのアップデートをしようとしたら、新カーネルのインストールに失敗。 理由は、/boot のディスク容量不足。 そこでSSHでログインし、 /boot にあったファイルを一覧する。dr-xr-xr-x. 6 root root 4096 5月 8 11:20 . dr-xr-xr-x. 20 root root 4096 4月 22 21:39 .. -rw-r--r-- 1 root root 171 8月 15 2018 .vmlinuz-3.10.0-862.11.6.el7.x86_64.hmac -rw-r--r-- 1 roo...
  • VirtualBox を 5.2.22 にアップグレードしたからか、 突然、vagrant up しても起動しなくなった。 SSH auth method: private key のところで止まる。 ホストOS が Fedora Linux でも Windows でも同じ症状だった。$ vagrant up Bringing machine 'default' up with 'virtualbox' provider... ==> default: Checking if box 'yuya_tajima/kusanagi' is up to date... ==> default: Clearing any previously set forwarded ...
  • Mediawiki に Extension:Scribunto を追加する。Wikipedia:Lua - Wikipediaja.wikipedia.org下の方に、 We have developed a PHP extension written in C called LuaSandbox. It can be used as an alternative to the standalone binary, and will provide improved performance. See LuaSandbox for details and insta...
  • 既存の Kusanagi の Nginx にGoogle の PageSpeed モジュールを追加してみた。 PageSpeed Module | Google DevelopersThe PageSpeed modules are open-source server modules that optimize your site automatically.Google Developers PageSpeed Nginx の作成+設置方法 以下の方法は既にインストールされている nginx に PageSpeed モジ...

Linux カテゴリ人気記事 Views most

タグ関連記事

閲覧履歴