サーバいじくり雑記

2014年6月26日

X2Goでリモートデスクトップ

Filed under: ソフト, Linux — bompopo @ 10:07 PM

X2Goでリモートデスクトップ

ほほう。音もローカルのプリンタやデバイス接続もパスしてくれるのか。よさげだな。

問題は速度で、低速ネットワークでも大丈夫ってうたっているわけだが、わたし的にはXの描画が動画やゲームやっても大丈夫なくらい端末側のGPUを使ってくれるのが欲しいわけですよ。

っつか気になっているんですが、Xサーバ側とXクライアント側、GPUの各支援機能はどっちのを使ってるんですかー?
なんかLTSPしてたらXクライアント側のGPU使ってる気がしてならないんですよねぇ。

2014年6月10日

米Docker、コンテナ型仮想化実装「Docker 1.0」リリース

Filed under: ソフト, Linux — bompopo @ 6:38 PM

米Docker、コンテナ型仮想化実装「Docker 1.0」リリース

あとで試してみるテスト。

2014年5月7日

Android端末からSSH経由で日本語入力したい

Filed under: ソフト, FreeBSD, Linux — bompopo @ 7:06 PM

ベッドでごろ寝しながらAndroid端末からサーバ上のファイルいじったりプログラムしたりしたいなーというだらだらするためのダメ人間の設定。
キー入力はスクリーンの仮想キーボードではなく、Bluetooth接続な物理キーボードを使います(ただし簡易的なもののためESCキー等なし)。

今回AndroidのSSHクライアントには「JuiceSSH」を使用しました。鉄板らしい「ConnectBot」はCtrlキー等をちゃんと送信してくれないらしいので外しました。(OSSで固めたかったのですがorz)
また、今回設定をした理由はAndroidのSSHクライアントは日本語入力ができないのです!なんでー?

さて、サーバ上の設定は以下な感じです。

必要なソフトのインストール(mozcの部分はお好きな変換サーバを使ってください)。

$ sudo apt-get install uim-fep uim-mozc

uim用設定。リモートからはデフォルトの「shift+space」が使えないので「Ctrl+Space」と「Ctrl+/」を定義します。

$ cat ~/.uim
(define default-im-name 'mozc)
(define-key generic-on-key? '("<Shift> " "<Control> " "<Control>\\"))
(define-key generic-off-key? '("<Shift> " "<Control> " "<Control>\\"))

vimには、今回キーボードに存在しない「ESC」キーを「Ctrl+j」にマップしました。

$ cat ~/.vimrc
imap <c-j> <esc>

これでリモート接続からサーバサイドでの日本語入力が可能になります。ただ、そもそも日本語が表示できない環境からやったとしてももちろん表示はできないのでそこら辺は別問題。

$ uim-fep

これ以降、コンソール下部に入力の状態や変換候補がでるようになります。ヤッタネ!
抜けるときは「exit」で。

参考:debian コンソールで日本語を読み書きする
参考:gentooでuim-mozcを使う方法
参考:uim-fep README.ja
参考:emacs、vimで日本語の文章を書く
参考:VimでESCを別のキーにマッピングする

2014年4月25日

RPiで無線LANのブリッジアクセスポイントを作る

Filed under: セキュリティ, ソフト, Linux — bompopo @ 7:00 PM

先日かなり旧型のAndroid端末を中古でそこそこ安く手にれました。それを使うことができる環境を作ってみるテストです。

今回実験に使用したのは「Raspberry Pi Model B(本体)」と「BUFFALO LI-UC-GNM2(無線LANアダプタ)」そして中古で買ってきた「TBi11M(android端末)」です。無線LANアダプタの方は新品で1000円くらいでした。

やはりというか、ネットワーク周りの設定に躓きました。
br0(ブリッジインターフェース)にeth0を参加させた時点で、それまでつながっていたネットワークコネクションが切れるのです。br0が間に挟まるるためにeth0にはパケットが届かなくなるようです(ブリッジなのになんで?)。これがRPiの問題なのか不明ですがとりあえずそういう方向で一般的な手順を修正します。

必要なパッケージは基本2つのみですが、

sudo apt-get install bridge-utils hostapd

無線LANアダプタの情報がよくわからない場合にHWに直接問い合わせるために必要に応じてiwをインストールします。

sudo apt-get install iw

hostapdに関しては、参考3のサイトを参考に最新バージョンをmakeして2つのバイナリを上書きしました。これで前準備完了です。

まず、RPi単体で動かす場合の手順を記します。
ネットワーク設定は以下のように設定します。IPアドレスはeth0ではなくbr0に振り、各種デーモンはbr0インターフェースとそのIPアドレスを使用することにします。

「/etc/network/interfaces」

iface lo inet loopback
iface eth0 inet manual

allow-hotplug wlan0
iface wlan0 inet manual

# Bridge network interface
# IP指定
auto br0
iface br0 inet static
  address 192.168.0.1
  netmask 255.255.255.0
  network 192.168.0.0
  broadcast 192.168.0.255
  gateway 192.168.0.255
  dns-nameservers 192.168.0.254
  bridge_stp off
  bridge_ports eth0
# DHCP指定
#auto br0
#iface br0 inet dhcp

次に無線LANアクセスポイントの設定です。まだ詰めてないので甘い箇所があると思いますが、とりあえずドラフト版ということで以下な感じです。(参考1/参考2)
「/etc/hostapd/hostapd.conf」

interface=wlan0
bridge=br0
driver=nl80211
ssid=myssid
country_code=JP
ieee80211d=1
hw_mode=g
channel=1
macaddr_acl=1
accept_mac_file=/etc/hostapd/hostapd.accept
auth_algs=1
ignore_broadcast_ssid=1
wmm_enabled=0
ieee80211n=1
wpa=2
wpa_psk_file=/etc/hostapd/hostapd-psk
wpa_key_mgmt=WPA-PSK
wpa_pairwise=CCMP
rsn_pairwise=CCMP

基本指定MACアドレス以外は拒否でssidはステルスモード、WPA2のみでアルゴリズムはCCMPのみという設定です。
アクセス制御にかなり悩んだのですがほぼ無知から数時間ではこの程度が限度かと。

「/etc/hostapd/hostapd.accept」は接続許可MACアドレスのリスト

XX:XX:XX:XX:XX:XX

「/etc/hostapd/hostapd-psk」はMACアドレスとパスフレーズのリストです。

00:00:00:00:00:00 ランダムで超長い文字列(63文字)
XX:XX:XX:XX:XX:XX 実際に使うパスフレーズ

まずMACアドレスで特定のものだけを許可し、もし違うMACアドレスがアクセス可能になってしまった場合もランダムなパスフレーズを要求すればいいかなと考えました。

通常はこれで、ネットワークにeth0にブリッジなアクセスポイントとして起動し、端末から接続可能です。

さて、次に私がハマったポイント。iSCSIルートなRPiにセットアップする場合です。上記手順では以下のシーケンスでトラブります。
1.起動時にinitramfsにてブート
2.eth0にIPが振られてiSCSIターゲットへ接続
3.iSCSIターゲットマウント
4.initスクリプトによりインターフェースの初期化・設定が走る
5.ネットワーク設定にてeth0がbr0の配下に入るためiSCSIターゲットとの接続が切れる
ー>ここで止まる

という感じです。
brigheのinitスクリプトがイケてない感じがするのですがとりあえずは小手先で対応。つまりinitスクリプトにてブリッジはしません。
ネットワーク設定は普通にしておき、後でブリッジ化することにします。

#!/bin/sh

brctl addbr br0
ifconfig br0 192.168.0.1 netmask 255.255.255.0
brctl addif br0 eth0
ifconfig eth0 0.0.0.0

service hostapd restart

説明すると、eth0からIPアドレスを剥ぎ取りbr0へ付け替えたあとeth0をbr0配下にします。その後hostapdを起動します。

このスクリプトを「/etc/rc.local」あたりに記述しておけば、iSCSIとのコネクションをlostすることなく起動することが可能です。

参考1:hostapd-example

参考2:hostapd を使用した簡単な方法で WiFi に強力な暗号化を実装する

参考3:Raspberry Pi をWi-Fiアクセスポイント&ルーター化する

2014年3月16日

ProxyChainsでProxy対応していないソフトをProxyを超えて通信可能にする

Filed under: ソフト, FreeBSD, Linux — bompopo @ 2:41 PM

Proxy対応していないようなメールクライアント等のソフトでも強引にProxyを使わせることが可能です。ようはネットワークコネクションを下層でフックしてProxyにリダイレクトしてやればいいのです。
さらにProxyChainsでは間に経由するProxyを多段に自由に構成することができます。

同様な感じではtsocksとかredsocksとかあるようですが多段構成ができなかったり手元では安定性がいまいちだったのでProxyChainsを常用することに。(tor対応のproxychains-ngってのもありますがここでは触れません)

portsなりapt-getなりで導入したらさっそく設定です。
設定は「~/.proxychains/proxychains.conf」に行います。サンプルはそれぞれの環境のetc/proxychains.confを参照のこと。

基本的な使い方しかしないのであれば、いじるのは[ProxyList]の部分のみです。

[ProxyList]
http        127.0.0.1 3128

使い方は簡単。コマンドでproxychainsの引数で目的のソフトを指定するだけです。以下はclaws-mailをプロキシ越しに使いたい場合です。

$ proxychains claws-mail

この場合プロキシサーバ(squid等)がメールで利用するPOPやSMTPポートの利用を許可するよう設定する必要があります。そこは適宜設定のほどを。

さて、上記のままの設定、そのままのproxychainsではプロキシを使わないホストを指定することができません(192.168.*.*と10.*.*.*はプロキシ使わないとなっていますがハードコードでしょうか…)。そこでdebianでは独自パッチを当てることによりプロキシ使わないホストのリストを指定することができます。
以下のようにして192.168.0.1と192.168.0.2にはプロキシを使わない設定が可能です。

[ProxyList]
localnet    192.168.0.1
localnet    192.168.0.2
http        127.0.0.1 3128

どういう時にプロキシ使わないリストが必要になるかっていうと、本当にすべての通信をプロキシしてしまうためXサーバとXクライアントが別ホストだったりする場合Xの通信さえプロキシを経由してしまう場合等です。これはイタイです。ぜひこのパッチを公式に組み込んでいただけたらと思います。
でもこのパッチ、リストの件数がハードコードされており、20件までみたいなんですよね。。。パッチの出来としてはイマイチ(^_^;)

2014年1月5日

SoftEther VPN のソースコードを GPLv2 オープンソース・ライセンスで公開

Filed under: セキュリティ, ソフト, FreeBSD, Linux — bompopo @ 9:09 PM

SoftEther VPN のソースコードを GPLv2 オープンソース・ライセンスで公開

お手軽VPN。プロキシ超えもやっちまうぜ〜で有名なSoftEther。ソースコード公開か〜イイね!

2013年12月20日

RPi-TC ARMv6j Release 5 available!

Filed under: ソフト, Linux — bompopo @ 9:12 PM

RPi-TC ARMv6j Release 5 available!

なんかRPiをシンクライアントにして使おう〜って時にどんな環境でも使えるようなイメージが公開されていたのでびびった。

こいつぁ〜、全部入りみたいな!?すごい詰め込んでる!

触発されてFreeBSDでxspiceが動かないか頑張り中。

現在LTSPしているんだけど、稼働時間やウィンドウの数などxserver側に負担が増すと不安定になりやすい気がしまして、RPi側の負担がより減る方向で、だけどパフォーマンスは失いたくないってところでspiceなんです。まぁ何事も実験実験^^

2013年12月14日

raspberrypiをapt-get upgradeしたらcifsでマウントできなくなった問題

Filed under: ソフト, Linux — bompopo @ 10:49 AM

apt-get upgradeでカーネル含めたアップデートしたら今までマウントできてたsamba36の共有ディレクトリがマウントできなくなってしまった。どうやら認証でこけてるらしい?

$ sudo mount -t cifs -o username=XXXXXXXX,password=XXXXXXXX \
 //XXX.XXX.XXX.XXX/share /mnt/share
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

おうおうおう。どーいうこった?ってman mount.cifsしてみたら認証方法のオプションがいくつかあったので一番それっぽいのを以下のようにとりあえず指定してみたらうまくマウントできた!結局何が悪かったのかわからず。どっかのデフォルト値が変わったのかね?

$ sudo mount -t cifs -o username=XXXXXXXX,password=XXXXXXXX,sec=ntlmv2 \
 //XXX.XXX.XXX.XXX/share /mnt/share

2013年12月12日

Ubuntuで3Dモーションセンサ『Leap Motion』を使う

Filed under: ソフト, ハード, Linux — bompopo @ 2:03 PM

Ubuntuで3Dモーションセンサ『Leap Motion』を使う

これ面白そうだなー。ほしいなー。でもそんな金銭的にも時間的にも余裕は無い!!もっとお手軽な価格でセンサーがあれば…。

2013年12月4日

プロセスのチェックポイント作成/復旧ツール「Checkpoint-Restore(C/R) Tool 1.0」リリース

Filed under: ソフト, 開発技術, Linux — bompopo @ 10:58 AM

プロセスのチェックポイント作成/復旧ツール「Checkpoint-Restore(C/R) Tool 1.0」リリース

おーおーおー。これこれ、こういうの欲しかったのですよー。あったらいいなできたらいいな、実現するにはどういうことしなきゃいかんのかな等など、常々考えていたのですがー!!素晴らしいですね!!ぜひほかのOSにも対応してほしいものです。

まぁまだ使ってないので使い物になるかどうかは確かめていないのですが。

Older Posts »