Debian 9 - 基础入门
系统安装
下载非自由版DVD镜像,自由版的镜像没有网卡驱动 新手碰到会相死,由本人摸索出来,这里以64位系统为例 镜像下载 全程离线安装不要联网,语言设置英文 装完系统后连上wifi在设置中文
使用su安装sudo
$su
apt-get install sudo
给账户设置管理员权限
vim /etc/sudoers
添加一行,其中”username”替换为登陆账户的名称,输入时不加引号
"username" ALL=(ALL) ALL
root ALL=(ALL:ALL) ALL
#第二种方法
apt-get install sudo
echo "[用户名] ALL=(ALL:ALL) ALL" >> /etc/sudoers
更新源
更新源配置生成器https://mirrors.ustc.edu.cn/repogen/ 有多个发行版的更新源
#htpps的源
deb https://mirrors.ustc.edu.cn/debian/ stretch main contrib non-free
deb-src https://mirrors.ustc.edu.cn/debian/ stretch main contrib non-free
deb https://mirrors.ustc.edu.cn/debian/ stretch-updates main contrib non-free
deb-src https://mirrors.ustc.edu.cn/debian/ stretch-updates main contrib non-free
deb https://mirrors.ustc.edu.cn/debian-security/ stretch/updates main contrib non-free
deb-src https://mirrors.ustc.edu.cn/debian-security/ stretch/updates main contrib non-free
#http的源
deb http://mirrors.ustc.edu.cn/debian/ stretch main contrib non-free
deb-src http://mirrors.ustc.edu.cn/debian/ stretch main contrib non-free
deb http://mirrors.ustc.edu.cn/debian/ stretch-updates main contrib non-free
deb-src http://mirrors.ustc.edu.cn/debian/ stretch-updates main contrib non-free
deb http://mirrors.ustc.edu.cn/debian-security/ stretch/updates main contrib non-free
deb-src http://mirrors.ustc.edu.cn/debian-security/ stretch/updates main contrib non-free
使用 HTTPS 可以有效避免国内运营商的缓存劫持,但需要事先安装 apt-transport-
https
#用aptitude安装软件比apt-get 安装更好
apt-get install aptitude
aptitude install apt-transport-https
系统软件设置
添加中文 Locale
装系统的时候,语言与键盘皆为英文。此时,系统只支持英文环境。有些程序,譬如 Emacs,要想在其中输入中文,前提是需要系统中具备中文 Locale。 使用以下命令增加中文 Loclae: $ sudo dpkg-reconfigure locales 将 Locale 列表滚动到底部,选择 zh_CN.UTF-8 UTF-8,然后 Ok 确认。 这样一来,系统就有了两个 Locale 环境,en_US.UTF-8 与 zh_CN.UTF-8。我建议继续使用 en_US.UTF-8 作为默认的 Locale,中文 Locale 可以在需要的时候临时启用。
中文输入
$ sudo apt-get install fcitx
****linux中文输入法,ibus光标不跟随 首次将Linux当作主力操作系统,有很多小问题要解决。
首先就是输入法的问题,因为一切其他问题都要用中文描述,然后借助搜索引擎。
打开终端, sudo apt-get install ibus-pinyin,这样就安装了拼音输入法
或者用软件管理器找到ibus-pinyin
然后我发现输入法到待选字整天都在左下角,全屏之后就看不见待选字了。一番搜索,其实是因为ibus没有在GUI框架中注册
以下是傻瓜解决方法。安装几个包
sudo apt-get install ibus-gtk ibus-gtk3 ibus-qt4
将linux主流的GUI 框架都注册了,然后注销或者重启就搞定。
ps:chrome 应该是gtk,libreoffice应该是gtk3的
使用桌面菜单「Perference」->「Input Method」打开输入法配置向导,将 fcitx 设为桌面环境的默认输入法。
由于系统 Locale 是 en_US.UTF-8,在 Emacs 中,fcitx 无法输入中文。但是若将 LANG 设为中文,然后再启动 Emacs,就可以输入中文了,即:
$ LANG=zh_CN.UTF-8 emacs
为了方便,我在 /usr/local/bin 目录建立一份 Bash 脚本 em,内容如下:
$ cat << EOF | sudo tee /usr/local/bin/em
#!/bin/bash
LANG=zh_CN.UTF-8
/usr/bin/emacs $@ 2>/dev/null &
EOF
$ sudo chmod +x /usr/local/bin/em
这样,在终端中可以用 em 来代替 emacs 命令。
触摸板模拟鼠标单击
$ sudo apt-get install xserver-xorg-input-synaptics
然后修改 /usr/share/X11/xorg.conf.d/70-synaptics.conf 文件,在「Identifier」为「touchpad catchall」的「InputClass 」节中增加:
Option “TapButton1” “1”
关闭蓝牙
笔记本支持蓝牙,但平时用不大着。编辑 /etc/rc.local,在「exit 0」之前添加:
echo disable > /proc/acpi/ibm/bluetooth
这样,在系统启动后,蓝牙功能会被自动关闭。
后来,发现在 BIOS 里可以直接关掉,这样便不必修改 rc.local 文件了。
查看笔记本电池的电量
LXDE 没提供笔记本电池的电量显示功能。在终端中,可使用 acpi -b 命令查看。我喜欢这种方式。平时不需要看电量,只有在电池信号灯警示时,才需要看一下还剩多少电。
C 编程工具
$ sudo apt-get gcc make autoconf automake libtool valgrind
如果要编译 zero 的源代码,还需要安装 libglib2.0-dev 包。不知道 zero 是什么?没关系。整个地球,可能只有我真正需要编译它的源代码。
中文字体(解决字体模糊)
简单而粗暴的办法是从 Windows 系统中扒出微软雅黑字体 msyh.ttf,然后在 /usr/share/fonts 中建立 non-free 目录,并将 msyh.ttf 放在这个目录中。
接下来,修改 /etc/fonts/conf.d/65-nonlatin.conf,将其内容替换为:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
<family>serif</family>
<prefer>
<family>Microsoft YaHei</family>
</prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer>
<family>Microsoft YaHei</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Microsoft YaHei</family>
</prefer>
</alias>
</fontconfig>
第二种方法 初次试水Debian,装好之后发现字体严重发虚,模糊不清。在查阅了大多数网络上的教程之后,总结了一份快速解决此问题的方法。
这里,我主要参考了金步国先生的文章:Linux字体美化实战(Fontconfig配置)Linux字体美化实战(Fontconfig配置) 。在此非常感谢他提供的方案。以下的文章只是我实现此功能的一个过程,如果有人想快速解决这个字体问题,那么可以参考参考。
解决步骤
第一,编写 .fonts.conf
这个文件在你的家目录下面。比如我的家目录为 /home/ranwuer/,那么这个文件就在 /home/ranwuer/.fonts.conf。
当创建好这个文件之后,它会自动指向 /home/ranwuer/.config/fontconfig/fonts.conf。
可以把我的字体配置文件覆盖你的字体配置文件:
git clone https://github.com/ranwu/debianFonts.git
cd debianFonts/.config/fontconfig
cp fonts.conf ~/
mv fonts.conf .fonts.conf
第二,安装字体
安装字体很简单:
下载我的字体文件:fonts.tar.gz fonts.tar.gz
mkdir /opt/fonts/core
tar zxvf fonts.tar.gz
cp fonts/* /opt/fonts/core/
//如果不行那么:
ungzip fonts.tar.gz
tar xf fonts.tar
cp fonts/* /opt/fonts/core/
注意/opt/fonts/core/目录下的文件需要改为755权限
chmod -R 755 /opt/fonts/core/
一会儿就能看到效果
如果不能正常看到google的Noto字体,请把/usr/shar/fonts/trutype下的Windows系字体删除,比如,宋体,黑体等等。
如果不能正常显示字体,请进入操作系统的字体设置界面,比如我的Debian是:应用程序菜单 –> 设置 –> 外观 选择 字体 选项卡。把里面的字体多试几个,可能就正常了。
sublime text 3安装
Install the GPG key:
wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | sudo apt-key add -
Select the channel to use:
Stable
echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
Devsu root
apt-get install sudo
echo "deb https://download.sublimetext.com/ apt/dev/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
Update apt sources and install Sublime Text
sudo apt-get update
sudo apt-get install sublime-text
然后创建一个软链接,这样就可以在命令行中直接启动Sublime:
sudo ln -s /opt/sublime_text_3/sublime_text /usr/bin/sublime
第二种方法下载安装包 解压并安装 sudo mv ~/下载/sublime_text_3_build_3126_x64.tar.bz2 /opt/ cd /opt/ tar vxjf sublime_text_3_build_3083_x64.tar.bz2 然后创建一个软链接,这样就可以在命令行中直接启动Sublime:
sudo ln -s /opt/sublime_text_3/sublime_text /usr/bin/sublime
此时,在终端输入sublime命令可以启动ST3,但是无法输入中文!经过不懈努力(把网上说的方法都试遍了),无意间在GitHub发现了一个仓库仓库 。此仓库可以解决我的问题!
第三,编译插件
首先是克隆这个仓库:
git clone https://github.com/Firef0x/SublimeText-i18n-zh.git
然后定位到 ~/SublimeText-i18n-zh/src/fix/imfix
再按照sublime_imfix.csublime_imfix.c 中的注释来操作:
编译
gcc -shared -o libsublime-imfix.so sublime_imfix.c `pkg-config --libs --cflags gtk+-2.0` -fPIC
正常情况下会得到一个库文件libsublime-imfix.so,如果编译需要的依赖不足的话请看看提示,然后将那些依赖升级。比较常见的问题是,提示 No package ‘gtk+-2.0’ found 没有,那么安装一下就行了:sudo apt-get install libgtk2.0-dev
使用
将 libsublime-imfix.so 拷贝到 /opt/sublime_text_3/ 目录;
然后在终端下敲入
LD_PRELOAD=/opt/sublime_text_3/libsublime-imfix.so sublime
来启动ST3
发现软件可以输入中文了!
第四,写脚本调用ST3
编写一个shell脚本,命名为:subl,名字可以随便取。输入以下内容:
#!/bin/bash
LD_PRELOAD=/opt/sublime_text_3/libsublime-imfix.so sublime
然后放到 /usr/bin/ 中就可以在任意目录中输入命令了:
注]意:
subl 文件一定要给 755 权限 sudo chmod 755 ~/subl sudo mv ~/subl /usr/bin/
firefox汉化
sudo apt-get install iceweasel-l10n-zh-cn
安装shadowsocks
在安装了kali后在网上搜过很多次“跨栏”的姿势,但是搜到的答案要么很麻烦,要么介绍的不够详细易懂,所以就萌生了一个自己去整理一下,总结出一个简单易用教程的想法,仅提供给刚刚使用KaliLinux的萌新们做一个参考,而不必去费时费力的搜索大量的资料。 //大前提是你要有一个可用的ss……. 安装Shadowsocks的图形化界面//类似Win下的纸飞机 直接在 /etc/apt/sources.list 里添加源 在/etc/apt/sources.list 最后加上
$ sudo apt-get install software-properties-common
$ sudo apt-add-repository ppa:linux-deepin-team/linux-deepin
apt-key adv –keyserver hkp://keys.gnupg.net –recv-keys 7D8D0BF6 sudo apt-key adv –keyserver keyserver.ubuntu.com –recv-keys 6AF0E1940624A220 #此处6AF0E1940624A220需要是错误提示的key deb http://ppa.launchpad.net/hzwhuang/ss-qt5/ubuntu devel main
然后
apt-get update&&apt-get install shadowsocks-qt5
这时候图形界面的SS管理器就安装好了 在应用程序里打开:
点击“连接”——》“添加”——》“手动” 如下界面
注意:不知道什么原因,在这里选择导入json配置文件程序会崩溃,所以尽量手动输入 配置完成后点击五角星,如果正常的话会出现延迟XX毫秒 不正常的话要去检查一下输入的ss账号信息是否有误
安装命令行界面的Shadowsocks
- apt-get install python-pipsudo pip install shadowsocks
然后创建配置文件 终端输入:
gedit /etc/shadowsocks.json
加入下面的配置内容,并补全配置信息
{ “server”:“服务器地址”, “server_port”:服务器端口号, “local_address”: “127.0.0.1”, “local_port”:1080, “password”:“密码”, “timeout”:300, “method”:“加密方式”, “fast_open”: true, “workers”: 1}
如图:
终端启动客户端
sslocal -c /etc/shadowsocks.json
配置proxychain(会在下文介绍)kali默认已经安装了。 vi /etc/proxychains.conf 将socks4 127.0.0.1 9095改为socks5 127.0.0.1 xxxx //xxxx改为你自己的端口
设置 ProxyChains
1.打开ProxyChains配置文件
vi /etc/proxychains.conf
顺便补充一下Vim编辑器简单使用方法
执行上面命令之后摁一下键盘的i键,就可以对文本进行修改 修改完成后摁esc 然后摁住shift+; 左下角会出现一个冒号
输入wq摁下回车保存并退出
2.去掉dynamic_chain前面的注释符
3.添加代理服务器列表
在最下方这个地方,默认是socks4 xxxx xxx 改成sock5 127.0.0.1 xxxx // xxxx是你自己的端口,也就是上边在配置ss时输入的local_port:xxxx 我这里用的是8089
- 测试代理服务是否正常
执行
proxyresolv www.target.com
此时执行会出现命令未找到 终端输入
cp /usr/lib/proxychains3/proxyresolv /usr/bin/
然后再次执行
proxyresolv www.google.com
//这时候ss的命令界面应该是正在运行的,就是在执行过sslocal -c /etc/shadowsocks.json之后
返回ok,说明配置正确,可以愉快的跨栏了。
5.使用ProxyChains 启动firefox
终端输入:proxychains firefox启动火狐浏览器 测试一下:
使用ProxyChains代理其他程序和启动Firefox同理 proxychains msfconsole //启动msf proxychains sqlmap //通过代理启动sqlmap 不再一一介绍。 The End.
安装wps
1 到 wps官网下载 64位的deb版
2 拷贝到根目录下
3 执行
$ sudo apt-get install gdebi-core
$ sudo gdebi wps-office_10.1.0.5672~a21_amd64.deb
4 下载缺失的字体文件,然后复制到Linux系统中的/usr/share/fonts文件夹中。
国外下载地址:https://www.dropbox.com/s/lfy4hvq95ilwyw5/wps_symbol_fonts.zip
国内下载地址:https://pan.baidu.com/s/1eS6xIzo
5 下载完成后,解压并进入目录中,继续执行:
sudo cp * /usr/share/fonts
- 执行以下命令,生成字体的索引信息:
sudo mkfontscale
sudo mkfontdir
- 运行fc-cache命令更新字体缓存。
sudo fc-cache
- 重启wps即可,字体缺失的提示不再出现
字体美化
我们在window下面用的比较爽的字体是微软雅黑和Consolas,那就以这两个字体为例来说明下怎么在linux下安装字体。
1. 下载要安装的字体文件(说明:字体文件这里指以.ttf结尾的文件)
如果有windows系统可以从windows/fonts目录拷贝msyh.ttf和msyhbh.ttf和相应的字体
如果没有windows,可以从[这里下载字体(打包好的)](http://download.csdn.net/detail/swagle/7377593)。
2. 在/usr/share/fonts/truetype/下建立文件夹myfonts,然后拷贝上述字体到改文件夹下。
sudo mkdir /usr/share/fonts/truetype/myfonts
cp *.ttf /usr/share/fonts/truetype/myfonts/
3. 更改myfonts和该目录下面的权限,可以都设成777
sudo chmod -c 777 /usr/share/fonts/truetype/myfonts
sudo chmode -c 777 /usr/share/fonts/truetype/myfonts/*
4. 最后就是注册新添加字体了,执行如下命令:
sudo mkfontscale
sudo mkfontdir
sudo fc-cache -fv
sudo mkdir -p /usr/share/fonts/vista
sudo cp Yahei.ttf /usr/share/fonts/vista/
然后,改变权限:
sudo chmod 644 /usr/share/fonts/vista/*.ttf
安装:
cd /usr/share/fonts/vista/
sudo mkfontscale
sudo mkfontdir
sudo fc-cache -fv
5. ```
$ sudo apt-get install fonts-noto-cjk
```
firefox flash安装
Mozilla Firefox
Debian 自带
Firefox-ESR(IceWeasel)
, 但没有
flash player
;下载
flash_player_npapi_linux.x86_64.tar.gz
, 进行如下操作后重启浏览器:
$ tar -zxvf flash_player_npapi_linux.x86_64.tar.gz
$ sudo cp libflashplayer.so /usr/lib/mozilla/plugins
$ sudo cp -r usr/* /usr
ubuntu16 开机启动plank
需要建立开机启动链接 sudo ln -s /usr/share/applications/plank.desktop /etc/xdg/autostart/
VirtualBox给Debian安装增强功能
1.安装编译工具以及Linux内核头文件
$sudo apt-get install build-essential linux-headers-$(uname -r)
2.点击VirtualBox安装增强功能
3.执行安装脚本
$sudo sh /media/cdrom0/VBoxLinuxAdditions.run
4.重启系统即可.
iptables基本配置(Debian)
看了下secure日志和access的日志,一大半都是暴力破解和扫描,虽然哥的密码极其复杂,不过总被这么消耗服务器资源也不是事,索性还是把ssh端口和ftp改了然后写个iptables稍微保护一下好了。还有个东西叫Fail2Ban,可以自动检测暴力破解,密码错误超过一定次数就把对端ban掉,不过我实在是不想再开一个服务了,改端口应该问题不大…
只是最基本的配置,防御flood的懒得写了,真有人跟我有仇要DDOS我的话那就挂了算了…
配置,禁止进,允许出,允许回环网卡
iptables -P INPUT DROP iptables -P OUTPUT ACCEPT iptables -A INPUT -i lo -j ACCEPT
允许ping,不允许删了就行
iptables -A INPUT -p icmp -j ACCEPT
允许ssh
iptables -A INPUT -p tcp -m tcp –dport 22 -j ACCEPT
允许ftp
iptables -A INPUT -p tcp -m tcp –dport 20 -j ACCEPT iptables -A INPUT -p tcp -m tcp –dport 21 -j ACCEPT
允许ftp被动接口范围,在ftp配置文件里可以设置
iptables -A INPUT -p tcp –dport 20000:30000 -j ACCEPT
学习felix,把smtp设成本地
iptables -A INPUT -p tcp -m tcp –dport 25 -j ACCEPT -s 127.0.0.1 iptables -A INPUT -p tcp -m tcp –dport 25 -j REJECT
允许DNS
iptables -A INPUT -p tcp -m tcp –dport 53 -j ACCEPT iptables -A INPUT -p udp -m udp –dport 53 -j ACCEPT
允许http和https
iptables -A INPUT -p tcp -m tcp –dport 80 -j ACCEPT iptables -A INPUT -p tcp -m tcp –dport 443 -j ACCEPT
允许状态检测,懒得解释
iptables -A INPUT -p all -m state –state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -p all -m state –state INVALID,NEW -j DROP
#保存配置
iptables-save > /etc/iptables
保存之后就行了,Debian不需要单独把iptbles做成服务,具体如何让iptables开机自动加载,请看文章《Debian下iptables防火墙开机自动加载实现》
我是把上面那段和下面这段都写到sh里了,start{}和stop{}。需要修改规则的时候直接清空了重建比较好,因为规则有顺序问题。
#清空配置
iptables -F
iptables -X
iptables -Z
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
- 原文作者:码中春秋
- 原文链接:https://blog.taielab.com/2017/09/20/debian-9-learning.html
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。