====== openssh-portable ======
----
>書籍
* [[http://www.unixuser.org/~euske/doc/openssh/book/index.html|入門OpenSSH]]
----
>メモ
* SFTPのみに制限したい場合は、ユーザまたはグループのコマンドをForceCommandで強制する。
* Match group sftponly
ChrootDirectory /mnt/sftpdir
ForceCommand internal-sftp
* internal-sftpのログをとりたい。
- syslogdでログをとるため/home/sftpdir/dev/を作成します。
* # mkdir -p /mnt/sftpdir/dev
- /etc/rc.confに以下を設定します。syslogは-lで追加ソケットを使えます。
* syslogd_enable="YES"
syslogd_flags="-8 -s -l /mnt/sftpdir/dev/log"
- /etc/syslog.confに以下を設定します。
* ! internal-sftp
*.* /var/log/sshd.log
! sshd
*.* /var/log/sshd.log
- syslogをリスタートします。
* # /etc/rc.d/syslogd restart
* sftpのログがURIエンコードされて困る
* http://bompopo.wordpress.com/2009/11/07/openssh%e3%81%ae%e3%83%ad%e3%82%b0%e3%81%8curi%e3%82%a8%e3%83%b3%e3%82%b3%e3%83%bc%e3%83%89%e3%81%95%e3%82%8c%e3%81%a6%e5%9b%b0%e3%82%8b/
* 冷静に考えて、pythonの標準関数で書いたら超簡潔だった。
* root@nazuna ~# cat sftp_log_encoding.py
#!/usr/local/bin/python
# -*- coding: utf-8 -*-
logfile = open("/var/log/sftp.log")
txt = logfile.read()
output = open("/var/log/sftp.utf-8.log",'w')
output.write(txt.decode('string_escape')