アフォでも出来る

アフォでも出来るように記録します(IT系)

Google アプリパスワード

サードパーティーのメール送受信をしようとして、アプリパスワードを発行しようとしたが、項目が見つからない。

 

既存のアプリパスワードは使用できるし、ヘルプでは、メニューにオプションが表示されない条件なども記されていたので確認しても問題無し。

 

以下のメニューからアプリパスワードを作成できる事が判明。

 

2段階認証プロセス

>>>下の方の>>>

アプリパスワード

 

悩みましたので、他にも必要とする方がいるかと記事にしました。

OCIでLAMP環境の構築(Oracle Linux8)vsFTPdインストール

自己証明書の作成

cd /etc/pki/tls/certs/

sudo openssl req -new -x509 -days 3650 -key server.key -out ftp.crt

sudo su -

cat server.key ftp.crt > ftp.pem

exit

sudo chmod 400 ftp.*

cd /

 

vsFTPdのインストール

sudo dnf -y install vsftpd

 

sudo vi /etc/vsftpd/vsftpd.conf

anonymous_enable=YES 12行目くらい(デフォルトでNOならそのまま)

anonymous_enable=NO ←変更(anonymous(匿名)のログインを許可しない。)

 

#xferlog_file=/var/log/xferlog 52行目くらい

xferlog_file=/var/log/xferlog ←コメントを外す

 

#ascii_upload_enable=YES 82行目くらい

ascii_upload_enable=YES ←コメント解除(ASCIIモードでのアップロードを許可)

 

#ascii_download_enable=YES 83行目くらい

ascii_download_enable=YES ←コメント解除(ASCIIモードでのダウンロードを許可)

 

#chroot_local_user=YES 100行目くらい

chroot_local_user=YES ←コメント解除(デフォルトでホームディレクトリより上階層への移動を禁止)

 

#chroot_list_enable=YES 101行目くらい

chroot_list_enable=YES ←コメント解除(ホームディレクトリより上階層への移動を許可するリスト)

 

#chroot_list_file=/etc/vsftpd/chroot_list 103行目くらい

chroot_list_file=/etc/vsftpd/chroot_list ←コメント解除(上記ユーザーの指定ファイル)

 

#ls_recurse_enable=YES 109行目くらい

ls_recurse_enable=YES ←コメント解除(ディレクトリごとの削除を許可する)

 

listen=NO 114行目くらい

listen=YES ←変更(IPv4を許可)

 

listen_ipv6=YES 123行目くらい

listen_ipv6=NO ←変更(IPv6を不許可)

 

↓最終行に下記を記入 pasv_addressはグローバルアドレス

# VSFTPD configuration

pasv_enable=YES

pasv_addr_resolve=YES

pasv_address=グローバルIPアドレス

pasv_min_port=4000

pasv_max_port=4029

use_localtime=YES

ssl_enable=YES

rsa_cert_file=/etc/pki/tls/certs/ftp.pem

require_ssl_reuse=NO

force_local_logins_ssl=NO

force_local_data_ssl=NO

force_dot_files=YES

 

/etc/hosts.allow編集

sudo su -

echo "vsftpd: ALL" >> /etc/hosts.allow

exit

 ftp用のユーザーを作成(パスワードは大文字,小文字,数値,記号を含む必要がある)

sudo useradd ftpuser

sudo passwd ftpuser

 

chroot_list編集

sudo su -

echo ftpuser >> /etc/vsftpd/chroot_list

exit

VSFTPd起動

sudo systemctl start vsftpd

sudo systemctl enable vsftpd.service

sudo systemctl is-enabled vsftpd.service

enabledと表示されれば有効

 

firewallを解放

firewall-cmd --add-service=ftp --permanent

firewall-cmd --add-port=4000-4029/tcp --permanent

firewall-cmd --reload

 

OCIのファイアウォール設定も上記ポートを開放する

 

OCIでLAMP環境の構築(Oracle Linux8)-Virtual Host

cd /etc/httpd/conf.d/

sudo vi virtualhost-00.conf

<VirtualHost _default_:80>
ServerName any
<Location />
Require all denied
</Location>
</VirtualHost>

 ※ 事前にMyDNS.JPでドメインを作成しておかないと,そんなドメイン存在しないという事でエラーになります

sudo vi sample-site.com.conf

## VirtualHost01 sample-site.com
<VirtualHost *:80>
ServerName sample-site.com
ServerAlias www.sample-site.com
ServerAdmin webmaster@sample-site.com
DocumentRoot /var/www/html/sample-site.com

<Directory "/var/www/html/sample-site.com">
Options FollowSymLinks
AllowOverride All
Order deny,allow
Allow from all
</Directory>

ErrorLog logs/sample-site.com-error_log
CustomLog logs/sample-site.com-access_log combined
</VirtualHost>

 

sudo vi sample-site.jp.conf

## VirtualHost02 sample-site.jp
<VirtualHost *:80>
ServerName sample-site.jp
ServerAlias www.sample-site.jp
ServerAdmin webmaster@sample-site.jp
DocumentRoot /var/www/html/sample-site.jp

<Directory "/var/www/html/sample-site.jp">
Options FollowSymLinks
AllowOverride All
Order deny,allow
Allow from all
</Directory>

ErrorLog logs/sample-site.jp-error_log
CustomLog logs/sample-site.jp-access_log combined
</VirtualHost>

 

それぞれのドキュメントルートフォルダを作成してApache再起動

cd /var/www/html

sudo mkdir /var/www/html/sample-site.com

sudo mkdir /var/www/html/sample-site.jp

sudo systemctl restart httpd

 

OCIでLAMP環境の構築(Oracle Linux8)php動作せず

なぜかPHPが動作しないでError 503 Service Unavailableになってしまいます。

以下で対応。

 

sudo vi /etc/httpd/conf.modules.d/00-mpm.conf

 

LoadModule mpm_event_module modules/mod_mpm_event.so

↓ 23行目くらいをコメントアウト

#LoadModule mpm_event_module modules/mod_mpm_event.so

 

#LoadModule mpm_prefork_module modules/mod_mpm_prefork.so

↓ 11行目くらいのコメントアウトを外す

LoadModule mpm_prefork_module modules/mod_mpm_prefork.so

 

Apacheを再起動

$ sudo systemctl restart httpd

 

 まだダメです。ユーザーをApacheからwwwに変更していたためでした。

$ sudo vi /etc/php-fpm.d/www.conf

user = apache

↓ 24行目くらい

user = www

 

group = apache

↓ 26行目くらい

group = www

Apacheを再起動

$ sudo systemctl restart httpd

 

 

 

OCIでLAMP環境の構築(Oracle Linux8)-MySQLインストール

最新版の確認

dnf info mysql

インストール

sudo dnf install @mysql:8.0

sudo systemctl enable mysqld

sudo systemctl start mysqld

 

sudo mysql_secure_installation

最初は空Enter,後はyのみで大丈夫

 

OCIでLAMP環境の構築(Oracle Linux8)SELinux無効化

今更ながらvsftpdが正常動作しないなどの現象があり,SELinux無効化していない事に気づく。

 

# sudo getenforce

Enforcing←有効になってます

 

# sudo vi /etc/selinux/config

SELINUX=enforcing

SELINUX=disabled

 

# sudo reboot

 

# sudo getenforce

Disabled←無効になってます

 OCIのroot権限付きユーザーのopcを使うのも何なので,ユーザーを追加

$ sudo useradd opeman

$ sudo passwd opeman

$ sudo usermod -G wheel opeman

ついでにやり残していたアップデートもしておく

# sudo dnf update

# reboot

 

OCIでLAMP環境の構築(Oracle Linux8)-Let's Encrypt

certbotのインストール

 

wget https://dl.eff.org/certbot-auto

mv certbot-auto /usr/local/bin/certbot-auto

chown root /usr/local/bin/certbot-auto

chmod 0755 /usr/local/bin/certbot-auto

 

dnf -y install git

cd /etc

git clone https://github.com/letsencrypt/letsencrypt.git

 

cd /etc/letsencrypt

./certbot-auto certonly --webroot \

ダメでした。これだと「Your system is not supported by certbot-auto anymore」と言われて上手くいきません。どうもcertbot-autoでの証明書の発行が出来なくなったようです。

 

本家のサイトの情報を元に作業します。

 

まずはOracleLinuxでEPELリポジトリを有効にする作業から。

sudo vi /etc/yum.repos.d/ol8-epel.repo

以下を貼り付けて保存

[ol8_developer_EPEL]
name= Oracle Linux $releasever EPEL ($basearch)
baseurl=https://yum.oracle.com/repo/OracleLinux/OL8/developer/EPEL/$basearch/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
gpgcheck=1
enabled=1

 

yumキャッシュの更新

y入力でインストールが始まる

 

snapdをインストール

sudo dnf install snapd

y入力でインストールが始まる なんでもy(本当か!?)

sudo systemctl enable --now snapd.socket

sudo ln -s /var/lib/snapd/snap /snap

sudo snap install hello-world

sudo snap refresh core

 hello-worldのインストールを早く始め過ぎると怒られます。

certbot-autoおよびCertbotOSパッケージを削除

sudo dnf remove certbot

 

Certbotをインストール

sudo snap install --classic certbot

sudo ln -s /snap/bin/certbot /usr/bin/certbot

 

証明書を作成してインストール

sudo certbot --apache

アドレスを入力してどのサイトの証明書かを指定したら自動で終わります。

代わりに以下で一つずつ手動設定も可能

sudo certbot certonly --apache