SOCKS(RFC1928)は、ソケットプログラムを利用しアプリケーションプロトコルに依存せずに、トランスポート層上でアクセス制御を行うためのセキュリティプロトコルです。SOCKSサーバーにコネクションリクエストを渡すと、SOCKSサーバーはクライアントを認証してからコネクションを確立します。 当初SOCKSは、UDPアプリケーションをサポートしていませんでしたが、バージョン5になり、UDPベースのアプリケーションをサポートするようになりました。 SOCKSは「Sockd」というプログラムを介して、プロキシサーバーとクライアントの通信を行う仕組みになっています。この図で説明するとSockdにFTPやtelnetをカプセル化して通信を行おうとするクライアントAは内部ネットワークの資源を利用できますが、直接telnetを使って通信を試みるクライアントBはプロキシーサーバーによって通信を拒否され
![第7章リモートアクセスとVPN----7.8 SOCKS](https://cdn-ak-scissors.b.st-hatena.com/image/square/94aec9452a18d0ed48342ce625753b24ee8fc975/height=288;version=1;width=512/https%3A%2F%2Fwww.ipa.go.jp%2Fsecurity%2Fawareness%2Fadministrator%2Fremote%2Fcapter7%2Fimages%2F8.1.png)