SSブログ

「webmin」に「vsftpd」の制御をさせる。 [Webimin]

「webmin」に「vsftpd」の制御をさせる。

■サードパーティ製の「vsftpdモジュール」をダウンロード。

       
http://www.webmin.com/index.html
http://www.webmin.com/third.html
http://www.webmin.com/cgi-bin/search_third.cgi?search=vsftpd
http://provider4u.de/downloads.html
http://provider4u.de/images/downloads/vsftpd.tar.gz ←ダウンロードする。
       
      
「Webmin」の公式サイトからサードパーティ製の「vsftpd」用のモジュールをダウンロードします。
 これを「Webmin」にインストールするのですが、方法は沢山ありましたが、今回は「Windows」にファイルをダウンロードしてから、ブラウザを通してインストールしてみます。

■サードパーティ製の「vsftpdモジュール」をインストール。

       
https://192.168.0.66:10000 ←「Webmin」にアクセス。

webmin_modules.png

webmin_add_modules.png
webmin_module_vsftpd.png
webmin_servers_list.png
webmin_vsftpd_modules_error.png
webmin_vsftpd_module_config.png
webmin_module_vsftpd_config.png
 まずは
「Webmin」→「Webmin 設定」→「Webmin モジュール」→「アップロードしたファイルから」→「ファイルを選択」→「ファイルからモジュールをインストール」
 インストール完了。

 次に
「サーバ」→「Vsftpd」→「Module Configuration.」→「The path and filename to vsftpd.conf」→書き換え「/etc/vsftpd/vsftpd.conf」

 と、パスの変更をするだけで、驚くほど簡単にインストールできましたね。
「vsftpd」は先日インストールしましたが、何も設定らしいことをしていないのでこれでいじってみましょう!
 と意気込んでみましたが、それほど詳細な項目はありませんねぇ。


■---追記---「Webmin」での設定変更と「vsftpd.conf」との関連

       
例:「anonymous」ユーザーにアップロード権限を与える。

「vsftpd.conf」を手動で設定する場合。
[root@centos ~]# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES
write_enable=YES
#anon_upload_enable=YES ←コメントアウトを外す。

「Wibmin」を使用して設定する場合。
「サーバ」→「vsftpd」→「anonymous FTP」→「anonymous enable」→「yes」→「anonymous can uploads」→「yes」→「save changes」
       
      
 いくつかサイトを回ってみたのですが、「vsftpd.conf」を手動で設定する場合、基本的に設定は 「~~~=YES」
 と表記されており
「#~~~=YES」は「No」を表し(というか「設定なし」=「No」という感じかな)、
「~~~=YES」は「Yes」を表しています。

 次に「Webmin」で設定する場合、HTMLのラジオボタン形式で「Yes」「No」を明示的に選択するようになっています。当方は
「Yes」は「~~~=YES」
「No」は「#~~~=YES」
 として、「vsftpd.conf」に反映されると考えておりました。

 しかし実際には「Webmin」で設定し、アップロードはできるようになったのに「vsftpd.conf」の「#anon_upload_enable=YES」はコメントアウトされたままだったので、混乱してしまいました。
「anon_upload_enable=YES」となると考えていたのです。

 色々設定をいじってみたのですが、結果解ったのは、
anon_upload_enable=YES
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
 これらが追記されておりました。「vsftpd.conf」の一番最後に。見落としていました……。
 ごらんのように、「Webmin」で設定した場合、「#」ではなく普通に「YES」「NO」で追記する形で変更されると言うことです。
手動、「Webmin」の両方で設定を変えている場合は、気をつける必要があるかも知れません。


「Webmin」のごく初期の設定。 [Webimin]

「Webmin」のごく初期の設定。

■「Webmin」の自動起動OFF。

       
[bibo-roku@centos ~]$ chkconfig --list | grep webmin ←確認。
webmin          0:off   1:off   2:on    3:on    4:off   5:on    6:off

http://192.168.0.66:10000 ←「Webmin」にアクセス。

webmin_config.png

[bibo-roku@centos ~]$ chkconfig --list | grep webmin ←再度確認。
webmin          0:off   1:off   2:off   3:off   4:off   5:off   6:off
       
      
「Webmin」が自動起動になっているので、「OFF」にします。
 当方の場合はセキュリティ対策と言うよりも、無駄なプロセスを走らせたくないというだけの理由です。

「chkconfig」コマンドで調べてみますとランレベル2と3と5で「ON」になっていますね。通常の起動では「ON」ということです。
 これを「OFF」にしたいのですが、コマンドラインで設定できるのは当然なのですが、「Webmin」自体でも可能なようなので折角ですし試してみます。

「Webmin」にアクセスします。「Webmin」に限ったことではありませんが、「ポート番号」が決まっている通信は当然狙われやすいですよね。変更も視野に入れます。

 左上のメニューの「Webmin 設定」と言う項目をクリックします。
「いいえ」をクリックし「起動時に開始する」をクリックします。

 コマンドラインにて再度確認してみると、ちゃんと全てのランレベルで「OFF」になっていますね。いじりたいときは「/etc/init.d/webmin start」などのコマンドが必要なことを忘れないようにします。
 使い方によっては常時起動していたほうが、いやしていないとできないこともあるんじゃないかな? なので自分に合った使い方で設定しましょう。

■「Webmin」の「SSL」暗号化。

       
webmin_ssl_icon.png

webmin_sll_angou.png

ssl_module_install.png

ssl_module_install_config.png

Error - Document follows ←エラー。

This web server is running in SSL mode. Try the URL https://centos.mydomain:10000/ instead.
       
      
 えーとりあえず色々見てみようといじっていたのですが、セキュリティ上「apache」も「SSL」暗号化をしようかと考えていたところ、ここで発見したのでクリックしてみました。(「Webmin 設定」→「SSL暗号化」クリック。)
 すると画像の通り「SSL」暗号化するには「OpenSSLライブラリ及びNet::SSLeay Perlモジュール」が足りてないとのメッセージが表示されました。

 そして文中には二つのリンクが張られています。
「these instructions」→http://www.webmin.com/ssl.html
「download and install」→http://192.168.0.66:10000/cpan/download.cgi?source=3&cpan=Net::SSLeay&mode=2&return=/webmin/&returndesc=Webmin%20%E8%A8%AD%E5%AE%9A

 しかし、上部はアクセスできませんでしたので、下部のリンクを踏んでみました。
 すると「モジュールのインストール」というページに遷移し、なにやら勝手にコマンドラインが開かれてインストールがはじまりました!
 しかもオプション「-y」で!
 ちょっと見てみたかっただけなのにぃ……。 まぁ、不要ならあとでアンインストールすれば良いかな。
「Webmin 設定に戻る」で一度戻ります。

 次は再度「SSL暗号化」をクリックし、とりあえず「可能であればSSLを使用可能にしますか?」を「はい」にして「保存」をクリックします。

 設定が完了したので、画面左下の「Webmin 設定に戻る」をクリックするとエラーが発生してしまいます。  そう、「保存」した段階で設定が反映され「SSL」が有効になるのでしょう。

■「Webmin」に「SSL」でアクセス。

       
https://192.168.0.66:10000

chrome chrome_error.png
FireFox fierfox_error.png
FireFox fierfox_security_info.png
webmin_access_byhttps.png
 アドレス「http://」を「https://」に変更してアクセスし直してみます。
「Google chrome」と「FireFox」で接続してみました。
「プライバシーが保護されません」とか「安全ではありません」とか表示され、一瞬がっかりしちゃいますが、証明書を自分で作成しているために起きる問題なのでこのまま接続して良いのだそうです。
 信頼はできないけれど、通信自体は「SSL」通信していると言うことなのでしょうか。

 えーと「Webmin」でできることは多岐にわたりますのでその全てを記録することは難しいですね。なので、ごく初歩的なことを記録しようと思っておりました。  しかし、初歩的なことは僅かな入力とクリックで済んでしまいますし、そんなものを「備忘録」に乗せても意味が無いので「日本語化」「新規ユーザー作成」等々は記載を省くことにしました。悪しからず。

 今後は「Webmin」以外のサーバなどで「CUI」では設定の意味がわからないというような時に起動させ活躍して貰おうと思います。



「CentOS 6.6.」に「webimin」をインストールする。 [Webimin]

「CentOS 6.6.」に「webimin」をインストールする。

■「Webmin.repo」の作成。

       
[bibo-roku@centos ~]$ sudo vi /etc/yum.repos.d/webmin.repo ←リポジトリ作成。

[webmin]
name=Webmin Distribution Neutral
#baseurl=http://download.webmin.com/download/yum
mirrorlist=http://download.webmin.com/download/yum/mirrorlist
enabled=0 ←常時OFF。

[bibo-roku@centos ~]$ wget http://www.webmin.com/jcameron-key.asc ←GPG公開鍵の取得。

[bibo-roku@centos ~]$ rpm --import jcameron-key.asc ←GPG公開鍵のインストール。

       
      
 ふと思い出しました。十年ほどは前でしょうか、同僚が「サーバ管理の仕事なんかなくなっちゃうんだろうな」と言っておりました。
 彼は「webmin」の出現で今後のサーバ管理は一般人でも簡単にできるようになると言うのでした。
 実際はご存じの通りですが、私は管理と言うよりも、CUIで設定したいけどよくわからない場合にGUIで変更してみてCUIで確認し理解するという方法をとりたいと思いインストールすることにしました。
 当初は「apache」の設定のためにと思いましたが、OSやらサーバやらが設定できる物だったのですね。すっかり忘れておりました。

 インストールには「rpm」と「yum」どちらにしようかと思いましたが、最新版も「yum」でインストールできるようなので「yum」にしました。

 はじめに「Webmin」の専用「リポジトリ」を「/etc/yum.repos.d」に「vi」コマンドで作成します。
 次に「GPGKEY」をダウンロードしてインストールします。この流れは何度もやってきたのでよく理解できました。

■「Webmin」のインストールと設定。

       
[bibo-roku@centos ~]$ sudo yum install --disablerepo=base,extras,updates --enablerepo=webmin webmin

Operating system is CentOS Linux
Webmin install complete. You can now login to http://centos.mydomain:10000/
as root with your root password.
  Verifying               : webmin-1.740-1.noarch                                           1/1 
インストール:
  webmin.noarch 0:1.740-1                                                                       
完了しました!

[bibo-roku@centos webmin]$ sudo vi miniserv.conf ←編集。

port=10000
root=/usr/libexec/webmin
mimetypes=/usr/libexec/webmin/mime.types
addtype_cgi=internal/cgi
realm=Webmin Server
logfile=/var/webmin/miniserv.log
errorlog=/var/webmin/miniserv.error
pidfile=/var/webmin/miniserv.pid
logtime=168
ppath=
ssl=0
no_ssl2=1
no_ssl3=1
env_WEBMIN_CONFIG=/etc/webmin
env_WEBMIN_VAR=/var/webmin
atboot=1
logout=/etc/webmin/logout-flag
listen=10000
denyfile=\.pl$
log=1
blockhost_failures=5
blockhost_time=60
syslog=1
session=1
premodules=WebminCore
server=MiniServ/1.740
userfile=/etc/webmin/miniserv.users
keyfile=/etc/webmin/miniserv.pem
passwd_file=/etc/shadow
passwd_uindex=0
passwd_pindex=1
passwd_cindex=2
passwd_mindex=4
passwd_mode=0
preroot=gray-theme
passdelay=1
cipher_list_def=1
allow=127.0.0.1 192.168.0.0/24 ←一文追記。

[bibo-roku@centos webmin]$ sudo /etc/rc.d/init.d/webmin restart ←再起動。
       
      
「yum」コマンドで使用するリポジトリIDを「webmin」に限定して(しなくても恐らく大丈夫)インストール成功。あっさりしたものです。

 誰でも操作することが出来るとまずいソフトウェアですので、接続可能なアドレスを「/etc/webmin/miniserv.conf」設定ファイルの最後に追記します。
「allow=127.0.0.1 192.168.0.0/24」前は「localhost」後はプライベートネットワークアドレス「192.168.0」の254台までのアドレス。
 これらからのアドレスからの接続は許可されます。
「webmin」の再起動を実施して変更を反映させます。


■「iptables」の設定。

       
[bibo-roku@centos ~]$ sudo vi /etc/sysconfig/iptables ←編集。

# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10000 -j ACCEPT ←一文追記。
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
~
[bibo-roku@centos ~]$ sudo /etc/init.d/iptables restart ←再起動。
iptables: チェインをポリシー ACCEPT へ設定中filter         [  OK  ]
iptables: ファイアウォールルールを消去中:                  [  OK  ]
iptables: モジュールを取り外し中:                          [  OK  ]
iptables: ファイアウォールルールを適用中:                  [  OK  ]

http://192.168.0.66:10000 ←ポート10000に。

webmin_login.png
webmin_apache.png
「iptables」の設定でポート番号「10000」を開けてやり、再起動します。
 あとはブラウザで「https://192.168.0.66:10000」でアクセスできます。
 最初は「root」でアクセスするようです。

 扱えるものが多いだけあって、メニューが多すぎですねぇ。それだけ重そうですし、実験機だけにした方がよいかもしれません。


この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。