查看系统版本

cat /etc/os-release

修改 root 密码

passwd

新建用户

新建用户:

adduser username

将新用户加入 sudo 组,这样就可以用 sudo 命令了:

gpasswd sudo -a username

若不执行此操作,执行 sudo 命令时,会提示 username is not in the sudoers file. This incident will be reported.

更改 ssh 默认端口

sudo vi /etc/ssh/sshd_config ,修改 Port 自定义端口号,之后重启 ssh 服务:sudo systemctl restart sshd.service ,根据自己需要看是否禁止 root 用户登录,修改配置文件:PermitRootLogin no,之后重启 ssh 服务。

ssh 免密登陆

本机生成密钥:

1
2
mkdir -p ~/.ssh/vps
ssh-keygen -t rsa -C "***@gmail.com" -f ~/.ssh/vps/id_rsa

config 文件配置,在 ~/.ssh/ 下新建 config 文件, vi config :

1
2
3
4
5
6
# vps configuration
Host vps
HostName ***.***.***.***
Port ***
IdentityFile ~/.ssh/vps/id_rsa
User ***

本机登陆 vps, 需要输入密码:

ssh vps

创建 .ssh 目录:

cd ~;mkdir .ssh

本机将公钥拷贝至 vps 的用户的 .ssh 目录下, 需要输入密码:

scp id_rsa.pub vps:~/.ssh/authorized_keys

修改 vps 上 authorized_keys 文件权限:

chmod 600 authorized_keys

之后可实现本机免密登陆 vps。

安装 vim

1
2
sudo apt update
sudo apt install vim

安装 ftp

参考链接

安装:

1
2
3
4
5
6
sudo apt install ftp
sudo apt install vsftpd sudo netstat -npltu | grep 21
# 登录
ftp localhost

修改配置文件 /etc/vsftpd.conf:

1
2
3
4
5
6
7
8
9
10
# 设置控制连接的监听端口号,默认为21
listen_port=<port>
# 是否开放本地用户的写权限
write_enable=YES
anon_mkdir_write_enable=YES
anon_upload_enable=YES
# 限制一切用户登录,只允许列表文件中的用户,用 userlist_file
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd.user_list

创建 /etc/vsftpd.user_list,写入只允许登录的用户名。

启动服务:

sudo service vsftpd start

安装 git

1
sudo apt install git

安装 Docker

大专栏  初入 Ubuntu 的一些操作 · Lei's blog>Docker 官方安装教程

设置存储库:

1
2
3
4
5
6
7
sudo apt update
sudo apt install apt-transport-https ca-certificates curl software-properties-common
# Add Docker’s official GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
sudo apt-key fingerprint 0EBFCD88
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

安装 DOCKER CE:

1
2
3
4
5
sudo apt update
# Install the latest version of Docker CE
sudo apt install docker-ce
# Verify that Docker CE is installed correctly by running the hello-world image.
sudo docker run hello-world

启动 Docker CE:

1
2
sudo systemctl enable docker 
sudo systemctl start docker

建立 docker 用户组:

默认情况下,docker 命令会使用 Unix socket 与 Docker 引擎通讯。而只有 root 用户和 docker 组的用户才可以访问 Docker 引擎的 Unix socket。出于安全考虑,一般 Linux 系统上不会直接使用 root 用户。因此,更好地做法是将需要使用 docker 的用户加入 docker 用户组。

建立 docker 组:

sudo groupadd docker

将当前用户加入 docker 组:

sudo usermod -aG docker $USER

搭建 shadowsocks

Docker Hub 下载自己建立的镜像。

1
2
3
4
# 获取镜像
docker pull zhanglei12345/shadowsocks-libev
# 启动容器
docker run --restart=always -d -p hostPort:containerPort zhanglei12345/shadowsocks-libev:latest -s 0.0.0.0 -p containerPort -k mypassword -m aes-256-cfb

搭建 shadowsocksr

Docker Hub 下载自己建立的镜像。

1
2
3
4
# 获取镜像
docker pull zhanglei12345/shadowsocksr
# 启动容器
docker run --restart=always -d -p hostPort:containerPort zhanglei12345/shadowsocksr:latest -p containerPort -k mypassword -m aes-256-cfb -O auth_sha1_v4 -o http_simple

安装 Docker Compose

Releases · docker/compose · GitHub

1
2
3
4
5
6
# 下载对应版本
sudo curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 赋执行权限
sudo chmod +x /usr/local/bin/docker-compose
# 检查版本号
docker-compose --version

初入 Ubuntu 的一些操作 · Lei's blog的更多相关文章

  1. 初入ubuntu

    登入root :su root 安装 vim: sudo apt-get install vim 安装 gcc(g++):sudo apt-get install gcc(g++) 非常实用的修改分辨 ...

  2. 初入android驱动开发之字符设备(一)

    大学毕业,初入公司,招进去的是android驱动开发工程师的岗位,那时候刚进去,首先学到的就是如何搭建kernel.android的编译环境,然后就是了解如何刷设备以及一些最基本的工具.如adb.fa ...

  3. 初学HTML5、初入前端

    学习HTML5是一个漫长的过程,当中会遇到很多技术与心态上的变化.刚开始学习,我们不能发力过猛,需要一个相对稳定的状态去面对.多关注一些自己感兴趣的网站和技术知识,建立自己的信心与好奇心,为以后的学习 ...

  4. 【Xbox one S】开箱&开机&初入坑心得

    再来一发水贴,先上产品标准照镇贴: 前言 身为一个资深单机游戏玩家,常年混迹在PC平台,但内心深处一直对主机有种迷之向往,感觉那才是单机游戏的正处之地,坐沙发上拿着手柄对着电视跌宕起伏才是正确的游戏姿 ...

  5. Git初入

    Git记录 使用git 也有一段时间了, git的入门级了解也就不再多说, 但平常使用中, 仍然会遇到很多问题, 在此记录一二. 在查资料的过程中, 发现了两个比较好的资料: 特别是第二个, 相当详细 ...

  6. 初入爬虫(java)

    public class CrawlerUtil { public static void main(String [] args) throws IOException { // 创建默认的http ...

  7. 初入码田--ASP.NET MVC4 Web应用开发之二 实现简单的增删改查

    初入码田--ASP.NET MVC4 Web应用之创建一个空白的MVC应用程序 初入码田--ASP.NET MVC4 Web应用开发之一 实现简单的登录 2016-07-29  一.创建M002Adm ...

  8. 初入SG-UAP

    初入SG-UAP SpriderMan 关注 2019.06.19 14:10 字数 1130 阅读 10评论 0喜欢 0 初次接触SG-UAP,将自己的见解以文字形式记录下来,希望能对初入的伙伴们有 ...

  9. Scala初入

    何为Scala物 Scala为基于JVM虚拟机中的面向对象与函数式编程思想并且完全兼容Java的混合编程语言,可以是Scala与Java是同根同源的,既然Scala与JAVA都是基于JVM之上的编程语 ...

随机推荐

  1. Java之同步方法处理实现Runnable接口的线程安全问题

    /** * 使用同步方法解决实现Runnable接口的线程安全问题 * * * 关于同步方法的总结: * 1. 同步方法仍然涉及到同步监视器,只是不需要我们显式的声明. * 2. 非静态的同步方法,同 ...

  2. rclone使用心得

    https://rclone.org/ 一边使用一边更新. 0x00 常用rclone命令: 1) 复制:从remote1到remote2 rclone copy -P remote:path rem ...

  3. LeetCode No.151,152,153

    No.151 ReverseWords 翻转字符串里的单词 题目 给定一个字符串,逐个翻转字符串中的每个单词. 示例 输入: "the sky is blue" 输出: " ...

  4. 解决UITextView滚动后无法显示完整内容

    滚动UITextView,偶尔内容只显示一半,现象如下

  5. 从git上拉取项目 如果数据库密码不一致 会报错 500

    解决方法 在该路径下设置 数据库的密码

  6. 菜鸟cmake使用

    cmake是用过把源码生成visual studio 工程的工具,也就是生成.sln文件.他会把相应的库依赖都自动添加上. cmake有个CMakeLists.txt (具体语法这里先不介绍) 我都是 ...

  7. 闭包,协议delegate

    1.定义 //1.闭包表达式语法 { (parameters) -> returnType in statements } let names = ["Chris", &qu ...

  8. 浅谈PHP小马免杀

    在渗透测试过程初期,上传小马,拿到 webshell 再进行下一步的操作,现如今的网站安全更多是 一些云防护.CDN防护.服务器安全软件等等,给渗透测试.提权等带来了一定难度的提升, 今天探讨一下如何 ...

  9. python语法基础-并发编程-线程-长期维护

    ###############   线程和GIL,全局解释器锁    ############## """ 线程 为什么会有进程? 主要是能够同时处理多个任务,多个任务还 ...

  10. python-django框架-电商项目-用户模块开发_20191117

    实现注册的基本逻辑: 1,注册页面 注意:注册页面需要静态文件的支持,另外注册页面是基础基类的, 1,url,路由系统, 2,views,视图系统,还是使用类视图,里面有很多的函数, 2,views. ...