config ファイルを使ってホスト毎の設定
2005-09-01-3 / カテゴリ: [linux][ssh] / [permlink]
ssh でリモートログインする際に、サーバ毎にユーザ名が違ったり、ポートが wellknown じゃなかったりすると、そのたびにオプションを指定するのがメンドウ。
で、~/.ssh/config にホスト毎の設定を記述しておけば、引数にホスト名をしていするだけでアクセスできるようになる。
みたいな。
明示的に指定しなかった項目は、デフォルトの値が使用される(ハズ)。debian なら /etc/ssh/ssh_config かな。
c.f. man ssh_config(5)
で、~/.ssh/config にホスト毎の設定を記述しておけば、引数にホスト名をしていするだけでアクセスできるようになる。
Host server1 # 以下 server1 に接続するときの設定 User foo # ユーザ名は foo Port 10022 # 接続するポートは10022 Compression yes # 圧縮を有効にする CompressionLevel 5 # 圧縮レベルは5(1:低/9:高) Host server2 # 以下 server2 に接続するときの設定 User bar # ユーザ名は bar IdentityFile ~/.ssh/id_rsa_serv2 # 使用する秘密鍵はid_rsa_serv2 Host server3 # 以下 server3 に接続するときの設定 User baz LocalForward 10110 server3:110 # localの10110をserver3のpop接続にフォワードする
みたいな。
明示的に指定しなかった項目は、デフォルトの値が使用される(ハズ)。debian なら /etc/ssh/ssh_config かな。
c.f. man ssh_config(5)
ssh obtains configuration data from the following sources in the follow-
ing order:
1. command-line options
2. user's configuration file ($HOME/.ssh/config)
3. system-wide configuration file (/etc/ssh/ssh_config)
fetchmail と ssh ポートフォワードの併用(さらにapop)
2005-07-23-2 / カテゴリ: [linux][command][ssh][POP3][メール] / [permlink]
.fetchmailrcに
pop.example.org に ssh セッションを張って、ローカルへの 10110 アクセスを pop.example.org の 110 へフォワード。でもって、ローカルの 10110 へ apop で pop3 アクセス。sleep 15 は、retr が完了しきれる時間を考慮すること。
.id_rsa_nonpass はパスフレーズなしの ssh 秘密鍵。管理はしっかり!
set postmaster zaki set no bouncemail set logfile $HOME/log/fetchmail.log defaults flush fetchall no mimedecode no rewrite smtphost localhost poll pop.example.org via localhost port 10110 proto apop username 'username' preconnect "ssh -f -L 10110:pop.example.org:110 -i ~/.ssh/.id_rsa_nonpass zaki@pop.example.org sleep 15" password 'pop-passwd'
pop.example.org に ssh セッションを張って、ローカルへの 10110 アクセスを pop.example.org の 110 へフォワード。でもって、ローカルの 10110 へ apop で pop3 アクセス。sleep 15 は、retr が完了しきれる時間を考慮すること。
.id_rsa_nonpass はパスフレーズなしの ssh 秘密鍵。管理はしっかり!
ssh ポートフォワード
2005-07-23-1 / カテゴリ: [linux][command][ssh] / [permlink]
いつもTTSSHやputtyのポートフォワードばかり使って、/usr/bin/ssh でポートフォワードしたことなかったなぁ。
ちなみに、上の ssh プロセス自体は、example.org への通常の ssh アクセスとさほど変わらず。
ssh -L 10025:remote.example.org:25 user@example.orgこれで、ローカルマシンの10025にアクセスすれば、example.org から見た remote.example.org のポート 25 にアクセスできる。
ちなみに、上の ssh プロセス自体は、example.org への通常の ssh アクセスとさほど変わらず。
scp/sftp で日本語eucファイルのやりとり
2005-07-05-2 / カテゴリ: [win][ssh][アプリ] / [permlink]
WinSCP(日本語サイト)やFileZillaでは、日本語ファイル名の文字コードまでは面倒みていない。ので、Win上のファイルをそのままアップロードしても、サーバ上ではSJISなファイル名になってしまう。Winのみが接続するファイルサーバとして使う分には構わないが(samba併用なら、cp932で設定)、Linuxローカルでファイル参照する際には分が悪い。sambaのみなら[2005-07-04]の設定でなんとかなるけど、ssh(scp/sftp)でのファイルのやりとりが絡むと対処できなくなる。
で、探してみると、FileZillaには、サーバとのファイルのやりとり時に、ファイル名の文字コードを SJIS <-> EUC 変換してくれるナイスなパッチ発見。
http://www.unixuser.org/~haruyama/software/filezilla_patch.html
これで、万事解決〜。
FileZilla(2.2.14b)をフツーにインストールした後、"2.2.14bにパッチを当てた実行ファイル FileZilla.exe" を上書き保存すれば良し。
ただし、サーバ上にある、元々 SJIS なファイル名は化けてしまうので、WinSCP とうまく使い分けるのが良いかも。
で、探してみると、FileZillaには、サーバとのファイルのやりとり時に、ファイル名の文字コードを SJIS <-> EUC 変換してくれるナイスなパッチ発見。
http://www.unixuser.org/~haruyama/software/filezilla_patch.html
これで、万事解決〜。
FileZilla(2.2.14b)をフツーにインストールした後、"2.2.14bにパッチを当てた実行ファイル FileZilla.exe" を上書き保存すれば良し。
ただし、サーバ上にある、元々 SJIS なファイル名は化けてしまうので、WinSCP とうまく使い分けるのが良いかも。
ssh でファイル転送
2005-06-08-2 / カテゴリ: [linux][ssh] / [permlink]
$ cat file.jpg | ssh user@server 'cat - > file.jpg'
ssh ログインしたときにコマンドを実行する
2005-06-08-1 / カテゴリ: [linux][ssh] / [permlink]
・サーバワイドに設定
/etc/ssh/sshrc に実行したいシェルスクリプトを書く
・ユーザごとに設定
~/.ssh/rc にシェルスクリプト
~/.ssh/rc があるときは、/etc/ssh/sshrc は無視される。
man sshd "LOGIN PROCESS"
ただし、これをやると、scp/sftp が失敗する…
/etc/ssh/sshrc に実行したいシェルスクリプトを書く
・ユーザごとに設定
~/.ssh/rc にシェルスクリプト
~/.ssh/rc があるときは、/etc/ssh/sshrc は無視される。
man sshd "LOGIN PROCESS"
8. If $HOME/.ssh/rc exists, runs it; else if /etc/ssh/sshrcとのこと。
exists, runs it; otherwise runs xauth. The ``rc'' files are
given the X11 authentication protocol and cookie in standard
input.
ただし、これをやると、scp/sftp が失敗する…
(scpでなく) ssh コマンドでファイル転送
2005-03-22-1 / カテゴリ: [linux][ssh] / [permlink]
% command | ssh user@server 'cat > ~/file'ファイルを転送し、それを使って更にリモートでコマンド実行! なんて時は便利
かも
% cat file | ssh user@server 'cat > ~/file; remote-command ~/file'
sshd を inetd で起動する設定
2004-11-24-3 / カテゴリ: [linux][ssh] / [permlink]
/etc/inetd.conf
ssh stream tcp nowait root /usr/sbin/sshd sshd -i
TeraTerm + TTSSH で ssh ポートフォワーディング
2004-06-14-1 / カテゴリ: [network][win][ssh] / [permlink]
11:44 (zaki) 参考: http://www.media.hiroshima-u.ac.jp/manual/ttssh/portfwd.html
11:44 (zaki) まずは、TeraTermとTTSSHでsshが使えるようにしておく
11:44 (zaki) そのうえで
11:45 (zaki) [setup]->[SSH Forwarding]から
11:45 (zaki) Port Forwardingで[Add]
11:45 (zaki) Forward local port(上の方)にチェックをいれ、
11:46 (zaki) 上のポート番号は、ローカルマシンでLISTENするポートなので自分のマシンで使えるポートを指定(僕は26667/特に意味なし)
11:46 (zaki) 下の to remote machine に、RX-8のアドレス&ircのポート 46667を指定
11:46 (zaki) 入れたら、[OK]
11:47 (zaki) TTSSH: Forwarding Setupも[OK]で抜ける
11:47 (zaki) でもって、一旦[Setup]->[Save setup]でTERATERM.INIを保存する
11:48 (zaki) 最後に、[New connection]で、rx-8にSSH(port22)で普通にSSHログインする
11:48 (zaki) すると、ローカルマシンで26667(僕の場合)でLISTENするので、
11:49 (zaki) LimeChatの設定で、localhost:26667へアクセスする
11:49 (zaki) 以上
最終更新時間: 2013-05-02 16:12