aboutsummaryrefslogtreecommitdiffstats
path: root/_site/atom.xml
blob: 22f2bd1e2ea3bba557f445061a254a3ef04e7834 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">

 <title>Wiki Texto-Plano</title>
 <link href="wiki.texto-plano.xyz/atom.xml" rel="self"/>
 <link href="wiki.texto-plano.xyz/"/>
 <updated>2021-01-24T00:19:22-03:00</updated>
 <id>wiki.texto-plano.xyz</id>
 <author>
   <name></name>
   <email></email>
 </author>

 
 <entry>
   <title>Cómo configurar la confianza de las claves GPG.</title>
   <link href="wiki.texto-plano.xyz/2021/01/23/como-configurar-la-confianza-de-las-claves-gnu-pg"/>
   <updated>2021-01-23T23:37:00-03:00</updated>
   <id>wiki.texto-plano.xyz/2021/01/23/como-configurar-la-confianza-de-las-claves-gnu-pg</id>
   <content type="html">&lt;p&gt;El criptosistema de cifrado GNU PG se basa en la confianza de las claves
públicas de terceros.&lt;/p&gt;

&lt;p&gt;Este nivel de confianza puede interrelacionarse con otros usuarios en
servidores de cifrado, en caso de ser necesario, pero podremos hacerla
efectiva por nosotros mismos. Para ello es recomendable denunciar un
“nivel de confianza” en las claves de terceros que tengamos guardadas en
nuestro llavero público (“public keyring”).&lt;/p&gt;

&lt;p&gt;Para ello activamos el criptosistema con:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;gpg2 –edit-key pepita@texto-plano.xyz&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;El criptosistema indicará:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;gpg (GnuPG) 2.2.23; Copyright (C) 2020 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.


pub  rsa3072/ZZZZZZZZZZZZZZZZ
     creado: aaaa-mm-dd  caduca: aaaa-mm-dd  uso: SC  
     confianza: desconocido   validez: desconocido
sub  rsa3072/YYYYYYYYYYYYYYYY
     creado: aaaa-mm-dd  caduca: aaaa-mm-dd  uso: E   
[desconocida] (1). fulano &amp;lt;pepita@texto-plano.xyz&amp;gt;

gpg&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;En el prompt gpg&amp;gt; ingresamos el comando &lt;strong&gt;trust&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Y ahora aparecerán los detalles de la llave y además el menú selector de
confianza:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;Por favor, decida su nivel de confianza en que este usuario
verifique correctamente las claves de otros usuarios (mirando
pasaportes, comprobando huellas dactilares en diferentes fuentes...)


  1 = No lo sé o prefiero no decirlo
  2 = NO tengo confianza
  3 = Confío un poco
  4 = Confío totalmente
  5 = confío absolutamente
  m = volver al menú principal

¿Su decisión? 
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Debemos indicamos el número escogido. Por ejemplo, &lt;strong&gt;4&lt;/strong&gt; podría indicar
que hemos acordado con alguien que nos envíe la clave y esta persona lo
ha hecho por medio electrónico. Mientras que 5 es que literalmente hemos
visto a la persona requerida enviarnos la llave en nuestra presencia.&lt;/p&gt;

&lt;p&gt;Para salir del criptosistema, en el prompt gpg&amp;gt; ingresamos la opción
&lt;strong&gt;quit&lt;/strong&gt;.&lt;/p&gt;

</content>
 </entry>
 
 <entry>
   <title>Cifrado de correo electronico con GPG y Mutt</title>
   <link href="wiki.texto-plano.xyz/2021/01/23/cifrado-de-correo-electronico-con-gpg-y-mutt"/>
   <updated>2021-01-23T23:24:00-03:00</updated>
   <id>wiki.texto-plano.xyz/2021/01/23/cifrado-de-correo-electronico-con-gpg-y-mutt</id>
   <content type="html">&lt;p&gt;Mutt es el editor de correo electrónico de texto-plano.xyz. Puede
trabajar con encriptación PGP. El sistema PGP involucra un par de
archivos de encriptación (llamados “llaves”). Uno es una llave privada,
y la otra es una pública.&lt;/p&gt;

&lt;h2 id=&quot;creación-de-clave-opcional&quot;&gt;Creación de clave (opcional)&lt;/h2&gt;

&lt;p&gt;Si no tuviésemos ya un par de llaves pública y privada, la creamos con
el comando:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;gpg2 –gen-key&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Normalmente el criptosistema GPG nos solicitará nuestra cuenta de correo
electrónico, y también nos solicitará ingresar una contraseña para el
criptosistema. Esta se utilizará para cifrar y descifrar correos.
&lt;strong&gt;Es importante conservar esta contraseña de criptosistema en un lugar
seguro&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Una vez creada el par de llaves, crearemos una copia de nuestra llave
pública a fin de poder distribuírsela a nuestros contactos.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;gpg2 –armor –output usuario_tp_publica.asc –export
usuario@texto-plano.xyz&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Ahora podremos enviar esta copia de la llave pública
usuario_tp_publica.asc por correo electrónico sin cifrar, subirla a un
gopher o www. En fin, compartirla con quien queramos.&lt;/p&gt;

&lt;p&gt;Hecho esto, podremos configurar Mutt.&lt;/p&gt;

&lt;h2 id=&quot;configuración-de-mutt-para-que-funcione-con-encriptación-pgp&quot;&gt;Configuración de Mutt para que funcione con encriptación PGP&lt;/h2&gt;

&lt;p&gt;Consiste en agregar una configuración especial al fichero &lt;em&gt;~/.muttrc&lt;/em&gt;
de configuración.&lt;/p&gt;

&lt;p&gt;Para mayor facilidad podrán descargar mi propio fichero de configuración
de mutt (comentado) con:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;cd ~&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;wget https://texto-plano.xyz/~peron/ftp_pub/muttrc&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;mv muttrc ~/.muttrc&lt;/strong&gt;&lt;/p&gt;

&lt;h2 id=&quot;enviar-un-mensaje-de-correo-encriptado-con-mutt&quot;&gt;Enviar un mensaje de correo encriptado con Mutt&lt;/h2&gt;

&lt;p&gt;Entramos a Mutt y creamos un nuevo mensaje presionando &lt;strong&gt;m&lt;/strong&gt;. Nos
solicitará los destinatarios (podemos indicar varios separándolos con
coma). También solicitará un Asunto.&lt;/p&gt;

&lt;p&gt;Una vez que ingresemos estos, nos presentará el editor &lt;em&gt;GNU Nano&lt;/em&gt;.
Escribimos el mensaje lo guardamos con &lt;strong&gt;Ctrl+o&lt;/strong&gt; y salimos con
&lt;strong&gt;Ctrl+x&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Antes de enviar el correo sin cifrar (lo que normalmente se hace
presionando &lt;strong&gt;tecla y&lt;/strong&gt; en este momento) &lt;strong&gt;debemos cifrarlo&lt;/strong&gt;.
Presionamos la &lt;strong&gt;tecla p&lt;/strong&gt; para activar las opciones de encriptación.
Mutt nos preguntará si queremos cifrarlo, firmarlo o ambos. Para usar
ambas opciones presionamos la &lt;strong&gt;tecla b&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Si la llave carece de una validez definida significa que la misma &lt;strong&gt;&lt;a href=&quot;&quot;&gt;no
ha sido validada por
terceros&lt;/a&gt;, y
sólo esta autofirmada&lt;/strong&gt;. No es lo ideal, pero de momento, podremos
aceptarla igual. Mutt mostrará este mensaje.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;ID has undefined validity. ¿Realmente quiere utilizar la llave?
([no]/sí):&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Es importante saber que de momento, por un error de traducción de Mutt,
para usar la clave en lugar de presionar la tecla s como indica el
programa, debemos presionar la &lt;strong&gt;tecla y&lt;/strong&gt;(por “yes”).&lt;/p&gt;

&lt;p&gt;Ahora Mutt se interrumpirá y &lt;strong&gt;nos solicitará que ingresemos la
contraseña del criptosistema GPG&lt;/strong&gt;. Tendremos tres oportunidades para
introducirla correctamente.&lt;/p&gt;

&lt;p&gt;Una vez encriptadio exitosamente, podremos enviarlo con la &lt;strong&gt;tecla y&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Salimos del Mutt con la &lt;strong&gt;tecla q&lt;/strong&gt;.&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;Aportado originalmente por ~peron en &lt;a href=&quot;https://texto-plano.xyz/~peron/inst/mutt/mutt_gnupg.html&quot;&gt;Encriptación GNUPG con Mutt
&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Uso de claves de cifrado con GPG</title>
   <link href="wiki.texto-plano.xyz/2021/01/23/uso-de-claves-de-cifrado-con-gpg"/>
   <updated>2021-01-23T23:03:00-03:00</updated>
   <id>wiki.texto-plano.xyz/2021/01/23/uso-de-claves-de-cifrado-con-gpg</id>
   <content type="html">&lt;p&gt;La privacidad es un valor impostergable en un sistema de cómputo. Puedes
aprender a cifrar mensajes de correo electrónico en el ambiente
Texto-plano.&lt;/p&gt;

&lt;p&gt;Para ello debes utilizar el criptosistema &lt;strong&gt;GnuPG v2.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Este criptosistema ofrece un mecanismo de cifrado para mensajes de punto
a punto. Cada punto (remitente y receptor) posee dos tipos de clave: una
llamada &lt;em&gt;Clave Privada&lt;/em&gt;, y otra que se combina con la anterior pero que
debe compartirse con el resto de tus destinatarios de correo: la &lt;em&gt;Clave
Pública&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;En texto-plano, podrás utilizar el programa de correo electrónico
&lt;strong&gt;Mutt&lt;/strong&gt; para enviar y recibir correo electrónico convencional. Pero si
adicionalmente utilizas el criptosistema, podrás asegurar el envío y
recepción de correo cifrado y firmado digitalmente.&lt;/p&gt;

&lt;p&gt;Sigue este tutorial para poder usar el criptosistema.&lt;/p&gt;

&lt;h2 id=&quot;crea-un-par-de-claves-pgp&quot;&gt;Crea un par de claves PGP&lt;/h2&gt;

&lt;p&gt;En primer lugar genera el par de claves propias (privada y pública)
necesarias. Ingresa el comando:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;gpg2 –gen-key&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Aparecerá en tu terminal el siguiente diálogo. Completa el nombre y la dirección del correo electrónico:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;gpg (GnuPG) 2.2.23; Copyright (C) 2020 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.

Nombre y apellidos: **Fulano Mengano**
Dirección de correo electrónico: **fulano@texto-plano.xyz**
Ha seleccionado este ID de usuario:
    &quot;Fulano Mengano&quot;

¿Cambia (N)ombre, (C)omentario, (D)irección o (V)ale/(S)alir?**V**
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;\&lt;/p&gt;

&lt;p&gt;Si esta es la primera vez que utilizas el criptosistema en el entorno
texto-plano, se te solicitará que ingreses ahora una contraseña de
criptosistema (y confirmarla) a fin de proteger tu llavero (“Key-Ring”).
Este keyring es el programa que permite controlar todas tus acciones de
encriptación, de modo que toma nota de la misma y consérvala a
resguardo. En cambio, si ya hubieses utilizado el criptosistema
previamente, se te solicitará ingresar la contraseña del llavero.&lt;/p&gt;

&lt;p&gt;Una vez concluido se te informará:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;gpg: clave XXXXXXXX marcada como de confianza absoluta
gpg: certificado de revocación guardado como '/home/fulano/.gnupg/openpgp-revocs.d/xxxxxxxxxx.rev'

gpg: clave pública y secreta creadas y firmadas.
pub   rsa3072 aaaa-mm-dd
      Huella de clave = zzzz zzzz zzzz zzzzz zzzz  zzzz zzzz zzzz zzzz zzzz
uid                  Fulano Mengano [fulano@texto-plano.xyz]
sub   rsa3072/ZZZZZZZZ aaaa-mm-dd
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;\&lt;/p&gt;

&lt;h2 id=&quot;comparte-tu-clave-pública-pgp-con-terceros&quot;&gt;Comparte tu clave pública PGP con terceros&lt;/h2&gt;

&lt;p&gt;Quienes deseen descifrar tu correo encriptado deben contar con tu clave
pública. Para poder darle a futuros remitentes tu clave pública debes
exportarla. Por ejemplo, utilizarías el comando:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;gpg2 –armor –output fulano_tp_publica.asc –export
fulano@texto-plano.xyz&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Este ejemplo creará un archivo llamado fulano_tp_publica.asc. Este
archivo podrá ser hecho público de la manera que desees, ya sea
enviándolo adjunto por correo electrónico, ingresarlo a tu “finger” de
Texto-plano, subirlo a tu www o gopherhole.&lt;/p&gt;

&lt;p&gt;\&lt;/p&gt;

&lt;h2 id=&quot;agrega-a-tu-criptosistema-la-clave-pública-pgp-de-un-tercero&quot;&gt;Agrega a tu criptosistema la Clave pública PGP de un tercero&lt;/h2&gt;

&lt;p&gt;Para poder enviarle correo electrónico cifrado a un tercero, deberás
incorporar a tu critosistema la clave pública de dicha persona. La misma
tendrá la misma forma que tu propia clave pública: es un archivo .asc, o
eventualmente .gpg.&lt;/p&gt;

&lt;p&gt;Suponiendo que te hacen llegar por correo electrónico no cifrado la
clave pública de el destinatario pepita@texto-plano.xyz, que consiste en
un archivo de clave pública llamado pepita_tp.asc. La incorporarás a tu
criptosistema con el comando:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;gpg2 –import pepita_tp.asc&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sólo si la clave está intacta, el sistema la incorporará. En tal caso
nos devolverá algo como:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;gpg: key YYYYYY: Clave pública importada.
gpg: número total procesada: 1
gpg:              importada: 1
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;\&lt;/p&gt;

&lt;h2 id=&quot;revisar-y-validar-las-llaves-almacenadas-en-el-criptosistema&quot;&gt;Revisar y validar las llaves almacenadas en el criptosistema&lt;/h2&gt;

&lt;p&gt;Podrás revisar las claves contenidas en tu criptosistema con el comando:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;gpg2 –list-keys&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;y este informará algo como:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/home/usuario/.gnupg/pubring.gpg
------------------------------
pub   3072R/YYYYYYY aaaa-mm-dd
uid                  Fulano Mengano
sub   3072R/ZZZZZZ aaaa-mm-dd

pub   2048R/3DE3f869 aaaa-mm-dd
uid                  Pepita TP
sub   2048R/C3CFF358 aaaa-mm-dd
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;\&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;Aportado originalmente por ~peron en &lt;a href=&quot;https://texto-plano.xyz/~peron/inst/pgp/gnupg.html&quot;&gt;Uso de correo cifrado con GNUPG&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Cómo utilizar el repositorio de git en Texto-Plano</title>
   <link href="wiki.texto-plano.xyz/2021/01/22/como-utilizar-el-repositorio-de-git-en-texto-plano"/>
   <updated>2021-01-22T22:50:00-03:00</updated>
   <id>wiki.texto-plano.xyz/2021/01/22/como-utilizar-el-repositorio-de-git-en-texto-plano</id>
   <content type="html">&lt;p&gt;Hemos implementado un repositorio de git que puedes utilizar libremente
para cualquier script, aplicación o cualquier material que necesite
versionado que quieras compartir con nosotros y otras personas en
internet. Este artículo no va a explicar el uso básico de GIT pero habrá
otro manual de uso básico o puedes revisar otros en Internet.&lt;/p&gt;

&lt;p&gt;(EDIT 21/12/2020: Partimos de la base de que tienes un repositorio local
listo para subir al sistema. Si no tienes un repositorio local, créalo)&lt;/p&gt;

&lt;h2 id=&quot;cómo-utilizar-el-repositorio-remoto&quot;&gt;Cómo utilizar el repositorio remoto&lt;/h2&gt;

&lt;p&gt;Lo primero es que debes crear un enlace simbólico a la carpeta de
/var/www/cgit_repos/&lt;USUARIO&gt; de la siguiente manera:&lt;/USUARIO&gt;&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;ln -s /var/www/cgit_repos/$USER ~/public_repos
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Para crear tu propio repositorio tienes que entrar ahora a
~/public_repos y crear un directorio terminado en .git:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;mkdir mi_programa.git
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Luego entra a él e inicializa el repositorio:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;cd mi_programa.git &amp;amp;&amp;amp; git init --bare
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Dentro de mi_programa.git hay un archivo que se llama config. Agrega lo
siguiente:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;[gitweb] owner = usuario &amp;lt;usuario@texto-plano.xyz&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Luego agrega un archivo que se llame “description” (puede ser con echo o
editándolo por vim/nano):&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;echo &quot;mi fabulosa aplicación que sirve para X cosa&quot; &amp;gt; description
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Eso por el lado del servidor. Para que tu repositorio local reconozca
este repo deberás añadir un repositorio remoto a tu sistema. Dependerá
de si trabajas tu aplicación desde tu ~ en texto-plano o si lo haces
desde tu PC local:&lt;/p&gt;

&lt;p&gt;Si estás en tu ~ de texto-plano.xyz:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;git remote add texto-plano.xyz /home/&amp;lt;USUARIO&amp;gt;/public_repos/&amp;lt;REPO&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Si estás en tu pc local:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;git remote add texto-plano.xyz &amp;lt;USUARIO&amp;gt;@texto-plano.xyz:public_repos/&amp;lt;REPO&amp;gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;(emplea SSH para conectarse)&lt;/p&gt;

&lt;p&gt;Cuando necesites actualizar un cambio:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;git push -u texto-plano.xyz master 
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;(o el nombre que le hayas puesto a la rama principal)&lt;/p&gt;

&lt;p&gt;Tu repositorio debería aparecer en &lt;a href=&quot;https://git.texto-plano.xyz&quot;&gt;https://git.texto-plano.xyz&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(Tomado desde la &lt;a href=&quot;https://wiki.tilde.institute&quot;&gt;wiki de tilde.institute&lt;/a&gt; cuyo sistema es análogo al
nuestro)&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Irssi como proxy</title>
   <link href="wiki.texto-plano.xyz/2021/01/22/irssi-como-proxy"/>
   <updated>2021-01-22T22:46:00-03:00</updated>
   <id>wiki.texto-plano.xyz/2021/01/22/irssi-como-proxy</id>
   <content type="html">&lt;p&gt;Irssi es uno de los clientes de IRC más apreciados, pero una alternativa
que no todos conocen es que puedes utilizarlo en modo proxy si tienes
acceso a una máquina conectada 24/7 y así mantener los registros de las
conversaciones aunque no estés.&lt;/p&gt;

&lt;p&gt;Irssi tiene una herramienta poco y mal documentada llamada irssiproxy,
pero su funcionamiento no es complicado. Primero vamos a suponer que
tenemos unirssi configurado en el servidor y ya conectado a una red IRC
con usuario. Esta configuración debe estar guardada para que irssi se
conecte automáticamente a tu usuario al iniciarlo.&lt;/p&gt;

&lt;h2 id=&quot;en-el-servidor&quot;&gt;En el servidor&lt;/h2&gt;

&lt;p&gt;Lo primero es asegurarnos de estar conectados en las redes en Irssi y
digitar:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/load proxy
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;(Esto lo puedes agregar a tu ~/.irssi/startup para que se ejecute
siempre)&lt;/p&gt;

&lt;p&gt;Este procedimiento activa el proxy, sin embargo así tal cual no va a
servirnos de nada. Debemos agregar una contraseña:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/SET irssiproxy_password contraseña
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Donde contraseña es lo que tú quieras.&lt;/p&gt;

&lt;p&gt;Ahora debemos decirle a Irssi que enrute cada red que queramos usar a
través de un puerto específico. Por ejemplo, Freenode va por un puerto,
tilde.chat va por otro:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/SET irssiproxy_ports Freenode=7001 tilde=7002
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Otra opción es que le digamos a irssi que escuche por un solo puerto
pero nos dé la opción de elegir:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/SET irssiproxy_ports ?=7000
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Finalmente tenemos que especificar a irssiproxy por qué dominio tiene
que escuchar con irssiproxy_bind. En teoría esto no debería ser
necesario y, de hecho, no aparece en la documentación que hemos visto
pero en algunos casos ha sido necesario agregarlo. Puedes anotar la IP o
bien el dominio.&lt;/p&gt;

&lt;p&gt;/SET irssiproxy_bind 127.0.0.1 (sólo disponible desde el mismo servidor)&lt;/p&gt;

&lt;p&gt;/SET irssiproxy_bind servidor.dominio&lt;/p&gt;

&lt;p&gt;Con estos cambios deberíamos tener un proxy complemente funcional.
Irssiproxy es en la práctica una forma de usar irssi de manera remota,
así que incluso si tienes el proxy remoto abierto puedes ver las
ventanas siendo creadas.&lt;/p&gt;

&lt;p&gt;Finalmente con:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/irssiproxy 
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Puedes verificar toda la configuración guardada del servidor (ideal para
saber si lo que digitamos fue correcto).&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/irssiproxy status 
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Nos informa cuántos clientes están conectados.&lt;/p&gt;

&lt;h2 id=&quot;cliente-irssi&quot;&gt;Cliente Irssi&lt;/h2&gt;

&lt;p&gt;En el cliente tenemos que saber conectarnos también. Desde el Irssi
local vamos a tener que agregar nuestro proxy como si fuese una red de
IRC nueva.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/NETWORK ADD proxy 
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;(el nombre puede ser el que quieras, aquí lo vamos a llamar proxy)&lt;/p&gt;

&lt;p&gt;Vamos a asociarle un servidor:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/SERVER ADD -auto -network proxy servidor.dominio 7001 CONTRASEÑA
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;La configuración de arriba nos serviría para conectarnos a Freenode si
seguimos el ejemplo del principio.&lt;/p&gt;

&lt;p&gt;¿Y qué pasa si usamos la configuración con un puerto único? Es más fácil
porque utilizamos menos recursos y un puerto, pero es un poco diferente:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/SERVER ADD -auto -network proxy servidor.dominio 7000 RED:CONTRASEÑA
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Luego guardamos todo con un&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/SAVE ALL
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;También podemos conectarnos directamente con un&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/connect proxy 7001 CONTRASEÑA
&lt;/code&gt;&lt;/pre&gt;

&lt;hr /&gt;

&lt;p&gt;La documentación oficial está en
https://irssi.org/documentation/startup/&lt;/p&gt;

&lt;p&gt;Un pequeño tutorial en inglés que nos ayudó
https://michael.lustfield.net/linux/irssi-as-a-proxy&lt;/p&gt;

&lt;p&gt;Echarle un vistazo a un archivo de texto oculto en el repo de Irssi
ayudó también https://github.com/irssi/irssi/blob/master/docs/proxy.txt&lt;/p&gt;

&lt;p&gt;Para cualquier pregunta o corrección admin arroba texto-plano.xyz&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Recibir el correo fuera del servidor</title>
   <link href="wiki.texto-plano.xyz/2021/01/22/recibir-el-correo-fuera-del-servidor"/>
   <updated>2021-01-22T22:39:00-03:00</updated>
   <id>wiki.texto-plano.xyz/2021/01/22/recibir-el-correo-fuera-del-servidor</id>
   <content type="html">&lt;p&gt;El correo de Texto Plano está pensado para verse dentro del sistema,
como en la mayoría de tildes o sistemas compartidos y su uso preferente
es para comunicarse con el administrador o bien con otros usuarios del
sistema o sistemas similares. No obstante, a veces es necesario o mucho
más cómodo consultar el correo de forma externa con un cliente en su
propio equipo.  Contrario a lo que se cree, esto es posible técnicamente
y sólo debe configurar su cliente.&lt;/p&gt;

&lt;p&gt;–&lt;/p&gt;

&lt;h2 id=&quot;imap&quot;&gt;IMAP&lt;/h2&gt;

&lt;p&gt;Servidor: imap.texto-plano.xyz:143&lt;/p&gt;

&lt;p&gt;Nombre de usuario: usuario&lt;/p&gt;

&lt;p&gt;Seguridad de la conexión: STARTTLS&lt;/p&gt;

&lt;p&gt;Autenticación: Con contraseña&lt;/p&gt;

&lt;h2 id=&quot;smtp&quot;&gt;SMTP&lt;/h2&gt;

&lt;p&gt;Servidor texto-plano.xyz:587&lt;/p&gt;

&lt;p&gt;Seguridad de la conexión: STARTTLS&lt;/p&gt;

&lt;p&gt;Nombre de usuario: usuario&lt;/p&gt;

&lt;p&gt;Autenticación: Con contraseña&lt;/p&gt;

&lt;p&gt;–&lt;/p&gt;

&lt;p&gt;Es importante señalar que es posible que usted no tenga una contraseña
en el sistema ya que no es necesaria para conectarse por SSH y el
sistema tampoco las crea. &lt;strong&gt;Si no puede crear su contraseña usted mismo/a
debe comunicarse con admin arroba texto-plano.xyz y solicitarla&lt;/strong&gt;
utilizando la misma cuenta de correo donde también será enviada la
contraseña.&lt;/p&gt;

&lt;p&gt;Una vez entregada la contraseña puede cambiarla inmediatamente con el
comando &lt;code&gt;passwd&lt;/code&gt;.  Solicito encarecidamente utilizar un sistema de
almacenamiento de contraseñas como keepass o incluso pass (disponible en
este mismo sistema) para no perder su contraseña del correo externo.&lt;/p&gt;

&lt;p&gt;Editado por ~ffuentes el 22-11-2020&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Juegos en texto-plano.xyz</title>
   <link href="wiki.texto-plano.xyz/2021/01/22/juegos-en-texto-plano-xyz"/>
   <updated>2021-01-22T22:21:00-03:00</updated>
   <id>wiki.texto-plano.xyz/2021/01/22/juegos-en-texto-plano-xyz</id>
   <content type="html">&lt;p&gt;Una lista de los juegos más interesantes disponibles en el sistema. Hay
más en /usr/games/ (si quieren una reseña de alguno de ellos o agregar
otro juego al sistema envía un correo a admin en texto-plano.xyz).&lt;/p&gt;

&lt;h2 id=&quot;dopewars&quot;&gt;Dopewars&lt;/h2&gt;

&lt;p&gt;Dopewars es un clásico de la consola en los clones de UNIX. En este caso
es un juego de estrategia por turnos en que actúas como un nuevo
microtraficante que busca ganar la mayor cantidad de dinero posible. La
versión original transcurre en Nueva York pero la internacionalizada que
está instalada en Texto Plano transcurre en Madrid y tiene un
vocabulario muy español.&lt;/p&gt;

&lt;h2 id=&quot;nethack&quot;&gt;Nethack&lt;/h2&gt;

&lt;p&gt;El clásico ‘roguelike’ o mejor dicho, un juego de rol de calabozos muy
conocido y muy antiguo. Este juego está instalado en su versión estándar
que no está internacionalizada (esto es, diseñada para ser traducida
fácilmente) pero existe una versión traducida llamada Spanish Nethack
que fue creada por Ray Chanson para aprender español.
http://spanish-nethack.sourceforge.net/spanish/index.html&lt;/p&gt;

&lt;p&gt;Este es un manual de NetHack en español en el viejo Geocities
http://www.geocities.ws/javis_mexico/nh/NHManual/intro.html&lt;/p&gt;

&lt;h2 id=&quot;vitetris&quot;&gt;Vitetris&lt;/h2&gt;

&lt;p&gt;En realidad hay muchas variantes del viejo tetris, de hecho, los juegos
de BSD traen una versión (/usr/games/tetris). Sin embargo, vitetris es
una versión colorida, con puntajes, que se puede jugar en parejas
también y que también permite jugar en línea. Es una variante del tetris
muy atractiva  y es quizás el juego más jugado de texto-plano.xyz&lt;/p&gt;

&lt;h2 id=&quot;2048&quot;&gt;2048&lt;/h2&gt;

&lt;p&gt;Este juego es más reciente, lo creó un italiano llamado Gabrielle
Cirulli y la versión que alojo aquí es una que descubrí gracias a
ascii.town. El código del juego viene de
https://github.com/mevdschee/2048.c y es muy fácil de compilar.&lt;/p&gt;

&lt;h2 id=&quot;csokoban&quot;&gt;Csokoban&lt;/h2&gt;

&lt;p&gt;Reproduce el puzzle sokoban y permite guardar la partida y registrar
algunas estadísticas&lt;/p&gt;

&lt;p&gt;Editado por última vez por ~ffuentes el 03-01-2021&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Gab: Un chat asíncrono</title>
   <link href="wiki.texto-plano.xyz/2021/01/22/gab-un-chat-asincrono"/>
   <updated>2021-01-22T22:16:00-03:00</updated>
   <id>wiki.texto-plano.xyz/2021/01/22/gab-un-chat-asincrono</id>
   <content type="html">&lt;p&gt;Es un sencillo programa de chat escrito por ~sloum de colorfield.space y
que depende de un archivo de texto. Es muy sencillo y sólo tiene dos
opciones más la ayuda.&lt;/p&gt;

&lt;p&gt;gab: Obtiene los últimos 5 mensajes&lt;/p&gt;

&lt;p&gt;gab -m (–msg) “mensaje”: Esta opción te permite enviar un mensaje.&lt;/p&gt;

&lt;p&gt;gab -l (–log) #: Esta opción te permite ver la cantidad de mensajes que
gustes donde # es un número.&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;Cualquier consulta sobre texto-plano.xyz a admin arroba texto-plano.xyz&lt;/p&gt;

&lt;p&gt;La página de GAB es https://tildegit.org/sloum/gab&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Cambiar el intérprete de comandos</title>
   <link href="wiki.texto-plano.xyz/2021/01/22/cambiar-el-interprete-de-comandos"/>
   <updated>2021-01-22T22:07:00-03:00</updated>
   <id>wiki.texto-plano.xyz/2021/01/22/cambiar-el-interprete-de-comandos</id>
   <content type="html">&lt;p&gt;OpenBSD por defecto utiliza ksh (Korn Shell) que es un intérprete de
comandos distinto al que se suele usar en Linux. No todo el mundo se
siente cómod o con ella.  Para cambiarlo no es indispensable la
asistencia del administrador. Basta con que hagas lo siguiente:&lt;/p&gt;

&lt;p&gt;Primero digita: cat /etc/shells. Aparecerá en pantalla un archivo con
una lista de intérpretes:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;#	$OpenBSD: shells,v 1.8 2009/02/14 17:06:40 sobrado Exp $
#
# list of acceptable shells for chpass(1).
# ftpd(8) will not allow users to connect who are not using
# one of these shells, unless the user is listed in /etc/ftpchroot.
/bin/sh
/bin/csh
/bin/ksh
/usr/local/bin/git-shell
/usr/local/bin/bash
/usr/local/bin/fish
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Luego digita “chpass” y el sistema te llevará a editar un archivo de
texto donde debes escribir la ruta del intérprete que prefieras (de la
lista de /etc/shells, de lo contrario no va a funcionar). Guarda, cierra
tu sesión y vuelve a entrar.&lt;/p&gt;

&lt;p&gt;Si tienes algún problema con esto avisa a admin arroba texto-plano.xyz.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Tutorial basico de la consola</title>
   <link href="wiki.texto-plano.xyz/2021/01/22/tutorial-basico-de-la-consola"/>
   <updated>2021-01-22T21:43:00-03:00</updated>
   <id>wiki.texto-plano.xyz/2021/01/22/tutorial-basico-de-la-consola</id>
   <content type="html">&lt;p&gt;En este tutorial explicaremos brevemente algunas operaciones básicas de
archivado y uso del intérprete de comandos, empleando los
siguientes comandos:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;touch – crear un fichero&lt;/li&gt;
  &lt;li&gt;pwd – imprimir el directorio de trabajo actual&lt;/li&gt;
  &lt;li&gt;ls – listar ficheros en el directorio actual&lt;/li&gt;
  &lt;li&gt;cp – copiar un fichero&lt;/li&gt;
  &lt;li&gt;mv – mover un fichero&lt;/li&gt;
  &lt;li&gt;rm – remueve un fichero&lt;/li&gt;
  &lt;li&gt;file – examina el tipo de fichero&lt;/li&gt;
  &lt;li&gt;less – lee un fichero&lt;/li&gt;
  &lt;li&gt;mkdir – crea un directorio&lt;/li&gt;
  &lt;li&gt;cd – cambia de directorio&lt;/li&gt;
  &lt;li&gt;rmdir – remueve un directorio&lt;/li&gt;
  &lt;li&gt;clear – borra la pantalla&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Por favor tenga en cuenta que cada uno de los comandos indicados arriba
cuentan con una página de manual (man-page) que describirá en
profundidad las posibilidades completas de cada comando. En este
tutorial, simplemente le daremos una reseña breve, suficiente para hacer
funcionar lo necesario desde la línea de comandos. Para mayor
información sobre las man-pages, vea Buscar Ayuda desde dentro del intérprete
o dirijase a http://man.openbsd.org/.&lt;/p&gt;

&lt;h2 id=&quot;opciones-de-comando-nombrado-de-ficheros&quot;&gt;Opciones de Comando Nombrado de ficheros&lt;/h2&gt;

&lt;h3 id=&quot;opciones-de-comando&quot;&gt;Opciones de Comando&lt;/h3&gt;

&lt;p&gt;Todos los comandos arriba indicados y muchos de los comandos que
descubrirá y usará en el intérprete pueden ser modificados a través del uso
de diferentes opciones.&lt;/p&gt;

&lt;p&gt;Lea las man-pages para encontrar detalles de las opciones disponibles
para cada comando. Las opciones normalmente responden a la sintaxis “ls
-l”. Esto significa que se tipea el comando, se hace un espacio una vez,
se tipea el guión y la letra de la opción que necesita utilizar.&lt;/p&gt;

&lt;h3 id=&quot;nombrado-de-ficheros&quot;&gt;Nombrado de ficheros.&lt;/h3&gt;

&lt;p&gt;Es de buena forma nombrar un archivo o directorio sin espacios libres en
el nombre. Un archivo como “mi diario.txt” podría ser mas dificultoso
para manejarse en el sistema que el mismo fichero nombrado
“mi_diario.txt”. Esto se debe a que el intérprete intepreta mi diario.txt
como dos archivos separados, “mi” y “diario.txt”. Si se encuentra ante
un fichero con espacios vacíos en el nombre, puede emplear los
siguientes métodos para manipularlo:&lt;/p&gt;

&lt;p&gt;Use tildes o comillas para designar el fichero:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;rm &quot;mi fichero.txt&quot; 
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;(para borrarlo)&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;cp 'mi fichero.txt' mi_fichero.txt   (para copiarlo con un nuevo nombre)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Use una barra invertida donde hay un espacio vacío:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;mv mifichero.txt mi_fichero.txt   
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;(para renombrarlo)&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;cd respaldos/páginas\ de\ texto/    
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;(para cambiar a un directorio)&lt;/p&gt;

&lt;p&gt;Use autocompletado con Tab: Muchos intérprete cuentan con autocompletado con
Tab.&lt;/p&gt;

&lt;p&gt;Esto significa que si ingresa los primeros dos o tres caracteres de un
nombre de fichero y presiona la opción Tab, a no ser que tenga múltiples
ficheros con nombres similares, su intérprete debería ser capaz de
autocompletar el nombre por usted. Nota: si no está en el mismo
directorio que el fichero que desea autocompletar, necesitará proveerle
al intérprete la ruta al mismo, la cual puede autocompletarse mediante Tab de
ser necesario.&lt;/p&gt;

&lt;p&gt;También, cuando nombre un fichero enpleando dos o más palabras, la
elección más segura es usar el guión bajo, el guión, y el punto. Por
ejemplo:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;mi_fichero.txt&lt;/li&gt;
  &lt;li&gt;mi-fichero.txt&lt;/li&gt;
  &lt;li&gt;mi.fichero.txt&lt;/li&gt;
  &lt;li&gt;mifichero.txt&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Al emplear otros símbolos, como la potencia (ampersand) podría causar
problemas porque algunos de estos símbolos podrían tener otros
significados para el uso del intérprete. Como siempre, para más información
diríjase a las man-pages del intérprete de su preferencia.&lt;/p&gt;

&lt;h2 id=&quot;comandos&quot;&gt;Comandos&lt;/h2&gt;

&lt;p&gt;Nota: en los ejempos a continuación, el signo porcentaje se emplea para
indicar el intérprete de comandos, y no debe ser tipeado o ingresado.&lt;/p&gt;

&lt;h3 id=&quot;touch-y-pwd--crea-un-fichero-e-imprime-el-directorio-de-trabajo&quot;&gt;touch y pwd : Crea un fichero e imprime el directorio de trabajo.&lt;/h3&gt;

&lt;p&gt;Para crear un fichero sin invocar un editor de texto u otro programa,
simplemente debe “tocarlo”. Por ejemplo, para crear un fichero llamado
naranja.txt, en el intérprete de comandos ingrese&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;touch naranja.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;¡Nada más que eso! Para ver el fichero que usted ha creado, tiene la
capacidad de listar el fichero y los directorios contenidos en el
directorio de trabajo actual. Primero, vea en qué directorio se
encuentra. Por defecto, una vez creado un enlace SSH o Telnet hacia su
cuenta de intérprete, usted se encontrará en su directorio Home de usuario.
Para confirmarlo, en el intérprete de comandos ingrese:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;pwd
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Si su nombre de usuario es Marinette, tal vez vea algo como esto:&lt;/p&gt;

&lt;p&gt;/home/marinette&lt;/p&gt;

&lt;h3 id=&quot;ls-lista-ficheros-en-su-directorio-actual&quot;&gt;ls: lista ficheros en su directorio actual&lt;/h3&gt;

&lt;p&gt;Ahora listemos los ficheros que se encuentran en nuestro directorio
actual. Tipeamos:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;ls
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Si hemos seguido el tutorial y creado un fichero llamado naranja.txt con
el comando touch, podremos ver este fichero en la devolución del comando
ls. A continuación, intentaremos ls con varias opciones para observar
las diferencias en la información que nos devolverá el sistema UNIX.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;ls -l 

ls -hl 

ls -a 

ls -al 

ls -ahl
&lt;/code&gt;&lt;/pre&gt;

&lt;h3 id=&quot;cp--copiar-un-fichero&quot;&gt;cp : Copiar un fichero&lt;/h3&gt;

&lt;p&gt;Copiar un fichero es muy simple. El comando “copy” sirve dos funciones
importantes: hacer una copia de respaldo simple del archivo en cuestión,
y también renombrarlo mientras se conserva el original.&lt;/p&gt;

&lt;p&gt;Supongamos que deseamos respaldar el fichero naranja.txt en un
subdirectorio llamado respaldos (expondremos en más detalle más
adelante). Para hacer esto, ingresaremos lo siguiente:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;cp naranja.txt respaldos/
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;La barra hacia adelante al final del nombre respaldo indica que esto es
un directorio.&lt;/p&gt;

&lt;p&gt;Para emplear el comando cp para cambiar el nombre de un fichero sin
destruir el original, tipearíamos lo siguiente:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;cp naranja.txt mandarina.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;…donde mandarina.txt es el nombre nuevo del fichero.&lt;/p&gt;

&lt;p&gt;Y para copiar el fichero original naranja.txt al directorio respaldos y
cambiarle el nombre al mismo tiempo, ingresaríamos lo siguiente&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;cp naranja.txt backups/mandarina.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;h3 id=&quot;mv--mover-o-renombrar-un-fichero&quot;&gt;mv : mover o renombrar un fichero&lt;/h3&gt;

&lt;p&gt;El comando mv funciona de forma similar al comando cp, pero con una
diferencia fundamental. Mover el fichero significa destruir el nombre de
fichero original.&lt;/p&gt;

&lt;p&gt;Por lo tanto el siguiente comando:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;mv naranja.txt mandarina.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;…reemplazará el fichero naranja.txt con un fichero nuevo llamado
mandarina.txt .&lt;/p&gt;

&lt;p&gt;Puede mantener el nombre de archivo con el comando mv al movel el
fichero a un directorio distinto. Para hacerlo así, ingrese lo
siguiente:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;mv naranja.txt respaldos/
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Esto moverá el fichero naranja.txt adentro del directorio respaldos.
Para mover el fichero al directorio respaldos y para renombrarlo al
moverlo, ingrese:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;mv naranja.txt respaldos/mandarina.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;h3 id=&quot;rm--remover-un-fichero&quot;&gt;rm : remover un fichero&lt;/h3&gt;

&lt;p&gt;Remover un fichero también es muy simple. El comando para hacerlo es rm.
Para remover completamente y destruir un fichero, simplemente ingrese:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;rm naranja.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;h3 id=&quot;nota-corta-en-el-uso-interactivo&quot;&gt;Nota corta en el uso interactivo.&lt;/h3&gt;

&lt;p&gt;Los comandos para copiar, mover y remover ficheros pueden provocar
bastante destrucción si no se los emplea cuidadosamente. Para accionar
de forma interactiva, ingrese dicha opción ingresando:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;cp -i naranja.txt respaldos/naranja.txt 

mv -i naranja.txt mandarina.txt 

rm -i naranja.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Al activar la opción interactiva, se le solicitará que responda si o no
(yes o no respectivamente) para cada fichero que está solicitando
remover. En los comandos cp -i  y mv -i se le solicitará si y sólo si el
fichero que está copiando o está moviendo sobreescribiría otro fichero.&lt;/p&gt;

&lt;h3 id=&quot;file-examina-el-tipo-de-fichero&quot;&gt;file: examina el tipo de fichero&lt;/h3&gt;

&lt;p&gt;El comando file es útil para determinar qué tipo de fichero es un
fichero en particular. En los sistemas operativos similares a UNIX, el
nombre de fichero es bastante flexible, y la extensión de fichero (por
ejemplo, el apéndice .txt) no siempre es necesaria. De tal manera, si
alguien le envió un fichero y desea tener certeza de qué tipo de fichero
es antes de abrirlo, emplee el comando file de esta manera:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;file nombre_del_fichero
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Los resultados para un fichero de texto podrían ser algo como esto:&lt;/p&gt;

&lt;p&gt;name_of_file: ASCII text&lt;/p&gt;

&lt;p&gt;Supongamos que alguien le envió un fichero de imagen llamado
sultano.mengano en formato PNG y desea tener certeza que realmente se
trata de un fichero PNG. Simplemente ingresamos:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;file sultano.mengano
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Si el fichero realmente es un fichero PNG, deberíamos ver algo similar a
esto: sultano.mengano: PNG image data, 922 x 691, 8-bit/color RGBA,
non-interlaced&lt;/p&gt;

&lt;h3 id=&quot;less--lee-un-fichero&quot;&gt;less : Lee un fichero&lt;/h3&gt;

&lt;p&gt;El comando lees es un tipo de paginador disponible para ver y navegar en
ficheros de texto sin alterar o abrir el fichero en un editor de texto.
Se le recomienda leer la man-page para este comando porque posee muchos
atributos útiles como realizar búsquedas a través del texto de palabras
o cadenas específicas. Invóquelo con el nombre de fichero que desea ver:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;less naranja.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Si hay más texto en el fichero que el que puede presentar la pantalla de
su terminal, presione la barra espaciadora para desplazar página a
página. A menudo, las teclas AvPág o RePág del teclado operarán y las
flechas del cursor le permitirán normalmente desplazarse línea por línea
en ambas direcciones.&lt;/p&gt;

&lt;h3 id=&quot;mkdir-crear-un-directorio&quot;&gt;mkdir: Crear un directorio.&lt;/h3&gt;

&lt;p&gt;Usted creará un directorio usando el comando mkdir. Para crear el
directorio respaldos que usamos en los ejemplos previos, ingrese:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;mkdir respaldos
&lt;/code&gt;&lt;/pre&gt;

&lt;h3 id=&quot;cd--cambiar-directorio&quot;&gt;cd : cambiar directorio&lt;/h3&gt;

&lt;p&gt;El comando cd se emplea para cambiar de directorio. Si estamos en
nuestro directorio home, y deseamos ir al directorio recientemente
creado respaldos, simplemente ingresamos:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;cd respaldos
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Para regresar al directorio home, simplemente tipeamos:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;cd
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Al ingresar cd por sí mismo siempre nos llevará al directorio home, lo
cual es útil si estamos en una rama alejada en nuestro árbol de
directorios. Si sólo deseamos volver un nivel, ingresamos:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;cd ..
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Y por supuesto, suempore podremos ingresar la ruta completa del
directorio al cual queremos desplazarnos:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;cd /usr/bin
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Para cambiar al directorio de trabajo anterior, ingresamos:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;cd -
&lt;/code&gt;&lt;/pre&gt;

&lt;h3 id=&quot;rmdir--remover-un-directorio&quot;&gt;rmdir : remover un directorio&lt;/h3&gt;

&lt;p&gt;Y para remover un directorio vacío, empleará el comando rmdir.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;rmdir respaldos
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;El comando rmdir sólo funcionará si el directorio que desea eliminar
está vacío de ficheros. Si un directorio contiene ficheros en él y se
encuentra seguro que desea eliminar dicho directorio junto con todos los
ficheros que contiene, tiene que ingresar el comando rm de forma
recursiva, ingresando:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;rm -r nombre_de_directorio
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;La opción -r le dice al comando rm que remueva el directorio y todo su
contenido, incluyendo subdirectorios. ¡Sea muy cuidadoso al emplear este
comando! De hecho, la mejor forma de ejecutar este comando es ingresar:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;rm -ir
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Esto invocará el uso interactivo del comando de remoción, que le
preguntará que responda “yes” o “no” a cada fichero y directorio dable
de ser removido. Nuevamente, lea las man-pages para mayores detalles en
http://man.openbsd.org/.&lt;/p&gt;

&lt;h3 id=&quot;clear--borrar-la-pantalla&quot;&gt;clear : borrar la pantalla.&lt;/h3&gt;

&lt;p&gt;Finalmente, para borrar la pantalla ingrese lo siguiente en el intérprete:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;clear
&lt;/code&gt;&lt;/pre&gt;

&lt;hr /&gt;

&lt;p&gt;~peron Editado por ~ffuentes 22-01-2021&lt;/p&gt;

</content>
 </entry>
 
 <entry>
   <title>Uso básico de tmux</title>
   <link href="wiki.texto-plano.xyz/2021/01/22/tmux"/>
   <updated>2021-01-22T21:11:00-03:00</updated>
   <id>wiki.texto-plano.xyz/2021/01/22/tmux</id>
   <content type="html">&lt;h2 id=&quot;qué-es-tmux&quot;&gt;¿Qué es tmux?&lt;/h2&gt;

&lt;p&gt;Es un administrador de ventanas para la terminal que nos permite con una
sola conexión al servidor abrir varias aplicaciones al mismo tiempo y
mantener una sesión activa incluso si nos desconectamos del mismo. Tmux
es un proyecto creado por OpenbSD (Texto-plano funciona en un servidor
OpenBSD).&lt;/p&gt;

&lt;h2 id=&quot;cómo-iniciar-una-instancia-de-tmux&quot;&gt;¿Cómo iniciar una instancia de tmux?&lt;/h2&gt;

&lt;p&gt;Simplemente escribe:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;tmux
&lt;/code&gt;&lt;/pre&gt;

&lt;h2 id=&quot;cómo-abro-una-nueva-ventana&quot;&gt;¿Cómo abro una nueva ventana?&lt;/h2&gt;

&lt;p&gt;Todas las operaciones de tmux se realizan con la combinación de teclas
Ctrl+b.  Mantienes presionada Ctrl mientras presionas b, sueltas ambas y
presionas la tecla que realiza la función que deseas.&lt;/p&gt;

&lt;p&gt;En este caso debes presionar Ctrl+b, C&lt;/p&gt;

&lt;h2 id=&quot;cómo-me-muevo-entre-ventanas&quot;&gt;¿Cómo me muevo entre ventanas?&lt;/h2&gt;

&lt;p&gt;Presionas Ctrl+b como antes y digitas el número de la ventana. Por
ejemplo, Ctrl+b, 1.&lt;/p&gt;

&lt;p&gt;También puedes moverte hacia la derecha con Ctrl+b, n.  Para moverte
hacia la izquierda presiona Ctrl+b, p.&lt;/p&gt;

&lt;p&gt;Otra opción es seleccionarla de un listado con Ctrl+b, w.&lt;/p&gt;

&lt;h2 id=&quot;le-puedo-cambiar-el-nombre-a-una-ventana&quot;&gt;¿Le puedo cambiar el nombre a una ventana?&lt;/h2&gt;

&lt;p&gt;Sí, se puede con Ctrl+b, , (sí, es una coma).&lt;/p&gt;

&lt;h2 id=&quot;cómo-cierro-una-ventana&quot;&gt;¿Cómo cierro una ventana?&lt;/h2&gt;

&lt;p&gt;Con Ctrl+b, &amp;amp;. (te va a preguntar si estás seguro/a).&lt;/p&gt;

&lt;h2 id=&quot;cómo-muevo-una-ventana-de-lugar&quot;&gt;¿Cómo muevo una ventana de lugar?&lt;/h2&gt;

&lt;p&gt;Esto es un poco más complejo pero se hace así:&lt;/p&gt;

&lt;p&gt;Primero: Ctrl+b, : (dos puntos)&lt;/p&gt;

&lt;p&gt;Segundo (escribimos):&lt;/p&gt;

&lt;p&gt;swap-window -s [número de la ventana] -t [posición que queremos]&lt;/p&gt;

&lt;h2 id=&quot;cómo-me-salgo-de-la-sesión-ssh-sin-cerrar-tmux&quot;&gt;¿Cómo me salgo de la sesión ssh sin cerrar tmux?&lt;/h2&gt;

&lt;p&gt;Escribimos:&lt;/p&gt;

&lt;p&gt;Ctrl+b, d&lt;/p&gt;

&lt;h2 id=&quot;cómo-recupero-una-sesión-de-tmux&quot;&gt;¿Cómo recupero una sesión de tmux?&lt;/h2&gt;

&lt;p&gt;Supongamos que al día siguiente de haber iniciado una sesión de tmux
volviste.  Escribe en la terminal:&lt;/p&gt;

&lt;p&gt;tmux a -t 0 (suponiendo que es la sesión 0, puedes tener varias)&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;Hay muchas más cosas que se pueden hacer pero esto es lo fundamental
para poder usar nuestra sesión SSH de una forma eficiente y mantener
procesos funcionando cuando apaguemos nuestro pc en casa. Uno de los
casos más comunes es mantener una sesión de IRC activa.&lt;/p&gt;

&lt;p&gt;Cualquier consulta a admin arroba texto-plano.xyz&lt;/p&gt;

</content>
 </entry>
 
 <entry>
   <title>Claves públicas, claves privadas y SSH ¿Para qué sirven?</title>
   <link href="wiki.texto-plano.xyz/2021/01/22/usar-clave-ssh"/>
   <updated>2021-01-22T21:04:00-03:00</updated>
   <id>wiki.texto-plano.xyz/2021/01/22/usar-clave-ssh</id>
   <content type="html">&lt;p&gt;Cuando revisamos nuestro correo o la cuenta de alguna red social
generalmente utilizamos una &lt;strong&gt;contraseña&lt;/strong&gt;. Sin embargo, a menos que
generes contraseñas seguras y sin repetirlas jamás entre servicios, no
es seguro. En el caso de un sistema UNIX como un servidor Linux o un BSD
(como Texto Plano) es aún más peligroso por la cantidad de cosas que es
posible hacer con un servidor. Por eso para conectarnos a un sistema hoy
en día utilizamos una conexión cifrada (a través del protocolo SSH) y
una clave criptográfica para identificarnos.&lt;/p&gt;

&lt;p&gt;¿Cómo funciona una clave criptográfica? Es muy simple: Si me quiero
conectar a un servidor como Texto-Plano necesito tener una clave SSH.
Esta clave (que puede usar distintos algoritmos de cifrado como RSA o
ED25519) tiene 2 partes:&lt;/p&gt;

&lt;p&gt;Clave privada (esta sólo la tienes tú y nadie más) Clave pública (ésta
se comparte con el servidor) Para autenticarte, SSH te pedirá tener la
misma clave pública que está almacenada en el servidor, pero para que
funcione debes tener la clave privada junto a ella, de lo contrario, no
puedes demostrar que esa clave es tuya.&lt;/p&gt;

&lt;h2 id=&quot;cómo-creo-una-clave-para-ssh&quot;&gt;¿Cómo creo una clave para SSH?&lt;/h2&gt;

&lt;h3 id=&quot;openssh&quot;&gt;OpenSSH&lt;/h3&gt;

&lt;p&gt;Con OpenSSH (generalmente en sistemas UNIX como GNU/Linux, BSD u OSX
pero también puede usarse en Windows si lo instalas) utilizas el
siguiente comando:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;ssh-keygen
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Y siguiendo las instrucciones deberías tener dos archivos que por
defecto se llaman:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;id_rsa (o id_ed25519, privado, no lo compartas con nadie)&lt;/li&gt;
  &lt;li&gt;id_rsa.pub (o id_ed25519.pub, público, el que debes copiar en el otro servidor)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Luego sólo te queda copiar el archivo con la clave pública al servidor,
en la carpeta ~/.ssh/.&lt;/p&gt;

&lt;p&gt;Si accedes al servidor con una contraseña puedes utilizar el comando
ssh-copy-id para transferirlo tú mismo:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;ssh-copy-id usuario@servidor.dominio
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;De no tener acceso al servidor con contraseña debes o contactar al
administrador o entrar desde otro equipo en que sí tengas acceso y pegar
el contenido de id_rsa.pub en ~/.ssh/authorized_keys.&lt;/p&gt;

&lt;p&gt;Si tienes acceso a tu carpeta de usuario puedes hacer esto con la
utilidad cat:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;cat id_rsa.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;(Si es tu primera clave pública en texto-plano.xyz tendrás que enviarlo
por correo a admin arroba texto-plano.xyz ya que este servidor no admite
autenticación por contraseña)&lt;/p&gt;

&lt;h3 id=&quot;con-puttygen-windows&quot;&gt;Con PuttyGen (Windows):&lt;/h3&gt;

&lt;p&gt;Generalmente en Windows nos conectamos a sistemas externos por consola a
través de Putty que emplea un formato distinto, el archivo .PPK.&lt;/p&gt;

&lt;p&gt;Para esto necesitamos la utilidad PuttyGen que va a crear una clave para
nosotros. Tanto Putty como PuttyGen los podemos conseguir en la web de
Putty.&lt;/p&gt;

&lt;p&gt;Primero ejecutamos PuttyGen. Haremos clic en “Generate” y luego que el
proceso termine tendremos que hacer clic en “Save private key”. Putty
guarda su clave pública en un formato distinto así que es preferible que
la copiemos desde el cuadro de texto de arriba que dice “Public key for
pasting into OpenSSH authorized_keys file” y ese archivo lo pegamos en
~/.ssh/authorized_keys (o se lo enviamos al administrador del servidor
si es el caso)&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://texto-plano.xyz/img/puttygen.jpg&quot; alt=&quot;Puttygen&quot; class=&quot;center-image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Luego sólo queda agregar nuestra clave privada a Putty para conectarnos.
Nos vamos a Connection -&amp;gt; SSH -&amp;gt; Auth y donde dice “Private key file for
authentication” presionamos Browse y buscamos el archivo .PPK&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://texto-plano.xyz/img/putty-key.jpg&quot; alt=&quot;Putty&quot; class=&quot;center-image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Estamos listos para conectarnos. Volvemos a Session y digitamos la
dirección del servidor, opcionalmente guardamos la conexión (si la vamos
a usar en Saved Sessions) y presionamos Open para conectarnos.&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;Cualquier duda al respecto envíanos un correo a admin arroba
texto-plano.xyz&lt;/p&gt;
</content>
 </entry>
 

</feed>
Un proyecto texto-plano.xyz