bagaimana cara mengirim karakter escape di terminal os x?
<p>menghubungkan dengan telnet terlihat seperti ini:</p><pre><code>$ telnet some.host trying 10.1.2.3... connected to some.host. escape character is '^]'. </code></pre><p>saya menjalankan ini di terminal os x leopard. pertanyaannya adalah, bagaimana saya mengirim karakter pelarian ini? pada terminal linux saya akan coba <kbd>esc</kbd>-<kbd>5</kbd> atau <kbd>ctrl</kbd>-<kbd>5</kbd>, tapi saya tidak tahu bagaimana melakukan ini di os x.</p>
<p><code>^]</code> artinya <kbd>ctrl</kbd> + braket kanan. seaneh itu, ia bekerja. anda akan dibawa ke telnet prompt, tempat anda bisa mengetik <code>quit</code>.</p><p>pada keyboard internasional, karakter] sering kali bukan kunci tunggal, dan perlu diganti dengan beberapa tombol lain. kunci yang benar biasanya adalah kunci di sebelah kanan p atau tombol berikutnya setelah itu.</p><p>berikut daftar berdasarkan komentar di bawah ini:</p><ul> <li>finlandia, swedia, norwegia, denmark: <kbd>ctrl</kbd> + <kbd>å</kbd></li> <li>perancis: <kbd>ctrl</kbd> + <kbd>6</kbd></li> <li>jerman: <kbd>ctrl</kbd> + <kbd>ü</kbd></li> <li>swiss: <kbd>ctrl</kbd> + <kbd>¨</kbd></li> <li>hongaria: <kbd>ctrl</kbd> + <kbd>5</kbd></li> <li>portugis: <kbd>ctrl</kbd> + <kbd>´</kbd></li> <li>belanda, belgia: <kbd>ctrl</kbd> + <kbd>$</kbd></li> <li>kanada prancis: <kbd>ctrl</kbd> + <kbd>ç</kbd></li> </ul>
<p>perintah <kbd>d</kbd><kbd>w</kbd> akan menghapus dari posisi kursor saat ini ke awal karakter word berikutnya. perintah <kbd>d</kbd><kbd>$</kbd> (perhatikan, itu tanda dolar, bukan tanda 's') akan dihapus dari posisi kursor saat ini ke akhir baris saat ini. <kbd>d</kbd> adalah sinonim untuk <kbd>d</kbd><kbd>$</kbd>.</p> <p><code>environ</code> adalah pointer ke pointer, karena memiliki tipe <code>char **environ</code>.</p><p>anda harus mencoba sesuatu seperti:</p><pre><code>(gdb) x/s *((char **)environ) 0xbffff688: "ssh\_agent\_pid=2107" (gdb) x/s *((char **)environ+1) 0xbffff69b: "shell=/bin/bash" </code></pre> <p>"penerusan ip" adalah sinonim untuk "perutean." ini disebut "kernel ip forwarding" karena ini adalah fitur dari kernel linux.</p><p>router memiliki beberapa antarmuka jaringan. jika lalu lintas masuk pada satu antarmuka yang cocok dengan subnet dari antarmuka jaringan lain, router lalu meneruskan lalu lintas itu ke antarmuka jaringan lainnya.</p><p>jadi, katakanlah anda memiliki dua nic, satu (nic 1) ada di alamat 192.168.2.1/24, dan yang lainnya (nic 2) adalah 192.168.3.1/24. jika penerusan diaktifkan, dan sebuah paket masuk pada nic 1 dengan "alamat tujuan" 192.168.3.8, router akan mengirim ulang paket itu dari nic 2.</p><p>biasanya router berfungsi sebagai gateway ke internet untuk memiliki rute default di mana setiap lalu lintas yang tidak cocok dengan nic akan melalui nic rute default. jadi dalam contoh di atas, jika anda memiliki koneksi internet di nic 2, anda akan menetapkan nic 2 sebagai rute default anda dan lalu lintas apa pun yang masuk dari nic 1 yang bukan t ditakdirkan untuk sesuatu pada 192.168.2.0/24 akan melalui nic 2. mudah-mudahan ada router lain melewati nic 2 yang dapat merutekannya lebih lanjut (dalam kasus internet, lompatan berikutnya adalah anda router isp, dan kemudian penyedianya router hulu, dll.)</p><p>mengaktifkan <code>ip\_forward</code> memberi tahu sistem linux anda untuk melakukan ini. agar menjadi bermakna, anda memerlukan dua antarmuka jaringan (2 atau lebih kartu kabel nic, kartu wifi atau chipset, ppp tautan melalui modem atau serial 56k, dll.).</p><p>saat melakukan perutean, keamanan adalah penting dan di situlah filter paket linux, <code>iptables</code>, terlibat. jadi anda memerlukan konfigurasi <code>iptables</code> yang konsisten dengan kebutuhan anda.</p><p>perhatikan bahwa mengaktifkan penerusan dengan <code>iptables</code> dinonaktifkan dan/atau tanpa memperhitungkan firewall dan keamanan dapat membuat anda terbuka terhadap kerentanan jika salah satu nic menghadap ke internet atau subnet yang tidak dapat anda kendalikan.</p> <p>anda cukup menggunakan perintah <code>initctl list</code> shell untuk membuat daftar isi <code>/etc/init</code> daripada perintah <code>dbus-send</code> yang disarankan.</p> <p><strong>ji dns</strong> - banyak alat sniffing paket melakukan pencarian alamat ip untuk memberikan nama dns menggantikan nama alamat ip. untuk mengujinya, anda harus meletakkan kartu jaringan ke mode promiscuous dan mengirimkan paket ke jaringan yang ditujukan untuk host palsu. jika ada pencarian nama dari host palsu terlihat, sniffer mungkin beraksi pada host yang melakukan pencarian.</p><p><strong>arp test</strong> - ketika dalam mode bebas pilih-pilih driver untuk kartu jaringan memeriksa alamat mac adalah kartu jaringan untuk paket unicast, tetapi hanya memeriksa oktet pertama dari alamat mac terhadap nilai 0xff untuk tentukan apakah paket tersebut disiarkan atau tidak. perhatikan bahwa alamat untuk paket siaran adalah ff: ff: ff: ff: ff: ff. untuk menguji cacat ini, jika anda mengirim paket dengan alamat mac ff: 00: 00: 00: 00: 00 dan alamat ip tujuan host yang benar. setelah menerima paket, os microsoft menggunakan driver cacat akan merespons saat dalam mode promiscuous. mungkin itu terjadi hanya dengan driver ms default.</p><p><strong>ether ping test</strong> - dalam kernel linux yang lebih tua ketika kartu jaringan ditempatkan dalam mode promiscuous setiap paket diteruskan ke os. beberapa kernel linux hanya melihat alamat ip dalam paket untuk menentukan apakah mereka harus diproses atau tidak. untuk menguji cacat ini, anda harus mengirim paket dengan alamat mac palsu dan alamat ip yang valid. kernel linux yang rentan dengan kartu jaringan mereka dalam mode promiscuous hanya melihat alamat ip yang valid. untuk mendapatkan respons, pesan permintaan gema icmp dikirim dalam paket palsu yang mengarah ke host yang rentan dalam mode promiscuous untuk merespons.</p><p>mungkin ada lagi, tes dns untuk saya adalah yang paling dapat diandalkan</p> <p>di linux, <code>top</code> sebenarnya mendukung pemfokusan pada satu proses, walaupun secara alami tidak memiliki grafik histori:</p><pre><code>top -p pid </code></pre><p>ini juga tersedia di mac os x dengan sintaks yang berbeda:</p><pre><code>top -pid pid </code></pre> <p>setidaknya untuk lalu lintas jaringan, anda dapat menggunakan <a href="http://projects.gnome.org/netspeed/">applet netspeed gnome</a> </p><pre><code>sudo apt-get install netspeed </code></pre><p>saya tidak dapat menemukan apa pun untuk penggunaan memori untuk dilaporkan dengan cara ini di gnome-panel, meskipun sepertinya itu harus menjadi pilihan dari applet monitor sistem default.</p> <p>iterasi atas string sayangnya agak lambat di python. ekspresi reguler melebihi urutan besarnya lebih cepat untuk hal semacam ini. anda hanya perlu membangun kelas karakter sendiri. modul <em>unicodedata</em> cukup membantu untuk ini, terutama fungsi <em>unicodedata.category ()</em>. lihat <a href="http://www.unicode.org/reports/tr44/#general\_category\_values">basis data karakter unicode</a> untuk deskripsi kategori.</p><pre><code>import unicodedata, re all\_chars = (unichr(i) for i in xrange(0x110000)) control\_chars = ''.join(c for c in all\_chars if unicodedata.category(c) == 'cc') # or equivalently and much more efficiently control\_chars = ''.join(map(unichr, range(0,32) + range(127,160))) control\_char\_re = re.compile('[%s]' % re.escape(control\_chars)) def remove\_control\_chars(s): return control\_char\_re.sub('', s) </code></pre> <p>dari <a href="https://github.com/zolrath/wemux">https://github.com/zolrath/wemux</a> :</p><blockquote> <p>wemux meningkatkan tmux untuk membuat multi-user terminal multiplexing menjadi lebih mudah dan lebih kuat. hal ini memungkinkan pengguna untuk host server wemux dan klien bergabung:</p> <p>mode cermin memberi klien (pengguna ssh lain di mesin anda) akses hanya baca ke sesi, memungkinkan mereka melihat anda bekerja, atau</p> <p>pair mode memungkinkan klien dan anda sendiri untuk bekerja di terminal yang sama (kursor bersama)</p> <p>rogue mode memungkinkan klien untuk memasangkan atau bekerja secara independen di jendela lain (kursor terpisah) dalam sesi tmux yang sama.</p> <p>ini fitur dukungan multi-server serta daftar pengguna dan pemberitahuan ketika pengguna melampirkan/melepaskan.</p> </blockquote><p>ini adalah pembungkus shellscript di atas tmux - tidak perlu dikompilasi.</p> <p>implementasi yang saya lihat dari ini dilakukan dengan mengutak-atik tabel penerusan mac pada titik akses. karena titik akses hanya bertindak sebagai jembatan jaringan, itu cukup cocok untuk tugas semacam ini. pada lapisan switching itu sudah mengumpulkan semua mac yang didengar (kadang-kadang disebut belajar) dan antarmuka yang dapat ditemukan.</p><p>logikanya terlihat seperti ini:</p><ol> <li>access point menerima paket melalui antarmuka nirkabel</li> <li>subsistem bridging memeriksa paket untuk mac tujuan</li> <li>jika mac tujuan berada dalam tabel switching yang dipelajari untuk antarmuka nirkabel -&gt; drop</li> <li>kalau tidak meneruskan paket melalui antarmuka kabel</li> </ol><p>karena cara jembatan jaringan bekerja, saya melihat ini menjadi cukup sulit untuk menipu titik akses ke meneruskan paket ke klien terlepas dari isolasi. taruhan terbaik anda adalah berusaha berbicara langsung dengan klien lain, seolah-olah anda beroperasi dengan jaringan ad-hoc.</p>