-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path14701463847239.html
597 lines (401 loc) · 25.4 KB
/
14701463847239.html
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
<!doctype html>
<html class="no-js" lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>
在 Vultr上安装 Arch linux - 黑洞
</title>
<link href="atom.xml" rel="alternate" title="黑洞" type="application/atom+xml">
<link rel="stylesheet" href="asset/css/foundation.min.css" />
<link rel="stylesheet" href="asset/css/docs.css" />
<script src="asset/js/vendor/modernizr.js"></script>
<script src="asset/js/vendor/jquery.js"></script>
<script src="asset/highlightjs/highlight.pack.js"></script>
<link href="asset/highlightjs/styles/github.css" media="screen, projection" rel="stylesheet" type="text/css">
<script>hljs.initHighlightingOnLoad();</script>
<script type="text/javascript">
function before_search(){
var searchVal = 'site:bao3.org ' + document.getElementById('search_input').value;
document.getElementById('search_q').value = searchVal;
return true;
}
</script>
</head>
<body class="antialiased hide-extras">
<div class="marketing off-canvas-wrap" data-offcanvas>
<div class="inner-wrap">
<nav class="top-bar docs-bar hide-for-small" data-topbar>
<section class="top-bar-section">
<div class="row">
<div style="position: relative;width:100%;"><div style="position: absolute; width:100%;">
<ul id="main-menu" class="left">
<li id=""><a target="self" href="index.html">Home</a></li>
<li id=""><a target="_self" href="archives.html">Archives</a></li>
</ul>
<ul class="right" id="search-wrap">
<li>
<form target="_blank" onsubmit="return before_search();" action="http://google.com/search" method="get">
<input type="hidden" id="search_q" name="q" value="" />
<input tabindex="1" type="search" id="search_input" placeholder="Search"/>
</form>
</li>
</ul>
</div></div>
</div>
</section>
</nav>
<nav class="tab-bar show-for-small">
<a href="javascript:void(0)" class="left-off-canvas-toggle menu-icon">
<span> 黑洞</span>
</a>
</nav>
<aside class="left-off-canvas-menu">
<ul class="off-canvas-list">
<li><a href="index.html">HOME</a></li>
<li><a href="archives.html">Archives</a></li>
<li><a href="about.html">ABOUT</a></li>
<li><label>Categories</label></li>
</ul>
</aside>
<a class="exit-off-canvas" href="#"></a>
<section id="main-content" role="main" class="scroll-container">
<script type="text/javascript">
$(function(){
$('#menu_item_index').addClass('is_active');
});
</script>
<div class="row">
<div class="large-8 medium-8 columns">
<div class="markdown-body article-wrap">
<div class="article">
<h1>在 Vultr上安装 Arch linux</h1>
<div class="read-more clearfix">
<span class="date">2016/8/2</span>
<span class="comments">
</span>
</div>
</div><!-- article -->
<div class="article-content">
<h1 id="toc_0"><mark>广告时间</mark></h1>
<p>在所有用过的 VPS服务商中,我一直信赖 <code>Vultr</code>,首先是日本线路质量比较可靠,其次价格平民,只要 5$/月(首次还送钱给你),最后就是最重要的,免费送你不限制的 Snapshot功能,让你克隆(备份)整机。</p>
<p>请一定使用<a href="http://www.vultr.com/?ref=6813064">!我的链接</a> 来注册试用( 双方获利 💰):<a href="http://www.vultr.com/?ref=6813064">bao3的 Vultr 邀请</a>📎,这将资助我一直提供匿名服务。</p>
<h1 id="toc_1">VPS 操作系统的选择</h1>
<p> VPS有很多系统可选,通常都是用 Linux 的一些发行版,在这些发行版中,有一些虽然用的人多,可是安装软件后期分非常麻烦,例如 Debian 官方源里都是旧软件,这一点也不符合我们长期使用 VPS以及日后升级软件的需求,还有一些则要手动工作量多一点,比如 CentOS,还有活跃一点的 Ubuntu,但 Ubuntu多数是 deb分发,也不利于我们自定义。综合了很久,最后我将的 VPS操作系统从 FreeBSD 换到了 <mark>ArchLinux</mark>。这两个系统虽然分属于是 BSD-like Unix 和 Linux,不过理念非常像,有非常完备的官方手册,足以解决我们日常的问题。</p>
<p>所以下面的部分都是使用 ArchLinux 来进行,而这个系统是 Vultr 官方所以不支持的,所以此文的目的就教你如何在 Vultr 上使用 ArchLinux 。</p>
<pre><code>你的收益: 一次付出,子嗣无忧
</code></pre>
<h1 id="toc_2">下载 iso安装盘</h1>
<p>登录你的 Vultr ,请不要关键是去点下图中的 “Deploy New Instance”,我们要先准备光盘,所以请你点击 <code>💿ISOs</code> 输入 iso的地址,让 Vultr给你下载好。
<img src="media/14518870323173/downloadISO.png" alt="downloadISO"/>
ArchLinux 的光盘下载网址 <a href="https://www.archlinux.org/download/">https://www.archlinux.org/download/</a> ,找到你想要的节点,点进去,复制 ISO的 URL
<img src="media/14518870323173/14518892017207.jpg" alt=""/></p>
<p>比如我使用的地址:
<code>http://mirror.rackspace.com/archlinux/iso/2016.01.01/archlinux-2016.01.01-dual.iso</code> </p>
<p>然后粘贴到上面 💿ISOs 这个里面,这样 Vultr 就开始帮你下载了。</p>
<h1 id="toc_3">创建系统</h1>
<p> 点击上图中 <code>Deploy New Instance</code> 一个新的。</p>
<blockquote>
<ol>
<li><mark>只</mark>建议你使用 <mark>SSD套餐</mark></li>
<li>千万不要选 <mark>SATA</mark> (更多存储空间)那就郁闷了,因为有可能会莫名各种小毛病,影响后面的安装,<mark>会死得很惨</mark>。</li>
<li>并且 SATA套餐不能使用 Snapshot 免费备份功能而 SSD可以,基于此,相当于多了一个免费的备份镜像,数据是数据是无价的。 </li>
</ol>
<p>
选择系统时,使用你刚才下载的 iso ( <code>Custom</code> > <code>My ISOs</code> > <code>archlinux-XXXX.iso</code> ),在创建好之后系统根本不会自动安装好 Arch Linux,只不过是用光盘启动了而已。<br/>
<img src="media/14518870323173/vultrdeply.png" alt="vultrdeply"/></p>
</blockquote>
<h1 id="toc_4">开始安装</h1>
<p> 我相信你应该是一个具有动手能力的人,因为接下来的安装需要使用很多命令行指令。请在 VPS控制台 上选使用 VNC Console的方式来使用新创建的 VPS。 </p>
<h2 id="toc_5">硬盘分区</h2>
<p> 整个安装过程中最核心的地方就是硬盘分区。原因在于 Vultr是基于 KVM的虚拟机,而我们又是用的 SSD ,所以是基于 BIOS + GPT的系统。而在默认情况下咱们的引动器 Grub只能支持 BIOS+ MBR 或者 EFI + GPT 的方式。Vultr 恰是个混合模式,会导致 Grub不引导的。<br/>
1. 首先我们必须分出一个 bios安装分区,用于存放存放标准的 Grub 的引导文件。<br/>
2. 如果你要承载 Web类服务,例如<strong>网站</strong>或者<strong>私有云</strong> ( <strong><em>owncloud</em></strong>),那么我们最好单独分一个 Swap 。<br/>
3. 默认情况下我们直接使用剩余的 <strong>SSD</strong> 作为整个系统磁盘,不单独分区了。<br/>
正面就开始咯:</p>
<pre><code class="language-shell"> gdisk /dev/vda
n
回车 (屏幕显示 1-28,Default 1 )
回车 (屏幕显示 default = 2048, or {+-}size )
+2M
EF02 (类型代码默认为 8300,要手动改)
</code></pre>
<p>截图如下:<img src="media/14518870323173/VultrEF02.png" alt="VultrEF02"/></p>
<p> 剩下的空间就是你自己自由支配,我的就仅供参考(与平时的分区没有区别),注意看图片中一定会有一个 <mark>BIOS</mark> 分区,另外图片中冒号后面是空白的都表示是直接按了 <code>回车</code>,这是成功的关键:</p>
<p><img src="media/14518870323173/VultrSSD.png" alt="VultrSSD"/></p>
<p><strong> 当然最后还要写盘</strong>,这个我就不说按哪个键了。 </p>
<h2 id="toc_6">开始安装</h2>
<p> 分区已经分好了,并且已经使用 ISO光盘启动了,接下来就是分区了,Arch Linux也有类似于 FreeBSD的交互式安装过程,不过在这里还是要用手动的过程,毕竟我也是第一次安装 Arch Linux 。 Vultr因为可以使用镜像来克隆,所以一次安装,永远安逸。</p>
<p> 不过你需要注意的是,如果你的分区跟我不太一样,那接下来的步骤你需要有些调整,通常的调整就是 <code>/dev/vda1</code> <code>/dev/vda2</code> <code>/dev/vda3</code>这些编号有所不同。我只会依照我的来写。</p>
<pre><code> mkswap /dev/vda2 -L SWAP
swapon /dev/vda2
mkfs.ext4 /dev/vda3 -L ArchOS
mount /dev/vda3 /mnt
</code></pre>
<p> 好了,至此所有准备工作都已经完成了,我们开始安装系统核心了。<br/>
<code>
pacstrap /mnt base base-devel net-tools
</code>
这是要安装基本系统以及一些必要的套件,其中 <code>net-tools</code>是我额外加上的,因为这样可以在安装完使用诸如 <code>ifconfig</code> <code>nslookup</code>等等的小工具。经过等待(*通常为 2分钟 *左右),系统就已经完全OK了。</p>
<p> 不过此时的系统还没有引导器 <em>bootloader</em> ,因此我们需要为系统安装一下:<br/>
<code>
arch-chroot /mnt
pacman -Sy grub
mkinitcpio -p linux
grub-install /dev/vda
grub-mkconfig -o /boot/grub/grub.cfg
</code></p>
<h2 id="toc_7">配置网络连接</h2>
<ol>
<li>其实操作上来说,以上安装就已经可以重启你的 VPS 享受乐趣,不过在此之前,先要做一些小的配置。</li>
</ol>
<p><code>配置DHCP</code>,这一步比较简单,在你的命令行下接着输入:
<code>systemctl enable dhcpcd</code></p>
<p>或者是</p>
<p><code>systemctl enable dhcpcd@eth0</code></p>
<p>通常你会看到 ( Created symlink from /etc/systemd/system/multi-user.target.wants/dhcpcd.service to /usr/lib/systemd/system/dhcpcd (或者@eth0).service.) </p>
<ol>
<li><p>重启前,记得使用 <code>passwd</code> 修改一下你的 root 密码,以利于下一步 ssh从你的 PC上登录,摆脱网页登录的烦恼,请一定要记住此密码,这是用来管理系统的密码切记。</p>
<pre><code>passwd
</code></pre>
<p>输入你的密码,在你输入的时候是不显示密码的,但是不用担心,这是 Linux / Unix 机制造成。</p></li>
</ol>
<p> 此时你修改的是 Root 用户的密码,但我们平时不应该使用此用户来登录,所以你需要创建一个普通用户以及设置用户密码,这个用户名及密码将会是你远程连接 VPS所使用的。使用用户 <code>mylove</code> 登录后,需要使用 sudo 来执行系统管理命令
<code>useradd -m -G wheel -s /bin/bash mylove</code>
<code>passwd mylove</code>
</p>
<hr/>
<p>OK,启动你的机器试一下吧,并使用 mylove 登录一下吧!</p>
<hr/>
<h2 id="toc_8">远程连接</h2>
<p>在机器重启的过程,你也不必闲着,准备一个工具,从现在开始,我们要用自己的电脑客户端来连接。如果你是 Linux / Unix / Mac ,就直接使用终端 ssh 命令 如果是 Windows 就使用 Putty 或者 Xshell ,两者都是免费的。</p>
<blockquote>
<p>提醒,SSH 连接涉及你的服务器安全,请一定要去官方网站下载工具,不要去网上找什么汉化版、修改版,以免这些工具利用你的 ssh 连接获取你的服务器密码、植入木马、作为攻击跳板等</p>
</blockquote>
<p>针对 Mac ,打开 <strong>终端</strong>,输入
<code>
ssh mylove@your.vps.ip.address
</code>
使用你的 IP 地址替换后半部分,连接时会询问你是不是要添加 ( yes/no ),你就选 yes 。然后会让你登入普通用户 mylove 的密码,登入成功后,可能 再接着输入 <code>su -</code> 从成变身成管理员( 需要你输入管理员密码 )。</p>
<ul>
<li>安装后有还有些额外调整,但不是必需的例如 hostname, locale, timezone,你完全可以不设置重启后再慢慢调整</li>
<li><p>以下命令是用于设置时区及改 VPS 主机名称,另外优选最快的软件安装源,井号 ( # )的部分不会影响命令执行,你可以直接复制粘贴的。</p>
<pre><code class="language-shell">rm /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime #设置时区
hostnamectl set-hostname vps-jp #设置主机名称叫 vps-jp
</code></pre></li>
</ul>
<h2 id="toc_9">安装 yaourt</h2>
<p>这部分是额外的设定,ArchLinux 使用 <strong><em>pacman</em></strong>来管理包,但是有时候这些包更新慢,我们可以使用___yaourt___ 来代替,可称为神器。我们需要修改 <code>/etc/pacman.conf</code>,使用 <code>nano /etc/pacman.conf</code> (你也可以使用 vi ) ,在文件最后加入以下代码:</p>
<pre><code class="language-Shell">[archlinuxfr]
SigLevel = Optional TrustAll
Server = http://repo.archlinux.fr/$arch
</code></pre>
<p><code>Control + X</code> 保存( 选择 “yes ” ) ,并退出</p>
<p>然后使用 <code>pacman -Syu yaourt</code> 安装。此后,你就可以使用普通用户 <code>mylove</code> 登录然后直接 <code>yaourt -Sy 软件包名称</code>来帮你安装所需的软件, Enjoy~ it !</p>
<p><strong><em>完结</em></strong></p>
<h1 id="toc_10">额外的软件</h1>
<p> 这一部分主要是用来介绍如何安装一些常用软件,本身并没有想作为本文的主要内容,不过我想我就作为自己备忘来记录,如果你看不懂,甚至调试有问题, sorry 憋人不提供解答 💋。</p>
<h2 id="toc_11">shandowsocks Strongswan Ocserv</h2>
<p> 安装过程非常简单,切换到普通用户 <code>mylove</code> 下,输入 <code>yaourt -S shadowsocks-libev strongswan ocserv</code> 然后就开始问你一些问题,然后就开始编译了,你根本不必担心什么,因为这是绝大多数用户都验证过的配置。只是你要看清楚问你的问题是“编辑 PKGUID”( 选 n)还是问你“是否继续构建” (选 yes),然后就会问你是否要安装。
</p>
<h2 id="toc_12">备份你的 VPS</h2>
<p> 尽管你已经安装好了这些必备软件,但是请不要急着从网上找资料来配置它们,你首先要做的就是备份。记住,数据是无价的,而如果因为配置错了浪费太多重建时间更是无价的。
Vultr 默认开放一个非常好用的主机克隆服务,叫“快照” Snapshot ,目前是免费向 SSD硬盘用户开放,所以你打开网页,先备份一下吧
登录你的 VPS,点击 <code>Snapshots</code>
<img src="media/14518870323173/14518954709903.jpg" alt=""/>
<br></p>
<p><img src="media/14518870323173/14518956019134.jpg" alt=""/></p>
<p> 你需要等待好久。。。。。所以请起身看看你的娃或者喝杯🍻。</p>
<h2 id="toc_13">配置你的防火墙</h2>
<p> 要想使用 VPS必须要开防火墙,而且防火墙还有另一个用处,就是 VPN功能一定要依赖防火墙。为了避免太麻烦,我直接发我的配置。你可以自己导入</p>
<pre><code># Generated by iptables-save v1.4.21 on Mon Jan 4 16:27:39 2016
*filter
:INPUT DROP [267469:59409891]
:FORWARD ACCEPT [1527284:116084980]
:OUTPUT ACCEPT [551995:57041906]
:sshguard - [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -m comment --comment "Allow Localhost Access" -j ACCEPT
-A INPUT -p tcp -m multiport --dports 20,21,22,43,53,80,443,500,3306,4500,4698,4430,8080 -m comment --comment "SSH/ HTTP/ Shadowsock/ IPSec/ Ocserv " -j ACCEPT
-A INPUT -p udp -m multiport --dports 20,21,22,43,53,80,443,500,3306,4500,4698,4430,8080 -m comment --comment "SSH/ HTTP/ Shadowsock/ IPSec/ Ocserv " -j ACCEPT
-A INPUT -p tcp -m multiport --dports 22000,60223,21025,33925,33452 -m comment --comment "Syncthing TCP port" -j ACCEPT
-A INPUT -p udp -m multiport --dports 22000,60223,21025,33925,33452 -m comment --comment "Syncthing UDP port" -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
-A INPUT -i eth0 -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -m limit --limit 5/min --limit-burst 7 -j LOG --log-prefix "Drop Sync"
-A INPUT -i eth0 -f -m limit --limit 5/min --limit-burst 7 -j LOG --log-prefix "Fragments Packets"
-A INPUT -i eth0 -p tcp -m state --state NEW -m tcp --dport 22 -m recent --update --seconds 15 --name DEFAULT --mask 255.255.255.255 --rsource -j DROP
-A INPUT -i eth0 -p tcp -m state --state NEW -m tcp --dport 22 -m recent --set --name DEFAULT --mask 255.255.255.255 --rsource -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p udp -m multiport --dports 60000:61000 -m comment --comment "Mosh server" -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --dport 1701 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 1723 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j sshguard
-A INPUT -p tcp -m tcp --dport 3000 -j ACCEPT
-A FORWARD -i eth0 -o tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i tun0 -o eth0 -j ACCEPT
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -o lo -m comment --comment "Allow Localhost output" -j ACCEPT
-A OUTPUT -p udp -m multiport --dports 20,21,22,43,53,80,443,500,3306,4500,4698,4430,8080 -j ACCEPT
-A OUTPUT -p tcp -m multiport --dports 20,21,22,43,53,80,443,500,3306,4500,4698,4430,8080 -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -p icmp -m icmp --icmp-type 0 -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT
# Completed on Mon Jan 4 16:27:39 2016
# Generated by iptables-save v1.4.21 on Mon Jan 4 16:27:39 2016
*mangle
:PREROUTING ACCEPT [649046914:490030784988]
:INPUT ACCEPT [458980340:332669236268]
:FORWARD ACCEPT [190065337:157361240288]
:OUTPUT ACCEPT [367048723:407521818509]
:POSTROUTING ACCEPT [557343262:564902311503]
-A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
COMMIT
# Completed on Mon Jan 4 16:27:39 2016
# Generated by iptables-save v1.4.21 on Mon Jan 4 16:27:39 2016
*nat
:PREROUTING ACCEPT [2700413:236807688]
:INPUT ACCEPT [1160470:78636937]
:OUTPUT ACCEPT [1142833:89039918]
:POSTROUTING ACCEPT [224659:13609002]
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Mon Jan 4 16:27:39 2016
</code></pre>
<p> 将这段代码在你的 VPS 里新建一个文件 <code>nano ~/firwall.txt</code> ,然后粘贴进去。然后使用 <code>iptables-restore < ~/firwall.txt</code>
以上的这个规则默认拒绝所有连接到你的 VPS的请求,只保留常用的端口,由于我的 shadowsocks使用 4689端口,因此我开放了这个特别端口,你可以改成自己的;同时,系统自动建立 nat,你可以自由地在你的 strongswan (前面刚安装的)里配置任意的 IP地址段,也可以在 ocserv里配置了。
</p>
<h2 id="toc_14">配置Shadowsocks-libev</h2>
<p> 我特意安装了这个版本,你不必担心,这货只是 Shadowsocks众多分支里我觉得非常不错的一个,而配置文件则是完全相同的。
<code>nano /etc/shadowsocks/config.json</code> ,然后粘贴上代码:</p>
<pre><code>{
"server":"0.0.0.0",
"server_port":4698,
"local_port":1080,
"password":"YourPasswd",
"timeout":60,
"method":"aes-256-cfb"
}
</code></pre>
<p> 注意, 4698 要改成你自己的,并且要与防火墙里的配置相对应,至于 local port:1080 这个不起任何作用,仅当你用作客户端时才有用,但是保留它的好处是,你可以直接把这个配置文件复制到你电脑的客户端使用。
接下来就是设置 Shadosocks的开机自动启动。ArchLinux的牛逼之处就是全程使用 systemd管理,非常省心。代码就是:</p>
<pre><code>systemctl enable shadowsocks-libev@config #开机启动
systemctl start shadowsocks-libev@config #立刻启动
systemctl restart shadowsocks-libev@config #重启(用于改过配置)
netstat -npl | grep 4698 #查看配置有没有成功
ss | grep 4698 #查看有没有客户端成功连接
</code></pre>
<p>
以上代码直接复制执行就可以了,截图如下:
<img src="media/14518870323173/14518973569665.jpg" alt=""/></p>
<p>剩下的工作就是你自己配置你的客户端,当客户端连接时,就在上面的图里就能看到了(图片的最后三行)</p>
<h2 id="toc_15">Strongswan 配置</h2>
<p> 接下来的这部分我就不多说了,非常麻烦,所以我只贴我的配置咯,入门级的教程你可能需要问别人啦~
这是一个麻烦,因为涉及太多了,而且每个人配置还不一样,比如我始终只使用证书认证,最后被迫开放了密码认证。所以这里可能不见得每个人都一样,你一定不要惊讶。主要涉及到了的配置文件就是 strongswan.conf, ipsec.conf,ipsec.secrets 。
首先编辑 strongswan.conf 加入 <code>i_dont_care_about_security_and_use_aggressive_mode_psk = yes</code>和
<code>duplicheck.enable = no</code> 这两项一个是让你可以使用 ipsec + 密码来上网,一个是为了允许同一个用户名(或者证书)在多个终端登录。</p>
<p>算了,想了想,还是不写配置了,好累。 </p>
<p><mark>改天补齊</mark> </p>
</div>
<div class="row">
<div class="large-6 columns">
<p class="text-left" style="padding:15px 0px;">
<a href="14910699523430.html"
title="Previous Post: 打造多用户 ShadowsocksR VPS 过程">« 打造多用户 ShadowsocksR VPS 过程</a>
</p>
</div>
<div class="large-6 columns">
<p class="text-right" style="padding:15px 0px;">
<a href="14701463847399.html"
title="Next Post: 使用 My Chrome 订制自己的浏览器">使用 My Chrome 订制自己的浏览器 »</a>
</p>
</div>
</div>
<div class="comments-wrap">
<div class="share-comments">
</div>
</div>
</div><!-- article-wrap -->
</div><!-- large 8 -->
<div class="large-4 medium-4 columns">
<div class="hide-for-small">
<div id="sidebar" class="sidebar">
<div id="site-info" class="site-info">
<h1>黑洞</h1>
<div class="site-des"></div>
<div class="social">
<a target="_blank" class="linkedin" href="https://www.linkedin.com/in/tyraelwang/" title="LinkedIn">LinkedIn</a>
<a target="_blank" class="twitter" target="_blank" href="https://twitter.com/bao3" title="Twitter">Twitter</a>
<a target="_blank" class="email" href="mailto:web@bao3.org" title="Email">Email</a>
<a target="_blank" class="rss" href="atom.xml" title="RSS">RSS</a>
</div>
</div>
<div id="site-categories" class="side-item ">
<div class="side-header">
<h2>Categories</h2>
</div>
<div class="side-content">
<p class="cat-list">
</p>
</div>
</div>
<div id="site-categories" class="side-item">
<div class="side-header">
<h2>Recent Posts</h2>
</div>
<div class="side-content">
<ul class="posts-list">
<li class="post">
<a href="15201542683812.html">没用</a>
</li>
<li class="post">
<a href="14910699523430.html">打造多用户 ShadowsocksR VPS 过程</a>
</li>
<li class="post">
<a href="14701463847239.html">在 Vultr上安装 Arch linux</a>
</li>
<li class="post">
<a href="14701463847399.html">使用 My Chrome 订制自己的浏览器</a>
</li>
<li class="post">
<a href="14701463847475.html"></a>
</li>
</ul>
</div>
</div>
</div><!-- sidebar -->
</div><!-- hide for small -->
</div><!-- large 4 -->
</div><!-- row -->
<div class="page-bottom clearfix">
<div class="row">
<p class="copyright">Copyright © 2015
Powered by <a target="_blank" href="http://www.mweb.im">MWeb</a>,
Theme used <a target="_blank" href="http://github.com">GitHub CSS</a>.</p>
</div>
</div>
</section>
</div>
</div>
<script src="asset/js/foundation.min.js"></script>
<script>
$(document).foundation();
function fixSidebarHeight(){
var w1 = $('.markdown-body').height();
var w2 = $('#sidebar').height();
if (w1 > w2) { $('#sidebar').height(w1); };
}
$(function(){
fixSidebarHeight();
})
$(window).load(function(){
fixSidebarHeight();
});
</script>
</body>
</html>