新規記事の投稿を行うことで、非表示にすることが可能です。
2017年10月15日
【vsftpd】chrootされたSFTP専用ユーザのFTP転送logを/var/log/sftp.logへはきだす方法
タイトル通りを実現したい方向け。
だいぶハマったし、記事がなかったのでメモ。
環境
CentOS6.5
Filezilla3.28(最新版)
1.sshd_config設定ファイルの変更
# vim /etc/ssh/sshd_config
↓以下に変更↓
#Subsystem sftp /usr/libexec/openssh/sftp-server -f LOCAL5 -l VERBOSE
Subsystem sftp internal-sftp
Match Group sftp_group
ChrootDirectory /data/sftp/%u
ForceCommand internal-sftp -f AUTH -l INFO
#PasswordAuthentication yes
# X11Forwarding no
# AllowTcpForwarding no
# ForceCommand cvs server
2.ssh_config再起動
# service sshd restart
解説:
・chroot化 →/data/sftp/クライアント名 以下みられない
・SSHログイン不可 →SFTP送受信専用ユーザ完成。セキュリティ上SSHでTeraTermとかで入れないように。
3.rsyslog.conf設定ファイルの変更
# vim /etc/rsyslog.conf
↓以下を追加↓
if $syslogfacility-text == 'authpriv' and $msg contains 'flags WRITE,CREATE,TRUNCATE mode 0666' then /var/log/sftp.log
4.rsyslog.conf再起動
# service rsyslog restart
解説:
/var/log/secure より出力したいlogの一部を上記のように記載
例1)ファイルのダウンロードだけsftp/logに書き込みたい →上記を追加
例2)/var/log/secureの全てをsftp.logに書き込みたい →if $syslogfacility-text == 'authpriv' then /var/log/sftp.log
とりあえず上記1.~4.を実施することでタイトル通りのことはできます。
あとはローテーション設定も追加すればよいと思います。
5.logrotate.d/syslogファイルの編集
# vim /etc/logrotate.d/syslog
↓以下を追加↓
/var/log/sftp.log
以上。
だいぶハマったし、記事がなかったのでメモ。
環境
CentOS6.5
Filezilla3.28(最新版)
1.sshd_config設定ファイルの変更
# vim /etc/ssh/sshd_config
↓以下に変更↓
#Subsystem sftp /usr/libexec/openssh/sftp-server -f LOCAL5 -l VERBOSE
Subsystem sftp internal-sftp
Match Group sftp_group
ChrootDirectory /data/sftp/%u
ForceCommand internal-sftp -f AUTH -l INFO
#PasswordAuthentication yes
# X11Forwarding no
# AllowTcpForwarding no
# ForceCommand cvs server
2.ssh_config再起動
# service sshd restart
解説:
・chroot化 →/data/sftp/クライアント名 以下みられない
・SSHログイン不可 →SFTP送受信専用ユーザ完成。セキュリティ上SSHでTeraTermとかで入れないように。
3.rsyslog.conf設定ファイルの変更
# vim /etc/rsyslog.conf
↓以下を追加↓
if $syslogfacility-text == 'authpriv' and $msg contains 'flags WRITE,CREATE,TRUNCATE mode 0666' then /var/log/sftp.log
4.rsyslog.conf再起動
# service rsyslog restart
解説:
/var/log/secure より出力したいlogの一部を上記のように記載
例1)ファイルのダウンロードだけsftp/logに書き込みたい →上記を追加
例2)/var/log/secureの全てをsftp.logに書き込みたい →if $syslogfacility-text == 'authpriv' then /var/log/sftp.log
とりあえず上記1.~4.を実施することでタイトル通りのことはできます。
あとはローテーション設定も追加すればよいと思います。
5.logrotate.d/syslogファイルの編集
# vim /etc/logrotate.d/syslog
↓以下を追加↓
/var/log/sftp.log
以上。
タグ:vsftpd