Book "Linux in Actione".

Book "Linux in Actione". Salve, Khabro habitant! In libro David Clinton XII incepta verae vitae describit, inter quas automatum tuum tergum et systema convalescendum, nubem fasciculi personalem Dropbox stilo ponens, ac proprium tuum servientem MediaWiki creans. Explores virtualizationem, calamitatem recuperationem, securitatem, tergum, DevOps, et systema sollicitudinum per studia iucunda causa. Singula capita cum recognitione optimarum observationum, glossarium novorum nominum, et exercitationum.

Excerpt β€œ10.1. Creando OpenVPN cuniculum"

Iam multa de encryptione in hoc libro locutus sum. SSH et SCP notitias per remotas nexus translatas tueri possunt (Caput 3), fasciculus encryption notitias custodire potest dum in calculonis servi (Caput 8), et TLS/SSL testimoniales notitias inter sites et navigatores clientes tueri possunt (Cap. IX) . Aliquando autem notitia tua latius nexus protegi debet. Exempli gratia, fortasse aliqua sodalium tuorum turmae in via operantur dum hotspots publica per Wi-Fi coniungens. Omnia puncta huiusmodi accessu securae esse non debes, sed populi tui viam egent ad coniungendi facultatesβ€”et hoc est ubi VPN iuvare potest.

VPN cuniculum proprie designatum praebet directum nexum inter clientes remotos et ministratorem in via quae notitia celat dum percurrit per ornatum retis insecuris. Quid ergo? Iam multa instrumenta vidisti quae cum encryptione hoc facere possunt. Verus valor VPN est quod aperiendo cuniculum, retiacula remota coniungere ac si localia essent omnia. In sensu bypass es uteris.

Hac retia extensa utentes, administratores suum munus ministrantibus alicunde praestare possunt. Sed potius, societas cum opibus per plures loca diffusa potest eas omnes visibiles et pervias facere omnibus coetibus qui eis indigent, ubicumque sunt (Figura 10.1).

Cuniculum ipsum securitatem non praestat. Sed unum ex signis encryption in retis structura comprehendi potest, quae signanter gradum securitatis auget. Cuniculi in aperto fonte OpenVPN involucro utentes eodem TLS/SSL encryption utentes, iam legeris. OpenVPN optionis non solum effosso in promptu est, sed ex notissimis est. Aliquantum velocius et securius censetur quam alter Iacur 2 cuniculi protocollo quo IPsec encryption utitur.

Visne omnes super equos tuos secure inter se communicare dum in via vel operando in diversis aedificiis? Ad hoc faciendum, debes servo OpenVPN creare ut applicationem communicationis et accessus ad network localis servientis accedat. Ad hoc ad operandum, omne quod debes facere, duo machinis virtualis aut duo continentia currunt: unum agere ut ministrans/exercitum et unum clientem agere. VPN aedificans processum simplex non est, ita probabiliter aestimare est ut paucis momentis magnas picturas in animo habere.

Book "Linux in Actione".

10.1.1. OpenVPN Servo configurationis

Priusquam incipias, dabo tibi aliquid utile consilium. Si te ipsum facturus es (et tibi valde commendo), te probabiliter laborasse invenies cum multis fenestris terminalibus apertis in tuo Desktop, singulae machinae diversae coniunctae. Periculum est aliquando mandatum iniuriam in fenestra intrabis. Ad hoc evitare, hostname imperio uti potes, ut machinae nomen in linea praecepti ad aliquid ostendatur, quod tibi ubi es, clare narrat. Cum hoc feceris, necesse est ut e servo stipes et in novas uncinis ad effectum aperi. Hoc est quod is vultus amo;

Book "Linux in Actione".
Hunc accessum sequendo et opportuna nomina singulis machinis quas operaris nominas, facile vestigia ubi sis.

Post hostname utens, molestus incurrere potes, ut Hostiam Hostiam OpenVPN-Servi nuntias resolvere possis, cum subsequentia mandata exequaris. Adaequationis /etc/exercituum lima cum congruo novo hostname lis solvere debet.

Praeparans servo tuo pro OpenVPN

Ad institutionem OpenVPN in servo tuo, duabus fasciculis debes: openvpn et rsa facili (encryption key processus generationis regere). Utentes CentOS primum instituere debent repositorium epel-release, si opus est, sicut in Capitulo 2. Ut accessum ad applicationem servo probare posses, etiam Apache servientis interretialem instituere potes (apache2 de Ubuntu et httpd in CentOS).

Dum servo tuo disponis, admoneo activum firemurum qui omnes portus impedit 22 (SSH) et 1194 (OpenVPN's default port). Hoc exemplum illustrat quomodo ufw in Ubuntu laborabit, sed scio adhuc meminisse programmatis CentOS firewalld ex Caput IX.

# ufw enable
# ufw allow 22
# ufw allow 1194

Ut interna fusa inter retis interfaces in calculonis efficiat, necesse est ut unam lineam (net.ipv4.ip_forward = 1) in lima /etc/sysctl.conf fundere debes. Hoc permittet clientes remotos redirected ut opus semel conexum sit. Ad novum opus optionis faciendi, -p currite sysctl;

# nano /etc/sysctl.conf
# sysctl -p

Servus tuus ambitus nunc plene configuratur, sed adhuc unum est quod facere antequam paratus sis: opus est ut sequentes gradus perficias (singulos deinde operies).

  1. Facere clavem infrastructuram publicas (PKI) claves encryptionis in servo utens scriptorum sarcina facili instructa. Essentialiter, OpenVPN ministrator etiam ut sua auctoritate certificatorium agit (CA).
  2. Praeparet oportet claves ad clientem
  3. Configurare in server.conf lima pro servo
  4. Erige te clientem OpenVPN
  5. Reprehendo tuum VPN

Encryption claves generans

Ad simplicia custodienda, substructionem tuam clavem erigere potes in eadem machina qua OpenVPN server currit. Nihilominus, securitas optimas consuetudines typice suadeant utendo servo CA separato ad operas producendas. Processus generandi et distribuendi encryption subsidiorum clavis ad usum in OpenVPN illustratur in Fig. 10.2.

Book "Linux in Actione".
Cum OpenVPN instituisti, directorium /etc/openvpn/ automatice creatum est, sed nihil tamen in eo est. Fasciculi openvpn ac facili rsa veniunt cum exemplis exempla documentorum quae pro fundamento configurationis tuae uti potes. Ut processus certificationis incipias, faciles-rsa templates presul ex /usr/share/ ad /etc/openvpn et mutationem ad facili-rsa/reminis/

# cp -r /usr/share/easy-rsa/ /etc/openvpn
$ cd /etc/openvpn/easy-rsa

Facilis-rsa directorium nunc satis pauca scripta continebit. in mensa 10.1 instrumenta enumerat quibus claves creandis uteris.

Book "Linux in Actione".

Praemissae operationes privilegia radicem requirunt, ut radix per sudo su fieri debes.

Primum fasciculum operaris cum dicitur vars et variabilium ambitum continet, cum claves generandi facilia utitur. Tabellam emendare debes ut tuis bonis utaris pro defectu valorum qui iam sunt. Hoc est quod fasciculus meus similis erit (Listing 10.1).

eget 10.1. Praecipua fragmenta tabellae /etc/openvpn/easy-rsa/vars

export KEY_COUNTRY="CA"
export KEY_PROVINCE="ON"
export KEY_CITY="Toronto"
export KEY_ORG="Bootstrap IT"
export KEY_EMAIL="[email protected]"
export KEY_OU="IT"

Fasciculus varius currens transibit bona sua ad testam ambitum, ubi in contentis novarum clavium tuarum erunt. Cur sudo per se non imperat? Quia in primo gradu vars scriptionem nominatam emendamus et deinde applicamus. Applicando et significat quod variae fasciculi bona sua ad testam ambitum transeunt, ubi contentis novarum clavium tuarum includentur.

Vide ut re-currere tabella utens nova testa ad processum infectum perficiendum. Cum hoc factum sit, scriptura te admonebit ut alium scriptionem, omnia munda, quaelibet contenta removeas in indice /etc/openvpn/facilis-rsa/clavium//

Book "Linux in Actione".
Naturaliter proximus gradus est ut omnes scripturae mundanae currant, quas sequitur constructum-ca, quo scripto utitur ad radicem certificationis faciendam. Rogaberis ad confirmandas identitates uncinis a vars provisum;

# ./clean-all
# ./build-ca
Generating a 2048 bit RSA private key

Proximum est scriptori constructio-servatoris. Cum eadem scriptione phitool utitur cum nova radice certificamenti, easdem interrogationes videbis ad confirmandam par clavis creationem. Claves nominabuntur ex argumentis praeteritis, quae, nisi plures VPNs in hac machina curris, solent esse servi, ut in exemplo:

# ./build-key-server server
[...]
Certificate is to be certified until Aug 15 23:52:34 2027 GMT (3650 days)
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated

OpenVPN parametris generatis a Diffie-Hellman algorithmo (utendo constructo-dh) utitur ad authenticas tractandas pro novis coniunctionibus. Tabella hic creata non occulte esse indiget, sed instrumento aedificato-dh scripto generari debet ad claves RSA quae nunc activae sunt. Si RSA claves novas in futuro creas, etiam opus est tabellam Diffie-Hellman renovare:

# ./build-dh

Claves lateris servitoris tui nunc in indice /etc/openvpn/facilis-rsa/clavium//inspectio finient, sed OpenVPN hoc non scit. Defalta, OpenVPN claves in /etc/openvpn/ exspectabit, eas ita scribe:

# cp /etc/openvpn/easy-rsa/keys/server* /etc/openvpn
# cp /etc/openvpn/easy-rsa/keys/dh2048.pem /etc/openvpn
# cp /etc/openvpn/easy-rsa/keys/ca.crt /etc/openvpn

Praeparans Client Encryption Keys

Ut iam vidimus, TLS encryption utitur binis clavibus congruentibus: unus in calculo constitutus et unus in cliente remoto constitutus. Hoc modo clavibus clientis opus erit. Amicus noster vetus phitool prorsus est quod tibi hoc opus est. In hoc exemplo, cum programmata /etc/openvpn/easy-rsa/ in directorio currimus, illud argumentum clientelam imaginum generandi client.crt et client.key transimus:

# ./pkitool client

Duo fasciculi clientis, una cum fasciculi originalis ca.crt adhuc in clavium/repertorio, nunc secure transferuntur ad clientem tuum. Ob eorum dominium et iura accessum, hoc tam facile esse non potest. Simplicissimus aditus est manualiter effingo contenta fontis fasciculi (et nihil nisi illud contentum) in currit terminalem in escritorio tuo PC (elige textum, ius-click in eo, et Exemplar ex elencho lego). Deinde hoc crustulum in novum fasciculum cum eodem nomine quod in secundo termino cum cliente tuo connexum creas.

Sed quis pretium ligula. Sed cogita sicut administratorem quod non semper accessum ad GUI ubi rescissa/passim possibilia sunt. Effingo tabellas ad directorium domus tuae usoris (ita ut operatio scp remota ad eas accedere possit), et tunc uti chown ad dominium imaginum ab radice ad usorem regularem non radicum mutandum ut actio remotior peragi possit. Effice ut omnia documenta tua nunc inaugurata et pervia sint. Ad clientem paulo post movebis;

# cp /etc/openvpn/easy-rsa/keys/client.key /home/ubuntu/
# cp /etc/openvpn/easy-rsa/keys/ca.crt /home/ubuntu/
# cp /etc/openvpn/easy-rsa/keys/client.crt /home/ubuntu/
# chown ubuntu:ubuntu /home/ubuntu/client.key
# chown ubuntu:ubuntu /home/ubuntu/client.crt
# chown ubuntu:ubuntu /home/ubuntu/ca.crt

Cum plena copia clavium encryptionis paratae ad eundum, servo narrare debes quomodo VPN creare vis. Hoc fit utens tabella servo.conf.

Reducendo numerum keystrokes

Estne nimis typing? Expansio cum uncis adiuvabit haec sex mandata ad duo reducenda. Certo te his duobus exemplis studeas et quid agatur intelligas. Potius intelligere poteris quomodo haec principia applicare ad operationes quae sunt decem vel etiam centeni elementorum;

# cp /etc/openvpn/easy-rsa/keys/{ca.crt,client.{key,crt}} /home/ubuntu/
# chown ubuntu:ubuntu /home/ubuntu/{ca.crt,client.{key,crt}}

Statuentes in server.conf file

Quomodo scis quid in servo.conf fasciculi simile spectare debeas? Memento facilis rsa presul templates ex /usr/share/ exscriptum? Cum OpenVPN inauguratus es, relictus es cum compressa configuratione file templates quod imitari /etc/openvpn/ potes. Hoc in scrinium aedificabo quod Formula scrinium est et ad utile instrumentum introducam: zcat.

Iam scis de excudendi textu contenti fasciculi ad velum utens imperio catti, sed quid si lima utens gzip comprimatur? Potes semper tabellam unzip et tunc felem feliciter outputare, sed unum vel duos gradus plus quam necesse est. Instead, as you might have guessed, you can to issue the zcat command to load the text unpacked into memory in one step. In sequenti exemplo, pro textu imprimendi ad velum, illud ad novum fasciculum, quod servo vocatur, rediges.

# zcat 
  /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz 
  > /etc/openvpn/server.conf
$ cd /etc/openvpn

Abiciamus documenta ampla et utilia quae cum tabella venit et vide quid videre posset sicut cum edere fecisti. Nota semicolon (;) narrat OpenVPN non legere vel exequi sequentem lineam (Listing 10.2).

Book "Linux in Actione".
Horum aliquot occasus transeamus.

  • Defalta, OpenVPN portum incurrit 1194. Hoc mutare potes, exempli gratia, actiones tuas ulteriores abscondere vel cum aliis activorum cuniculis conflictus vitare. Cum 1194 minimam coordinationem cum clientibus requirit, optimum est hoc modo facere.
  • OpenVPN utitur vel Protocollo Transmissionis Control (TCP) vel Protocollo usoris Datagram (UDP) ut data transmitteret. TCP paulo tardius esse potest, sed certius et verisimilius intelligendum est per applicationes in utraque parte cuniculi currentis.
  • Dev tun specificare potes cum simpliciorem, ip cuniculum efficientem creare vis, quae notitias contentas portat et nihil aliud. Si, contra, multiplices interfaces retiaculas coniungere necesse est (et retiacula quae repraesentant) pontem Ethernet creans, eligendum erit dev sonum. Si non intelligis quid haec omnia sint, tun argumento utere.
  • Sequuntur quattuor lineae OpenVPN nomina trium imaginum authenticarum in calculonis servi et optionum dh2048 quas antea creatas dant.
  • Distributorii linea subnet larvam quam facultatem ad IP inscriptiones electronicas clientibus in login assign.
  • Dis libitum parametri "via 10.0.3.0 255.255.255.0" permittit clientibus remotis accedere privatis subsidiis post servo. Hoc opus faciens etiam retiaculum in ipso servo constituendum requirit ut subnet privatum de OpenVPN subnet (10.8.0.0).
  • Portus-partis localhost 80 linea permittit te ad clientem negotiationem redirectam venientem in portum 1194 ad auscultationem interretialis localis in portu 80. (Hoc utile erit si servo interreti uti ad tuam VPN probandam). tunc TCP protocollo eligitur.
  • Usor nullus et coetus nogroup lineae seiunctio semicolonum facere possunt (;). Cogere clientes remotos ut nemo currendum sit et nemo coetus facit ut sessiones in calculonis servi sine privilegio sint.
  • stipes significat notificationes currentes tabularum rescribere veteres introitus singulis diebus OpenVPN incepit, cum log-appendere novas introitus ad tabellam stipendii existentem apponit. Ipsum fasciculum openvpn.log ad /etc/openvpn/ scriptum est.

Accedit client-ad clientis valor saepe etiam ad limam configurationis additus est ut multi clientes praeter OpenVPN servo se videre possint. Si contenti estis cum configuratione tua, incipere potes servo OpenVPN:

# systemctl start openvpn

Ob mutabilem indolem relationis inter OpenVPN et systemd, haec syntaxin interdum requiri potest ut ministerium incipias: systemctl initium openvpn@servoris.

Currens ip addr ut indices interfaces retiacula servi tui nunc outputa nexum cum novo interfaciei nomine tun0. OpenVPN creabit ut clientes ineuntes servent;

$ ip addr
[...]
4: tun0: mtu 1500 qdisc [...]
      link/none
      inet 10.8.0.1 peer 10.8.0.2/32 scope global tun0
          valid_lft forever preferred_lft forever

Opus est ut servo rebolum ante omnia incipit plene operari. Proxima statio est computatrum clientis.

10.1.2. Configurans OpenVPN clientis

Cuniculi more instituto exstruuntur cum duobus saltem exitibus (aliter cavernas appellamus). Apte figuratum OpenVPN in calculonis commercium in et e cuniculi parte dirigit. Sed eget luctus aliquam cursus in parte clientis, id est in extremo cuniculi.

In hac sectione, Eo ut focus in manually aliquod genus computatri Linux ad agendum sicut client OpenVPN. Sed hoc non aliter quam haec occasio suppetat. OpenVPN subsidia clientium applicationum quae inponi possunt et in desktops et laptops currendo Fenestra vel macOS adhibentur, necnon Android et iOS smartphones et tabulas. See openvpn.net for details.

Sarcina OpenVPN institui opus erit in machina clientis prout in servo inaugurata est, quamquam hic facili-rsa non opus est cum claves iam exsistentes uteris. Tu debes imitari client.conf file templates ad /etc/openvpn/ indicis quem modo creavit. Hoc tempore tabella non vehens erit, ergo mandatum regularis ep officium iustum denique faciet;

# apt install openvpn
# cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf 
  /etc/openvpn/

Plurimae uncinis in cliente tuo.conf lima erunt satis auto-explicationes: debent aequare valores in calculonis. Ut videre potes ex exemplo sequentium fasciculi, singularis parameter 192.168.1.23 1194 remotus est, qui clienti IP inscriptionis electronicae narrat. Iterum fac haec inscriptio tua servo tuo. Etiam computatrum clientem cogas ad authenticitatem certificationis servientis verificandum ne homo in medio impetus fieri possit. Uno modo hoc facere est addere lineae remotis-cert-tls servo (listing 10.3).

Book "Linux in Actione".
Potes nunc ad directorium /etc/openvpn/ et certificationem clavium extrahere a servo. Servo locum IP inscriptionem vel domain nomen repone in exemplo cum tuis valoribus:

Book "Linux in Actione".
Nihil excitans erit verisimile donec curris OpenVPN in clientelam. Quoniam duobus argumentis opus est, ex imperio linea facias. Argumentum huius clientis narrat OpenVPN te clientelam agere et encryptionem per TLS coniungere, et --configere puncta ad limam tuam conformationem:

# openvpn --tls-client --config /etc/openvpn/client.conf

Legit mandatum output diligenter fac tibi recte connexa sunt. Si primum aliquid siet, potest ob mismatch in lectis inter servitorem et clientem imaginum imaginum vel nexum retis / firewall constitutionis. Hic aliquam fermentum sapien.

  • Diligenter perlege output operationis OpenVPN in client. Saepe magni consilii continet quidnam fieri non possit et cur.
  • Reprehendo nuntiis erroris in openvpn.log et openvpn-status.log lima in /etc/openvpn/ indicis in calculonis servi.
  • Systema tigna in servo et cliente deprime pro OpenVPN relatas et intempestivas epistulas. (journalctl -ce recentissima viscus exhibebit).
  • Fac activum retis nexum habeas inter servum et clientem (de quo plura cap. 14).

De auctor

David Clinton β€” ratio administrator, magister et scriptor. Materias eruditionis multas et magnas disciplinas technicas, inclusas systemata Linux, nubem computans (praecipue AWS) administravit, et technologias continens sicut Docker. Scripsit librum Disce Amazonum interretialium in mense Lunches (Manning, 2017). Multae cursus eius video disciplinae apud Pluralsight.com inveniri possunt, et nexus cum aliis libris (de Linux administratione ac servo virtualizatione) praesto sunt apud bootstrap-it.com.

Β» Pro maiori de libro, quaeso, visita publisher's website
Β» mensam de contentis in eodem
Β» Excerpt

Nam Khabrozhiteli XXV% discount in coupon - Linux
Post solutionem chartae versio libri, electronica mittitur ad electronicam.

Source: www.habr.com